From 3761f44bfbcda1dc7f2e96fc50d828214749c8f4 Mon Sep 17 00:00:00 2001 From: numberwolf Date: Wed, 24 Aug 2022 22:41:38 +0800 Subject: [PATCH] update support native play with safari which version large than 13 --- README_EN.MD | 4 + ...js-v20220813.js => h265webjs-v20220824.js} | 2 +- dist-multi-thread/index.js | 2 +- .../h265webjs-v20220824.js | 2 +- dist/index.js | 2 +- ...js-v20220813.js => h265webjs-v20220824.js} | 2 +- example_normal/dist-multi-thread/index.js | 2 +- .../dist/h265webjs-v20220824.js | 2 +- example_normal/dist/index.d.ts | 12 +- example_normal/dist/index.js | 2 +- example_normal/index.html | 2 +- .../public/dist/h265webjs-v20220824.js | 2 +- example_vue/public/dist/index.js | 2 +- index-debug.html | 4 +- src/src/h265webjs.js | 24 + src/src/index.js | 2 +- src/src/native/mp4-player.js | 24 + src/src/native/nv-flvjs-core.js | 33 + src/src/native/nv-videojs-core.js | 39 +- src/version.sh | 2 +- .../public/dist/h265webjs-v20220422.js | 168 - .../public/dist/h265webjs-v20220824.js | 168 + vite_vue_ts/public/dist/index.d.ts | 97 + vite_vue_ts/public/dist/index.js | 25 +- .../public/dist/missile-120func-v20220421.js | 2 - .../dist/missile-120func-v20220421.wasm | Bin 1927290 -> 0 bytes .../public/dist/missile-120func-v20220706.js | 7070 ++++++++++++++ .../dist/missile-120func-v20220706.wasm | Bin 0 -> 2189440 bytes vite_vue_ts/public/dist/missile-120func.js | 7070 ++++++++++++++ .../public/dist/missile-256mb-v20220421.js | 2 - .../public/dist/missile-256mb-v20220421.wasm | Bin 1859589 -> 0 bytes .../public/dist/missile-256mb-v20220706.js | 7062 ++++++++++++++ .../public/dist/missile-256mb-v20220706.wasm | Bin 0 -> 2108180 bytes vite_vue_ts/public/dist/missile-256mb.js | 7062 ++++++++++++++ .../public/dist/missile-512mb-v20220421.js | 2 - .../public/dist/missile-512mb-v20220421.wasm | Bin 1859589 -> 0 bytes .../public/dist/missile-512mb-v20220706.js | 7062 ++++++++++++++ .../public/dist/missile-512mb-v20220706.wasm | Bin 0 -> 2108180 bytes vite_vue_ts/public/dist/missile-512mb.js | 7062 ++++++++++++++ vite_vue_ts/public/dist/missile-format.js | 8300 +++++++++++++++++ vite_vue_ts/public/dist/missile-v20220421.js | 2 - .../public/dist/missile-v20220421.wasm | Bin 1859591 -> 0 bytes vite_vue_ts/public/dist/missile-v20220706.js | 7062 ++++++++++++++ .../public/dist/missile-v20220706.wasm | Bin 0 -> 2108182 bytes vite_vue_ts/public/dist/missile.js | 7062 ++++++++++++++ 45 files changed, 65233 insertions(+), 211 deletions(-) rename dist-multi-thread/{h265webjs-v20220813.js => h265webjs-v20220824.js} (95%) rename example_vue/public/dist/h265webjs-v20220813.js => dist/h265webjs-v20220824.js (95%) rename example_normal/dist-multi-thread/{h265webjs-v20220813.js => h265webjs-v20220824.js} (95%) rename dist/h265webjs-v20220813.js => example_normal/dist/h265webjs-v20220824.js (95%) rename example_normal/dist/h265webjs-v20220813.js => example_vue/public/dist/h265webjs-v20220824.js (95%) delete mode 100644 vite_vue_ts/public/dist/h265webjs-v20220422.js create mode 100644 vite_vue_ts/public/dist/h265webjs-v20220824.js create mode 100644 vite_vue_ts/public/dist/index.d.ts delete mode 100644 vite_vue_ts/public/dist/missile-120func-v20220421.js delete mode 100644 vite_vue_ts/public/dist/missile-120func-v20220421.wasm create mode 100644 vite_vue_ts/public/dist/missile-120func-v20220706.js create mode 100644 vite_vue_ts/public/dist/missile-120func-v20220706.wasm create mode 100644 vite_vue_ts/public/dist/missile-120func.js delete mode 100644 vite_vue_ts/public/dist/missile-256mb-v20220421.js delete mode 100644 vite_vue_ts/public/dist/missile-256mb-v20220421.wasm create mode 100644 vite_vue_ts/public/dist/missile-256mb-v20220706.js create mode 100644 vite_vue_ts/public/dist/missile-256mb-v20220706.wasm create mode 100644 vite_vue_ts/public/dist/missile-256mb.js delete mode 100644 vite_vue_ts/public/dist/missile-512mb-v20220421.js delete mode 100644 vite_vue_ts/public/dist/missile-512mb-v20220421.wasm create mode 100644 vite_vue_ts/public/dist/missile-512mb-v20220706.js create mode 100644 vite_vue_ts/public/dist/missile-512mb-v20220706.wasm create mode 100644 vite_vue_ts/public/dist/missile-512mb.js create mode 100644 vite_vue_ts/public/dist/missile-format.js delete mode 100644 vite_vue_ts/public/dist/missile-v20220421.js delete mode 100644 vite_vue_ts/public/dist/missile-v20220421.wasm create mode 100644 vite_vue_ts/public/dist/missile-v20220706.js create mode 100644 vite_vue_ts/public/dist/missile-v20220706.wasm create mode 100644 vite_vue_ts/public/dist/missile.js diff --git a/README_EN.MD b/README_EN.MD index 405fd591..ae09f9ad 100644 --- a/README_EN.MD +++ b/README_EN.MD @@ -998,6 +998,10 @@ ffmpeg -ss 20 -t 10 -i ./res/xinxiaomen.mp4 \ | Update | Content | | ---- | ---- | +| Time | 2022/08/24 | +| - | 0.Feature: Safari with native player(version>13) | +| Time | 2022/08/23 | +| - | 0.Fixed: Buffer Progress with AVC | | Time | 2022/08/13 | | - | 0.Support: Resize | | Time | 2022/07/27 | diff --git a/dist-multi-thread/h265webjs-v20220813.js b/dist-multi-thread/h265webjs-v20220824.js similarity index 95% rename from dist-multi-thread/h265webjs-v20220813.js rename to dist-multi-thread/h265webjs-v20220824.js index d6f798cd..2cdd5f22 100644 --- a/dist-multi-thread/h265webjs-v20220813.js +++ b/dist-multi-thread/h265webjs-v20220824.js @@ -165,4 +165,4 @@ var Xr=F.default,Qr=function(e,t,i){return e&&i&&i.responseURL&&t!==i.responseUR /*! @name aes-decrypter @version 3.1.2 @license Apache-2.0 */ var a=null,s=function(){function e(e){var t,i,n;a||(a=function(){var e,t,i,n,r,a,s,o,u=[[[],[],[],[],[]],[[],[],[],[],[]]],l=u[0],h=u[1],d=l[4],c=h[4],f=[],p=[];for(e=0;e<256;e++)p[(f[e]=e<<1^283*(e>>7))^e]=e;for(t=i=0;!d[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,d[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,h[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),h[e]=h[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),h=[];for(this._key=[l,h],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],h[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,h=this._key[1],d=e^h[0],c=n^h[1],f=i^h[2],p=t^h[3],m=h.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^h[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&d]^h[g+1],u=v[f>>>24]^y[p>>16&255]^b[d>>8&255]^T[255&c]^h[g+2],p=v[p>>>24]^y[d>>16&255]^b[c>>8&255]^T[255&f]^h[g+3],g+=4,d=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[d>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^h[g++],s=d,d=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),h=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(h,h+a),i,n,l)),h=a;h>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:1,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:1,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1;if(/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&r>13)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)},this.player.onCacheProcess=function(e){o.onCacheProcess&&o.onCacheProcess(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.onCacheProcess=function(e){t.onCacheProcess&&t.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.onCacheProcess=function(e){i.onCacheProcess&&i.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=t.duration-.04)return t.onCacheProcess&&t.onCacheProcess(t.duration),void window.clearInterval(t.bufferInterval);t.onCacheProcess&&t.onCacheProcess(e)}),200)},this.videoTag.src=e,this.videoTag.style.width="100%",this.videoTag.style.height="100%",i.appendChild(this.videoTag)}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>7))^e]=e;for(t=i=0;!d[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,d[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,h[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),h[e]=h[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),h=[];for(this._key=[l,h],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],h[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,h=this._key[1],d=e^h[0],c=n^h[1],f=i^h[2],p=t^h[3],m=h.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^h[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&d]^h[g+1],u=v[f>>>24]^y[p>>16&255]^b[d>>8&255]^T[255&c]^h[g+2],p=v[p>>>24]^y[d>>16&255]^b[c>>8&255]^T[255&f]^h[g+3],g+=4,d=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[d>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^h[g++],s=d,d=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),h=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(h,h+a),i,n,l)),h=a;h>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1;if(/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&r>13)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)},this.player.onCacheProcess=function(e){o.onCacheProcess&&o.onCacheProcess(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.onCacheProcess=function(e){t.onCacheProcess&&t.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.onCacheProcess=function(e){i.onCacheProcess&&i.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=t.duration-.04)return t.onCacheProcess&&t.onCacheProcess(t.duration),void window.clearInterval(t.bufferInterval);t.onCacheProcess&&t.onCacheProcess(e)}),200)},this.videoTag.src=e,this.videoTag.style.width="100%",this.videoTag.style.height="100%",i.appendChild(this.videoTag)}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>7))^e]=e;for(t=i=0;!d[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,d[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,h[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),h[e]=h[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),h=[];for(this._key=[l,h],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],h[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,h=this._key[1],d=e^h[0],c=n^h[1],f=i^h[2],p=t^h[3],m=h.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^h[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&d]^h[g+1],u=v[f>>>24]^y[p>>16&255]^b[d>>8&255]^T[255&c]^h[g+2],p=v[p>>>24]^y[d>>16&255]^b[c>>8&255]^T[255&f]^h[g+3],g+=4,d=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[d>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^h[g++],s=d,d=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),h=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(h,h+a),i,n,l)),h=a;h>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:1,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:1,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1;if(/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&r>13)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)},this.player.onCacheProcess=function(e){o.onCacheProcess&&o.onCacheProcess(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.onCacheProcess=function(e){t.onCacheProcess&&t.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.onCacheProcess=function(e){i.onCacheProcess&&i.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=t.duration-.04)return t.onCacheProcess&&t.onCacheProcess(t.duration),void window.clearInterval(t.bufferInterval);t.onCacheProcess&&t.onCacheProcess(e)}),200)},this.videoTag.src=e,this.videoTag.style.width="100%",this.videoTag.style.height="100%",i.appendChild(this.videoTag)}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>7))^e]=e;for(t=i=0;!d[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,d[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,h[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),h[e]=h[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),h=[];for(this._key=[l,h],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],h[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,h=this._key[1],d=e^h[0],c=n^h[1],f=i^h[2],p=t^h[3],m=h.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^h[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&d]^h[g+1],u=v[f>>>24]^y[p>>16&255]^b[d>>8&255]^T[255&c]^h[g+2],p=v[p>>>24]^y[d>>16&255]^b[c>>8&255]^T[255&f]^h[g+3],g+=4,d=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[d>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^h[g++],s=d,d=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),h=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(h,h+a),i,n,l)),h=a;h>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1;if(/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&r>13)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)},this.player.onCacheProcess=function(e){o.onCacheProcess&&o.onCacheProcess(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.onCacheProcess=function(e){t.onCacheProcess&&t.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.onCacheProcess=function(e){i.onCacheProcess&&i.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=t.duration-.04)return t.onCacheProcess&&t.onCacheProcess(t.duration),void window.clearInterval(t.bufferInterval);t.onCacheProcess&&t.onCacheProcess(e)}),200)},this.videoTag.src=e,this.videoTag.style.width="100%",this.videoTag.style.height="100%",i.appendChild(this.videoTag)}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i New265WebJs -interface Window { - new265webjs: new265webJsFn +declare global { + interface Window { + new265webjs: new265webJsFn + } } export default class H265webjsModule { diff --git a/example_normal/dist/index.js b/example_normal/dist/index.js index f1795fbd..73d26c1f 100644 --- a/example_normal/dist/index.js +++ b/example_normal/dist/index.js @@ -19,7 +19,7 @@ * Github: https://github.com/numberwolf/h265web.js * **********************************************************/ -require('./h265webjs-v20220813'); +require('./h265webjs-v20220824'); export default class h265webjs { static createPlayer(videoURL, config) { return window.new265webjs(videoURL, config); diff --git a/example_normal/index.html b/example_normal/index.html index 834d546b..b8e81876 100644 --- a/example_normal/index.html +++ b/example_normal/index.html @@ -37,7 +37,7 @@ - + diff --git a/example_normal/dist/h265webjs-v20220813.js b/example_vue/public/dist/h265webjs-v20220824.js similarity index 95% rename from example_normal/dist/h265webjs-v20220813.js rename to example_vue/public/dist/h265webjs-v20220824.js index 733e9f8b..2ac40c19 100644 --- a/example_normal/dist/h265webjs-v20220813.js +++ b/example_vue/public/dist/h265webjs-v20220824.js @@ -165,4 +165,4 @@ var Xr=F.default,Qr=function(e,t,i){return e&&i&&i.responseURL&&t!==i.responseUR /*! @name aes-decrypter @version 3.1.2 @license Apache-2.0 */ var a=null,s=function(){function e(e){var t,i,n;a||(a=function(){var e,t,i,n,r,a,s,o,u=[[[],[],[],[],[]],[[],[],[],[],[]]],l=u[0],h=u[1],d=l[4],c=h[4],f=[],p=[];for(e=0;e<256;e++)p[(f[e]=e<<1^283*(e>>7))^e]=e;for(t=i=0;!d[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,d[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,h[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),h[e]=h[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),h=[];for(this._key=[l,h],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],h[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,h=this._key[1],d=e^h[0],c=n^h[1],f=i^h[2],p=t^h[3],m=h.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^h[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&d]^h[g+1],u=v[f>>>24]^y[p>>16&255]^b[d>>8&255]^T[255&c]^h[g+2],p=v[p>>>24]^y[d>>16&255]^b[c>>8&255]^T[255&f]^h[g+3],g+=4,d=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[d>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^h[g++],s=d,d=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),h=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(h,h+a),i,n,l)),h=a;h>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1;if(/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&r>13)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)},this.player.onCacheProcess=function(e){o.onCacheProcess&&o.onCacheProcess(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.onCacheProcess=function(e){t.onCacheProcess&&t.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.onCacheProcess=function(e){i.onCacheProcess&&i.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=t.duration-.04)return t.onCacheProcess&&t.onCacheProcess(t.duration),void window.clearInterval(t.bufferInterval);t.onCacheProcess&&t.onCacheProcess(e)}),200)},this.videoTag.src=e,this.videoTag.style.width="100%",this.videoTag.style.height="100%",i.appendChild(this.videoTag)}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i - + + --> diff --git a/src/src/h265webjs.js b/src/src/h265webjs.js index 8074509e..bb4bd043 100644 --- a/src/src/h265webjs.js +++ b/src/src/h265webjs.js @@ -1228,6 +1228,7 @@ class H265webjsModule { const browser_info = AVCOMMON.BrowserJudge(); const browser_type = browser_info[0]; const browser_version = browser_info[1]; + console.log("BrowserJudge:", browser_type, browser_version); if (browser_type === 'Chrome' && browser_version < 85) { return false; } @@ -1235,6 +1236,18 @@ class H265webjsModule { if (browser_type.indexOf("360") >= 0) { return false; } + + if( + ( + /Safari/.test(navigator.userAgent) + && !/Chrome/.test(navigator.userAgent) + ) && + browser_version > 13 + ) { + console.log("BrowserJudge:", + browser_version < 13, browser_version > 10); + return false; + } } return true; @@ -1490,6 +1503,10 @@ class H265webjsModule { this.player.onPlayState = (status) => { _this.onPlayState && _this.onPlayState(status); }; // onPlayState + + this.player.onCacheProcess = (cPts) => { + _this.onCacheProcess && _this.onCacheProcess(cPts); + }; } // _makeNativePlayer _initMp4BoxObject() { @@ -2562,6 +2579,9 @@ class H265webjsModule { this.player.onPlayState = (status) => { _this.onPlayState && _this.onPlayState(status); }; // onPlayState + this.player.onCacheProcess = (cPts) => { + _this.onCacheProcess && _this.onCacheProcess(cPts); + }; this.player.makeIt(this.videoURL); } // _videoJsPlayer @@ -2617,6 +2637,10 @@ class H265webjsModule { _this.onPlayState && _this.onPlayState(status); }; // onPlayState + this.player.onCacheProcess = (cPts) => { + _this.onCacheProcess && _this.onCacheProcess(cPts); + }; + // this.player.onSeekFinish = () => { // _this.onSeekFinish && _this.onSeekFinish(); // }; // onSeekFinish diff --git a/src/src/index.js b/src/src/index.js index f1795fbd..73d26c1f 100644 --- a/src/src/index.js +++ b/src/src/index.js @@ -19,7 +19,7 @@ * Github: https://github.com/numberwolf/h265web.js * **********************************************************/ -require('./h265webjs-v20220813'); +require('./h265webjs-v20220824'); export default class h265webjs { static createPlayer(videoURL, config) { return window.new265webjs(videoURL, config); diff --git a/src/src/native/mp4-player.js b/src/src/native/mp4-player.js index e3af8fb1..b30904f0 100644 --- a/src/src/native/mp4-player.js +++ b/src/src/native/mp4-player.js @@ -42,10 +42,13 @@ class Mp4PlayerModule { this.duration = -1; // this.fps = -1; + this.bufferInterval = null; + this.onLoadFinish = null; this.onPlayingTime = null; this.onPlayingFinish = null; this.onPlayState = null; + this.onCacheProcess = null; // this.onPlayUpdatePTSInterval = null; } @@ -93,6 +96,22 @@ class Mp4PlayerModule { console.log("mp4-player loadedmetadata", e); _this.duration = _this.videoTag.duration; _this.onLoadFinish && _this.onLoadFinish(); + + if (_this.bufferInterval !== null) { + window.clearInterval(_this.bufferInterval); + _this.bufferInterval = null; + } + + _this.bufferInterval = window.setInterval(function() { + const bufProgress = _this.videoTag.buffered.end(0); + console.log("bufProgress", bufProgress); + if (bufProgress >= _this.duration - 0.04) { + _this.onCacheProcess && _this.onCacheProcess(_this.duration); + window.clearInterval(_this.bufferInterval); + return; + } + _this.onCacheProcess && _this.onCacheProcess(bufProgress); + }, 200); }; this.videoTag.src = url; @@ -157,6 +176,11 @@ class Mp4PlayerModule { this.onPlayingFinish = null; this.onPlayState = null; + if (this.bufferInterval !== null) { + window.clearInterval(this.bufferInterval); + this.bufferInterval = null; + } + window.onclick = document.body.onclick = null; } diff --git a/src/src/native/nv-flvjs-core.js b/src/src/native/nv-flvjs-core.js index de859a4b..a49a8874 100644 --- a/src/src/native/nv-flvjs-core.js +++ b/src/src/native/nv-flvjs-core.js @@ -67,6 +67,8 @@ class NvFlvjsCoreModule { this.checkStartIntervalCount = 0; this.checkStartInterval = null; this.checkPicBlockInterval = null; + + this.bufferInterval = null; /* * Event @todo */ @@ -76,6 +78,7 @@ class NvFlvjsCoreModule { this.onPlayingFinish = null; // this.onSeekFinish = null; this.onReadyShowDone = null; + this.onCacheProcess = null; } // constructor _reBuildFlvjs(url) { @@ -242,6 +245,7 @@ class NvFlvjsCoreModule { alert("1 flvduration" + _this.duration); _this.onLoadFinish && _this.onLoadFinish(); _this.onReadyShowDone && _this.onReadyShowDone(); + _this._loopBufferState(); console.log("onReadyShowDone video isPlay", _this.isPlayingState()); _this.videoTag.ontimeupdate = () => { @@ -277,6 +281,7 @@ class NvFlvjsCoreModule { alert("1 flvduration" + _this.duration); _this.onLoadFinish && _this.onLoadFinish(); _this.onReadyShowDone && _this.onReadyShowDone(); + _this._loopBufferState(); console.log("onReadyShowDone video isPlay", _this.isPlayingState()); _this.videoTag.ontimeupdate = () => { @@ -311,6 +316,7 @@ class NvFlvjsCoreModule { alert("2 flvduration" + _this.duration); _this.onLoadFinish && _this.onLoadFinish(); _this.onReadyShowDone && _this.onReadyShowDone(); + _this._loopBufferState(); console.log("onReadyShowDone video isPlay", _this.isPlayingState()); _this.videoTag.ontimeupdate = () => { @@ -410,6 +416,29 @@ class NvFlvjsCoreModule { return !this.videoTag.paused; } + _loopBufferState() { + let _this = this; + if (_this.duration <= 0) { + _this.duration = _this.videoTag.duration; + } + + if (_this.bufferInterval !== null) { + window.clearInterval(_this.bufferInterval); + _this.bufferInterval = null; + } + + _this.bufferInterval = window.setInterval(function() { + const bufProgress = _this.videoTag.buffered.end(0); + console.log("bufProgress", bufProgress); + if (bufProgress >= _this.duration - 0.04) { + _this.onCacheProcess && _this.onCacheProcess(_this.duration); + window.clearInterval(_this.bufferInterval); + return; + } + _this.onCacheProcess && _this.onCacheProcess(bufProgress); + }, 200); + } + _releaseFlvjs() { this.myPlayer.pause(); this.myPlayer.unload(); @@ -444,6 +473,10 @@ class NvFlvjsCoreModule { window.clearInterval(this.checkPicBlockInterval); this.checkPicBlockInterval = null; } + if (this.bufferInterval !== null) { + window.clearInterval(this.bufferInterval); + this.bufferInterval = null; + } this._releaseFlvjs(); this.myPlayerID = null; diff --git a/src/src/native/nv-videojs-core.js b/src/src/native/nv-videojs-core.js index 4c584ed5..231f62ba 100644 --- a/src/src/native/nv-videojs-core.js +++ b/src/src/native/nv-videojs-core.js @@ -52,11 +52,13 @@ class NvVideojsCoreModule { this.showScreen = false; this.playPTS = 0; - this.vCachePTS = 0; - this.aCachePTS = 0; + // this.vCachePTS = 0; + // this.aCachePTS = 0; + + this.bufferInterval = null; /* - * Event @todo + * Event */ this.onMakeItReady = null; this.onLoadFinish = null; @@ -65,6 +67,7 @@ class NvVideojsCoreModule { this.onSeekFinish = null; this.onReadyShowDone = null; this.onPlayState = null; + this.onCacheProcess = null; } // constructor _hiddenUnusedPlugins() { @@ -195,6 +198,7 @@ class NvVideojsCoreModule { if (_this.configFormat.probeDurationMS >= 0) { _this.onLoadFinish && _this.onLoadFinish(); _this.onReadyShowDone && _this.onReadyShowDone(); + _this._loopBufferState(); } }); _this.myPlayer.on("ended", function() { @@ -213,6 +217,7 @@ class NvVideojsCoreModule { if (_this.configFormat.probeDurationMS < 0) { _this.onLoadFinish && _this.onLoadFinish(); _this.onReadyShowDone && _this.onReadyShowDone(); + _this._loopBufferState(); } }); this.myPlayer.options.controls = false; @@ -292,6 +297,29 @@ class NvVideojsCoreModule { return !this.myPlayer.paused(); } + _loopBufferState() { + let _this = this; + if (_this.duration <= 0) { + _this.duration = _this.videoTag.duration; + } + + if (_this.bufferInterval !== null) { + window.clearInterval(_this.bufferInterval); + _this.bufferInterval = null; + } + + _this.bufferInterval = window.setInterval(function() { + const bufProgress = _this.videoTag.buffered.end(0); + console.log("bufProgress", bufProgress); + if (bufProgress >= _this.duration - 0.04) { + _this.onCacheProcess && _this.onCacheProcess(_this.duration); + window.clearInterval(_this.bufferInterval); + return; + } + _this.onCacheProcess && _this.onCacheProcess(bufProgress); + }, 200); + } + release() { this.myPlayer.dispose(); this.myPlayerID = null @@ -305,6 +333,11 @@ class NvVideojsCoreModule { this.onReadyShowDone = null; this.onPlayState = null; + if (this.bufferInterval !== null) { + window.clearInterval(this.bufferInterval); + this.bufferInterval = null; + } + window.onclick = document.body.onclick = null; } diff --git a/src/version.sh b/src/version.sh index be7961f5..439992a2 100644 --- a/src/version.sh +++ b/src/version.sh @@ -19,5 +19,5 @@ # * Github: https://github.com/numberwolf/h265web.js # * # **********************************************************/ -VERSION='v20220813' # output version + index.js +VERSION='v20220824' # output version + index.js WASM_VERSION='v20220706' \ No newline at end of file diff --git a/vite_vue_ts/public/dist/h265webjs-v20220422.js b/vite_vue_ts/public/dist/h265webjs-v20220422.js deleted file mode 100644 index d4502990..00000000 --- a/vite_vue_ts/public/dist/h265webjs-v20220422.js +++ /dev/null @@ -1,168 +0,0 @@ -!function e(t,i,n){function r(s,o){if(!i[s]){if(!t[s]){var u="function"==typeof require&&require;if(!o&&u)return u(s,!0);if(a)return a(s,!0);var l=new Error("Cannot find module '"+s+"'");throw l.code="MODULE_NOT_FOUND",l}var d=i[s]={exports:{}};t[s][0].call(d.exports,(function(e){return r(t[s][1][e]||e)}),d,d.exports,e,t,i,n)}return i[s].exports}for(var a="function"==typeof require&&require,s=0;sd&&(u-=d,u-=d,u-=c(2))}return Number(u)};i.numberToBytes=function(e,t){var i=(void 0===t?{}:t).le,n=void 0!==i&&i;("bigint"!=typeof e&&"number"!=typeof e||"number"==typeof e&&e!=e)&&(e=0),e=c(e);for(var r=s(e),a=new Uint8Array(new ArrayBuffer(r)),o=0;o=t.length&&u.call(t,(function(t,i){return t===(o[i]?o[i]&e[a+i]:e[a+i])}))};i.sliceBytes=function(e,t,i){return Uint8Array.prototype.slice?Uint8Array.prototype.slice.call(e,t,i):new Uint8Array(Array.prototype.slice.call(e,t,i))};i.reverseBytes=function(e){return e.reverse?e.reverse():Array.prototype.reverse.call(e)}},{"@babel/runtime/helpers/interopRequireDefault":6,"global/window":35}],10:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.getHvcCodec=i.getAvcCodec=i.getAv1Codec=void 0;var n=e("./byte-helpers.js");i.getAv1Codec=function(e){var t,i="",r=e[1]>>>3,a=31&e[1],s=e[2]>>>7,o=(64&e[2])>>6,u=(32&e[2])>>5,l=(16&e[2])>>4,d=(8&e[2])>>3,h=(4&e[2])>>2,c=3&e[2];return i+=r+"."+(0,n.padStart)(a,2,"0"),0===s?i+="M":1===s&&(i+="H"),t=2===r&&o?u?12:10:o?10:8,i+="."+(0,n.padStart)(t,2,"0"),i+="."+l,i+="."+d+h+c};i.getAvcCodec=function(e){return""+(0,n.toHexString)(e[1])+(0,n.toHexString)(252&e[2])+(0,n.toHexString)(e[3])};i.getHvcCodec=function(e){var t="",i=e[1]>>6,r=31&e[1],a=(32&e[1])>>5,s=e.subarray(2,6),o=e.subarray(6,12),u=e[12];1===i?t+="A":2===i?t+="B":3===i&&(t+="C"),t+=r+".";var l=parseInt((0,n.toBinaryString)(s).split("").reverse().join(""),2);l>255&&(l=parseInt((0,n.toBinaryString)(s),2)),t+=l.toString(16)+".",t+=0===a?"L":"H",t+=u;for(var d="",h=0;h=1)return 71===e[0];for(var t=0;t+1880}},{"./byte-helpers.js":9,"./ebml-helpers.js":14,"./id3-helpers.js":15,"./mp4-helpers.js":17,"./nal-helpers.js":18}],13:[function(e,t,i){(function(n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(i,"__esModule",{value:!0}),i.default=function(e){for(var t=(s=e,a.default.atob?a.default.atob(s):n.from(s,"base64").toString("binary")),i=new Uint8Array(t.length),r=0;r=i.length)return i.length;var a=o(i,r,!1);if((0,n.bytesMatch)(t.bytes,a.bytes))return r;var s=o(i,r+a.length);return e(t,i,r+s.length+s.value+a.length)},d=function e(t,i){i=function(e){return Array.isArray(e)?e.map((function(e){return u(e)})):[u(e)]}(i),t=(0,n.toUint8)(t);var r=[];if(!i.length)return r;for(var a=0;at.length?t.length:h+d.value,f=t.subarray(h,c);(0,n.bytesMatch)(i[0],s.bytes)&&(1===i.length?r.push(f):r=r.concat(e(f,i.slice(1)))),a+=s.length+d.length+f.length}return r};i.findEbml=d;var h=function(e,t,i,r){var s;"group"===t&&((s=d(e,[a.BlockDuration])[0])&&(s=1/i*(s=(0,n.bytesToNumber)(s))*i/1e3),e=d(e,[a.Block])[0],t="block");var u=new DataView(e.buffer,e.byteOffset,e.byteLength),l=o(e,0),h=u.getInt16(l.length,!1),c=e[l.length+2],f=e.subarray(l.length+3),p=1/i*(r+h)*i/1e3,m={duration:s,trackNumber:l.value,keyframe:"simple"===t&&c>>7==1,invisible:(8&c)>>3==1,lacing:(6&c)>>1,discardable:"simple"===t&&1==(1&c),frames:[],pts:p,dts:p,timestamp:h};if(!m.lacing)return m.frames.push(f),m;var g=f[0]+1,_=[],v=1;if(2===m.lacing)for(var y=(f.length-v)/g,b=0;b>>3).toString():"mp4a.40.2":/^A_AC3/.test(s.rawCodec)?o="ac-3":/^A_PCM/.test(s.rawCodec)?o="pcm":/^A_MS\/ACM/.test(s.rawCodec)?o="speex":/^A_EAC3/.test(s.rawCodec)?o="ec-3":/^A_VORBIS/.test(s.rawCodec)?o="vorbis":/^A_FLAC/.test(s.rawCodec)?o="flac":/^A_OPUS/.test(s.rawCodec)&&(o="opus");s.codec=o,t.push(s)}})),t.sort((function(e,t){return e.number-t.number}))):t};i.parseTracks=c;i.parseData=function(e,t){var i=[],r=d(e,[a.Segment])[0],s=d(r,[a.SegmentInfo,a.TimestampScale])[0];s=s&&s.length?(0,n.bytesToNumber)(s):1e6;var o=d(r,[a.Cluster]);return t||(t=c(r)),o.forEach((function(e,t){var r=d(e,[a.SimpleBlock]).map((function(e){return{type:"simple",data:e}})),o=d(e,[a.BlockGroup]).map((function(e){return{type:"group",data:e}})),u=d(e,[a.Timestamp])[0]||0;u&&u.length&&(u=(0,n.bytesToNumber)(u)),r.concat(o).sort((function(e,t){return e.data.byteOffset-t.data.byteOffset})).forEach((function(e,t){var n=h(e.data,e.type,s,u);i.push(n)}))})),{tracks:t,blocks:i}}},{"./byte-helpers":9,"./codec-helpers.js":10}],15:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.getId3Offset=i.getId3Size=void 0;var n=e("./byte-helpers.js"),r=(0,n.toUint8)([73,68,51]),a=function(e,t){void 0===t&&(t=0);var i=(e=(0,n.toUint8)(e))[t+5],r=e[t+6]<<21|e[t+7]<<14|e[t+8]<<7|e[t+9];return(16&i)>>4?r+20:r+10};i.getId3Size=a;i.getId3Offset=function e(t,i){return void 0===i&&(i=0),(t=(0,n.toUint8)(t)).length-i<10||!(0,n.bytesMatch)(t,r,{offset:i})?i:e(t,i+=a(t,i))}},{"./byte-helpers.js":9}],16:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.simpleTypeFromSourceType=void 0;var n=/^(audio|video|application)\/(x-|vnd\.apple\.)?mpegurl/i,r=/^application\/dash\+xml/i;i.simpleTypeFromSourceType=function(e){return n.test(e)?"hls":r.test(e)?"dash":"application/vnd.videojs.vhs+json"===e?"vhs-json":null}},{}],17:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.parseMediaInfo=i.parseTracks=i.addSampleDescription=i.buildFrameTable=i.findNamedBox=i.findBox=i.parseDescriptors=void 0;var n,r=e("./byte-helpers.js"),a=e("./codec-helpers.js"),s=e("./opus-helpers.js"),o=function(e){return"string"==typeof e?(0,r.stringToBytes)(e):e},u=function(e){e=(0,r.toUint8)(e);for(var t=[],i=0;e.length>i;){var a=e[i],s=0,o=0,u=e[++o];for(o++;128&u;)s=(127&u)<<7,u=e[o],o++;s+=127&u;for(var l=0;l>>0,l=t.subarray(s+4,s+8);if(0===u)break;var d=s+u;if(d>t.length){if(n)break;d=t.length}var h=t.subarray(s+8,d);(0,r.bytesMatch)(l,i[0])&&(1===i.length?a.push(h):a.push.apply(a,e(h,i.slice(1),n))),s=d}return a};i.findBox=l;var d=function(e,t){if(!(t=o(t)).length)return e.subarray(e.length);for(var i=0;i>>0,a=n>1?i+n:e.byteLength;return e.subarray(i+4,a)}i++}return e.subarray(e.length)};i.findNamedBox=d;var h=function(e,t,i){void 0===t&&(t=4),void 0===i&&(i=function(e){return(0,r.bytesToNumber)(e)});var n=[];if(!e||!e.length)return n;for(var a=(0,r.bytesToNumber)(e.subarray(4,8)),s=8;a;s+=t,a--)n.push(i(e.subarray(s,s+t)));return n},c=function(e,t){for(var i=h(l(e,["stss"])[0]),n=h(l(e,["stco"])[0]),a=h(l(e,["stts"])[0],8,(function(e){return{sampleCount:(0,r.bytesToNumber)(e.subarray(0,4)),sampleDelta:(0,r.bytesToNumber)(e.subarray(4,8))}})),s=h(l(e,["stsc"])[0],12,(function(e){return{firstChunk:(0,r.bytesToNumber)(e.subarray(0,4)),samplesPerChunk:(0,r.bytesToNumber)(e.subarray(4,8)),sampleDescriptionIndex:(0,r.bytesToNumber)(e.subarray(8,12))}})),o=l(e,["stsz"])[0],u=h(o&&o.length&&o.subarray(4)||null),d=[],c=0;c=m.firstChunk&&(p+1>=s.length||c+1>3).toString():32===h.oti?i+="."+h.descriptors[0].bytes[4].toString():221===h.oti&&(i="vorbis")):"audio"===e.type?i+=".40.2":i+=".20.9"}else if("av01"===i)i+="."+(0,a.getAv1Codec)(d(t,"av1C"));else if("vp09"===i){var c=d(t,"vpcC"),f=c[0],p=c[1],m=c[2]>>4,g=(15&c[2])>>1,_=(15&c[2])>>3,v=c[3],y=c[4],b=c[5];i+="."+(0,r.padStart)(f,2,"0"),i+="."+(0,r.padStart)(p,2,"0"),i+="."+(0,r.padStart)(m,2,"0"),i+="."+(0,r.padStart)(g,2,"0"),i+="."+(0,r.padStart)(v,2,"0"),i+="."+(0,r.padStart)(y,2,"0"),i+="."+(0,r.padStart)(b,2,"0"),i+="."+(0,r.padStart)(_,2,"0")}else if("theo"===i)i="theora";else if("spex"===i)i="speex";else if(".mp3"===i)i="mp4a.40.34";else if("msVo"===i)i="vorbis";else if("Opus"===i){i="opus";var T=d(t,"dOps");e.info.opus=(0,s.parseOpusHead)(T),e.info.codecDelay=65e5}else i=i.toLowerCase();e.codec=i};i.addSampleDescription=f;i.parseTracks=function(e,t){void 0===t&&(t=!0),e=(0,r.toUint8)(e);var i=l(e,["moov","trak"],!0),n=[];return i.forEach((function(e){var i={bytes:e},a=l(e,["mdia"])[0],s=l(a,["hdlr"])[0],o=(0,r.bytesToString)(s.subarray(8,12));i.type="soun"===o?"audio":"vide"===o?"video":o;var u=l(e,["tkhd"])[0];if(u){var d=new DataView(u.buffer,u.byteOffset,u.byteLength),h=d.getUint8(0);i.number=0===h?d.getUint32(12):d.getUint32(20)}var p=l(a,["mdhd"])[0];if(p){var m=0===p[0]?12:20;i.timescale=(p[m]<<24|p[m+1]<<16|p[m+2]<<8|p[m+3])>>>0}for(var g=l(a,["minf","stbl"])[0],_=l(g,["stsd"])[0],v=(0,r.bytesToNumber)(_.subarray(4,8)),y=8;v--;){var b=(0,r.bytesToNumber)(_.subarray(y,y+4)),T=_.subarray(y+4,y+4+b);f(i,T),y+=4+b}t&&(i.frameTable=c(g,i.timescale)),n.push(i)})),n};i.parseMediaInfo=function(e){var t=l(e,["moov","mvhd"],!0)[0];if(t&&t.length){var i={};return 1===t[0]?(i.timestampScale=(0,r.bytesToNumber)(t.subarray(20,24)),i.duration=(0,r.bytesToNumber)(t.subarray(24,32))):(i.timestampScale=(0,r.bytesToNumber)(t.subarray(12,16)),i.duration=(0,r.bytesToNumber)(t.subarray(16,20))),i.bytes=t,i}}},{"./byte-helpers.js":9,"./codec-helpers.js":10,"./opus-helpers.js":19}],18:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.findH265Nal=i.findH264Nal=i.findNal=i.discardEmulationPreventionBytes=i.EMULATION_PREVENTION=i.NAL_TYPE_TWO=i.NAL_TYPE_ONE=void 0;var n=e("./byte-helpers.js"),r=(0,n.toUint8)([0,0,0,1]);i.NAL_TYPE_ONE=r;var a=(0,n.toUint8)([0,0,1]);i.NAL_TYPE_TWO=a;var s=(0,n.toUint8)([0,0,3]);i.EMULATION_PREVENTION=s;var o=function(e){for(var t=[],i=1;i>1&63),-1!==i.indexOf(c)&&(u=l+h),l+=h+("h264"===t?1:2)}else l++}return e.subarray(0,0)};i.findNal=u;i.findH264Nal=function(e,t,i){return u(e,"h264",t,i)};i.findH265Nal=function(e,t,i){return u(e,"h265",t,i)}},{"./byte-helpers.js":9}],19:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.setOpusHead=i.parseOpusHead=i.OPUS_HEAD=void 0;var n=new Uint8Array([79,112,117,115,72,101,97,100]);i.OPUS_HEAD=n;i.parseOpusHead=function(e){var t=new DataView(e.buffer,e.byteOffset,e.byteLength),i=t.getUint8(0),n=0!==i,r={version:i,channels:t.getUint8(1),preSkip:t.getUint16(2,n),sampleRate:t.getUint32(4,n),outputGain:t.getUint16(8,n),channelMappingFamily:t.getUint8(10)};if(r.channelMappingFamily>0&&e.length>10){r.streamCount=t.getUint8(11),r.twoChannelStreamCount=t.getUint8(12),r.channelMapping=[];for(var a=0;a0&&(i.setUint8(11,e.streamCount),e.channelMapping.foreach((function(e,t){i.setUint8(12+t,e)}))),new Uint8Array(i.buffer)}},{}],20:[function(e,t,i){"use strict";var n=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var r=n(e("url-toolkit")),a=n(e("global/window")),s=function(e,t){if(/^[a-z]+:/i.test(t))return t;/^data:/.test(e)&&(e=a.default.location&&a.default.location.href||"");var i="function"==typeof a.default.URL,n=/^\/\//.test(e),s=!a.default.location&&!/\/\//i.test(e);if(i?e=new a.default.URL(e,a.default.location||"http://example.com"):/\/\//i.test(e)||(e=r.default.buildAbsoluteURL(a.default.location&&a.default.location.href||"",e)),i){var o=new URL(t,e);return s?o.href.slice("http://example.com".length):n?o.href.slice(o.protocol.length):o.href}return r.default.buildAbsoluteURL(e,t)};i.default=s,t.exports=i.default},{"@babel/runtime/helpers/interopRequireDefault":6,"global/window":35,"url-toolkit":46}],21:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var n=function(){function e(){this.listeners={}}var t=e.prototype;return t.on=function(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)},t.off=function(e,t){if(!this.listeners[e])return!1;var i=this.listeners[e].indexOf(t);return this.listeners[e]=this.listeners[e].slice(0),this.listeners[e].splice(i,1),i>-1},t.trigger=function(e){var t=this.listeners[e];if(t)if(2===arguments.length)for(var i=t.length,n=0;n=400&&r.statusCode<=599){var s=a;if(t)if(n.TextDecoder){var o=function(e){void 0===e&&(e="");return e.toLowerCase().split(";").reduce((function(e,t){var i=t.split("="),n=i[0],r=i[1];return"charset"===n.trim()?r.trim():e}),"utf-8")}(r.headers&&r.headers["content-type"]);try{s=new TextDecoder(o).decode(a)}catch(e){}}else s=String.fromCharCode.apply(null,new Uint8Array(a));e({cause:s})}else e(null,a)}}},{"global/window":35}],23:[function(e,t,i){"use strict";var n=e("global/window"),r=e("@babel/runtime/helpers/extends"),a=e("is-function");o.httpHandler=e("./http-handler.js");function s(e,t,i){var n=e;return a(t)?(i=t,"string"==typeof e&&(n={uri:e})):n=r({},t,{uri:e}),n.callback=i,n}function o(e,t,i){return u(t=s(e,t,i))}function u(e){if(void 0===e.callback)throw new Error("callback argument missing");var t=!1,i=function(i,n,r){t||(t=!0,e.callback(i,n,r))};function n(){var e=void 0;if(e=l.response?l.response:l.responseText||function(e){try{if("document"===e.responseType)return e.responseXML;var t=e.responseXML&&"parsererror"===e.responseXML.documentElement.nodeName;if(""===e.responseType&&!t)return e.responseXML}catch(e){}return null}(l),g)try{e=JSON.parse(e)}catch(e){}return e}function r(e){return clearTimeout(d),e instanceof Error||(e=new Error(""+(e||"Unknown XMLHttpRequest Error"))),e.statusCode=0,i(e,_)}function a(){if(!u){var t;clearTimeout(d),t=e.useXDR&&void 0===l.status?200:1223===l.status?204:l.status;var r=_,a=null;return 0!==t?(r={body:n(),statusCode:t,method:c,headers:{},url:h,rawRequest:l},l.getAllResponseHeaders&&(r.headers=function(e){var t={};return e?(e.trim().split("\n").forEach((function(e){var i=e.indexOf(":"),n=e.slice(0,i).trim().toLowerCase(),r=e.slice(i+1).trim();void 0===t[n]?t[n]=r:Array.isArray(t[n])?t[n].push(r):t[n]=[t[n],r]})),t):t}(l.getAllResponseHeaders()))):a=new Error("Internal XMLHttpRequest Error"),i(a,r,r.body)}}var s,u,l=e.xhr||null;l||(l=e.cors||e.useXDR?new o.XDomainRequest:new o.XMLHttpRequest);var d,h=l.url=e.uri||e.url,c=l.method=e.method||"GET",f=e.body||e.data,p=l.headers=e.headers||{},m=!!e.sync,g=!1,_={body:void 0,headers:{},statusCode:0,method:c,url:h,rawRequest:l};if("json"in e&&!1!==e.json&&(g=!0,p.accept||p.Accept||(p.Accept="application/json"),"GET"!==c&&"HEAD"!==c&&(p["content-type"]||p["Content-Type"]||(p["Content-Type"]="application/json"),f=JSON.stringify(!0===e.json?f:e.json))),l.onreadystatechange=function(){4===l.readyState&&setTimeout(a,0)},l.onload=a,l.onerror=r,l.onprogress=function(){},l.onabort=function(){u=!0},l.ontimeout=r,l.open(c,h,!m,e.username,e.password),m||(l.withCredentials=!!e.withCredentials),!m&&e.timeout>0&&(d=setTimeout((function(){if(!u){u=!0,l.abort("timeout");var e=new Error("XMLHttpRequest timeout");e.code="ETIMEDOUT",r(e)}}),e.timeout)),l.setRequestHeader)for(s in p)p.hasOwnProperty(s)&&l.setRequestHeader(s,p[s]);else if(e.headers&&!function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0}(e.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in e&&(l.responseType=e.responseType),"beforeSend"in e&&"function"==typeof e.beforeSend&&e.beforeSend(l),l.send(f||null),l}t.exports=o,t.exports.default=o,o.XMLHttpRequest=n.XMLHttpRequest||function(){},o.XDomainRequest="withCredentials"in new o.XMLHttpRequest?o.XMLHttpRequest:n.XDomainRequest,function(e,t){for(var i=0;i=t+i||t?new java.lang.String(e,t,i)+"":e}function g(e,t){e.currentElement?e.currentElement.appendChild(t):e.doc.appendChild(t)}h.prototype.parseFromString=function(e,t){var i=this.options,n=new d,r=i.domBuilder||new c,s=i.errorHandler,o=i.locator,l=i.xmlns||{},h=/\/x?html?$/.test(t),f=h?a.HTML_ENTITIES:a.XML_ENTITIES;return o&&r.setDocumentLocator(o),n.errorHandler=function(e,t,i){if(!e){if(t instanceof c)return t;e=t}var n={},r=e instanceof Function;function a(t){var a=e[t];!a&&r&&(a=2==e.length?function(i){e(t,i)}:e),n[t]=a&&function(e){a("[xmldom "+t+"]\t"+e+p(i))}||function(){}}return i=i||{},a("warning"),a("error"),a("fatalError"),n}(s,r,o),n.domBuilder=i.domBuilder||r,h&&(l[""]=u.HTML),l.xml=l.xml||u.XML,e&&"string"==typeof e?n.parse(e,l,f):n.errorHandler.error("invalid doc source"),r.doc},c.prototype={startDocument:function(){this.doc=(new o).createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(e,t,i,n){var r=this.doc,a=r.createElementNS(e,i||t),s=n.length;g(this,a),this.currentElement=a,this.locator&&f(this.locator,a);for(var o=0;o=0))throw k(C,new Error(e.tagName+"@"+i));for(var r=t.length-1;n"==e&&">")||"&"==e&&"&"||'"'==e&&"""||"&#"+e.charCodeAt()+";"}function B(e,t){if(t(e))return!0;if(e=e.firstChild)do{if(B(e,t))return!0}while(e=e.nextSibling)}function N(){}function j(e,t,i,r){e&&e._inc++,i.namespaceURI===n.XMLNS&&delete t._nsMap[i.prefix?i.localName:""]}function V(e,t,i){if(e&&e._inc){e._inc++;var n=t.childNodes;if(i)n[n.length++]=i;else{for(var r=t.firstChild,a=0;r;)n[a++]=r,r=r.nextSibling;n.length=a}}}function H(e,t){var i=t.previousSibling,n=t.nextSibling;return i?i.nextSibling=n:e.firstChild=n,n?n.previousSibling=i:e.lastChild=i,V(e.ownerDocument,e),t}function z(e,t,i){var n=t.parentNode;if(n&&n.removeChild(t),t.nodeType===b){var r=t.firstChild;if(null==r)return t;var a=t.lastChild}else r=a=t;var s=i?i.previousSibling:e.lastChild;r.previousSibling=s,a.nextSibling=i,s?s.nextSibling=r:e.firstChild=r,null==i?e.lastChild=a:i.previousSibling=a;do{r.parentNode=e}while(r!==a&&(r=r.nextSibling));return V(e.ownerDocument||e,e),t.nodeType==b&&(t.firstChild=t.lastChild=null),t}function G(){this._nsMap={}}function W(){}function Y(){}function q(){}function K(){}function X(){}function Q(){}function $(){}function J(){}function Z(){}function ee(){}function te(){}function ie(){}function ne(e,t){var i=[],n=9==this.nodeType&&this.documentElement||this,r=n.prefix,a=n.namespaceURI;if(a&&null==r&&null==(r=n.lookupPrefix(a)))var s=[{namespace:a,prefix:null}];return se(this,i,e,t,s),i.join("")}function re(e,t,i){var r=e.prefix||"",a=e.namespaceURI;if(!a)return!1;if("xml"===r&&a===n.XML||a===n.XMLNS)return!1;for(var s=i.length;s--;){var o=i[s];if(o.prefix===r)return o.namespace!==a}return!0}function ae(e,t,i){e.push(" ",t,'="',i.replace(/[<&"]/g,F),'"')}function se(e,t,i,r,a){if(a||(a=[]),r){if(!(e=r(e)))return;if("string"==typeof e)return void t.push(e)}switch(e.nodeType){case d:var s=e.attributes,o=s.length,u=e.firstChild,l=e.tagName,m=l;if(!(i=n.isHTML(e.namespaceURI)||i)&&!e.prefix&&e.namespaceURI){for(var T,S=0;S=0;E--){if(""===(w=a[E]).prefix&&w.namespace===e.namespaceURI){T=w.namespace;break}}if(T!==e.namespaceURI)for(E=a.length-1;E>=0;E--){var w;if((w=a[E]).namespace===e.namespaceURI){w.prefix&&(m=w.prefix+":"+l);break}}}t.push("<",m);for(var C=0;C"),i&&/^script$/i.test(l))for(;u;)u.data?t.push(u.data):se(u,t,i,r,a.slice()),u=u.nextSibling;else for(;u;)se(u,t,i,r,a.slice()),u=u.nextSibling;t.push("")}else t.push("/>");return;case v:case b:for(u=e.firstChild;u;)se(u,t,i,r,a.slice()),u=u.nextSibling;return;case h:return ae(t,e.name,e.value);case c:return t.push(e.data.replace(/[<&]/g,F).replace(/]]>/g,"]]>"));case f:return t.push("");case _:return t.push("\x3c!--",e.data,"--\x3e");case y:var x=e.publicId,P=e.systemId;if(t.push("");else if(P&&"."!=P)t.push(" SYSTEM ",P,">");else{var L=e.internalSubset;L&&t.push(" [",L,"]"),t.push(">")}return;case g:return t.push("");case p:return t.push("&",e.nodeName,";");default:t.push("??",e.nodeName)}}function oe(e,t,i){e[t]=i}k.prototype=Error.prototype,o(S,k),I.prototype={length:0,item:function(e){return this[e]||null},toString:function(e,t){for(var i=[],n=0;n0},lookupPrefix:function(e){for(var t=this;t;){var i=t._nsMap;if(i)for(var n in i)if(i[n]==e)return n;t=t.nodeType==h?t.ownerDocument:t.parentNode}return null},lookupNamespaceURI:function(e){for(var t=this;t;){var i=t._nsMap;if(i&&e in i)return i[e];t=t.nodeType==h?t.ownerDocument:t.parentNode}return null},isDefaultNamespace:function(e){return null==this.lookupPrefix(e)}},o(l,M),o(l,M.prototype),N.prototype={nodeName:"#document",nodeType:v,doctype:null,documentElement:null,_inc:1,insertBefore:function(e,t){if(e.nodeType==b){for(var i=e.firstChild;i;){var n=i.nextSibling;this.insertBefore(i,t),i=n}return e}return null==this.documentElement&&e.nodeType==d&&(this.documentElement=e),z(this,e,t),e.ownerDocument=this,e},removeChild:function(e){return this.documentElement==e&&(this.documentElement=null),H(this,e)},importNode:function(e,t){return function e(t,i,n){var r;switch(i.nodeType){case d:(r=i.cloneNode(!1)).ownerDocument=t;case b:break;case h:n=!0}r||(r=i.cloneNode(!1));if(r.ownerDocument=t,r.parentNode=null,n)for(var a=i.firstChild;a;)r.appendChild(e(t,a,n)),a=a.nextSibling;return r}(this,e,t)},getElementById:function(e){var t=null;return B(this.documentElement,(function(i){if(i.nodeType==d&&i.getAttribute("id")==e)return t=i,!0})),t},getElementsByClassName:function(e){var t=s(e);return new x(this,(function(i){var n=[];return t.length>0&&B(i.documentElement,(function(r){if(r!==i&&r.nodeType===d){var a=r.getAttribute("class");if(a){var o=e===a;if(!o){var u=s(a);o=t.every((l=u,function(e){return l&&-1!==l.indexOf(e)}))}o&&n.push(r)}}var l})),n}))},createElement:function(e){var t=new G;return t.ownerDocument=this,t.nodeName=e,t.tagName=e,t.localName=e,t.childNodes=new I,(t.attributes=new L)._ownerElement=t,t},createDocumentFragment:function(){var e=new ee;return e.ownerDocument=this,e.childNodes=new I,e},createTextNode:function(e){var t=new q;return t.ownerDocument=this,t.appendData(e),t},createComment:function(e){var t=new K;return t.ownerDocument=this,t.appendData(e),t},createCDATASection:function(e){var t=new X;return t.ownerDocument=this,t.appendData(e),t},createProcessingInstruction:function(e,t){var i=new te;return i.ownerDocument=this,i.tagName=i.target=e,i.nodeValue=i.data=t,i},createAttribute:function(e){var t=new W;return t.ownerDocument=this,t.name=e,t.nodeName=e,t.localName=e,t.specified=!0,t},createEntityReference:function(e){var t=new Z;return t.ownerDocument=this,t.nodeName=e,t},createElementNS:function(e,t){var i=new G,n=t.split(":"),r=i.attributes=new L;return i.childNodes=new I,i.ownerDocument=this,i.nodeName=t,i.tagName=t,i.namespaceURI=e,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=t,r._ownerElement=i,i},createAttributeNS:function(e,t){var i=new W,n=t.split(":");return i.ownerDocument=this,i.nodeName=t,i.name=t,i.namespaceURI=e,i.specified=!0,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=t,i}},u(N,M),G.prototype={nodeType:d,hasAttribute:function(e){return null!=this.getAttributeNode(e)},getAttribute:function(e){var t=this.getAttributeNode(e);return t&&t.value||""},getAttributeNode:function(e){return this.attributes.getNamedItem(e)},setAttribute:function(e,t){var i=this.ownerDocument.createAttribute(e);i.value=i.nodeValue=""+t,this.setAttributeNode(i)},removeAttribute:function(e){var t=this.getAttributeNode(e);t&&this.removeAttributeNode(t)},appendChild:function(e){return e.nodeType===b?this.insertBefore(e,null):function(e,t){var i=t.parentNode;if(i){var n=e.lastChild;i.removeChild(t);n=e.lastChild}return n=e.lastChild,t.parentNode=e,t.previousSibling=n,t.nextSibling=null,n?n.nextSibling=t:e.firstChild=t,e.lastChild=t,V(e.ownerDocument,e,t),t}(this,e)},setAttributeNode:function(e){return this.attributes.setNamedItem(e)},setAttributeNodeNS:function(e){return this.attributes.setNamedItemNS(e)},removeAttributeNode:function(e){return this.attributes.removeNamedItem(e.nodeName)},removeAttributeNS:function(e,t){var i=this.getAttributeNodeNS(e,t);i&&this.removeAttributeNode(i)},hasAttributeNS:function(e,t){return null!=this.getAttributeNodeNS(e,t)},getAttributeNS:function(e,t){var i=this.getAttributeNodeNS(e,t);return i&&i.value||""},setAttributeNS:function(e,t,i){var n=this.ownerDocument.createAttributeNS(e,t);n.value=n.nodeValue=""+i,this.setAttributeNode(n)},getAttributeNodeNS:function(e,t){return this.attributes.getNamedItemNS(e,t)},getElementsByTagName:function(e){return new x(this,(function(t){var i=[];return B(t,(function(n){n===t||n.nodeType!=d||"*"!==e&&n.tagName!=e||i.push(n)})),i}))},getElementsByTagNameNS:function(e,t){return new x(this,(function(i){var n=[];return B(i,(function(r){r===i||r.nodeType!==d||"*"!==e&&r.namespaceURI!==e||"*"!==t&&r.localName!=t||n.push(r)})),n}))}},N.prototype.getElementsByTagName=G.prototype.getElementsByTagName,N.prototype.getElementsByTagNameNS=G.prototype.getElementsByTagNameNS,u(G,M),W.prototype.nodeType=h,u(W,M),Y.prototype={data:"",substringData:function(e,t){return this.data.substring(e,e+t)},appendData:function(e){e=this.data+e,this.nodeValue=this.data=e,this.length=e.length},insertData:function(e,t){this.replaceData(e,0,t)},appendChild:function(e){throw new Error(E[w])},deleteData:function(e,t){this.replaceData(e,t,"")},replaceData:function(e,t,i){i=this.data.substring(0,e)+i+this.data.substring(e+t),this.nodeValue=this.data=i,this.length=i.length}},u(Y,M),q.prototype={nodeName:"#text",nodeType:c,splitText:function(e){var t=this.data,i=t.substring(e);t=t.substring(0,e),this.data=this.nodeValue=t,this.length=t.length;var n=this.ownerDocument.createTextNode(i);return this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling),n}},u(q,Y),K.prototype={nodeName:"#comment",nodeType:_},u(K,Y),X.prototype={nodeName:"#cdata-section",nodeType:f},u(X,Y),Q.prototype.nodeType=y,u(Q,M),$.prototype.nodeType=T,u($,M),J.prototype.nodeType=m,u(J,M),Z.prototype.nodeType=p,u(Z,M),ee.prototype.nodeName="#document-fragment",ee.prototype.nodeType=b,u(ee,M),te.prototype.nodeType=g,u(te,M),ie.prototype.serializeToString=function(e,t,i){return ne.call(e,t,i)},M.prototype.toString=ne;try{if(Object.defineProperty){Object.defineProperty(x.prototype,"length",{get:function(){return P(this),this.$$length}}),Object.defineProperty(M.prototype,"textContent",{get:function(){return function e(t){switch(t.nodeType){case d:case b:var i=[];for(t=t.firstChild;t;)7!==t.nodeType&&8!==t.nodeType&&i.push(e(t)),t=t.nextSibling;return i.join("");default:return t.nodeValue}}(this)},set:function(e){switch(this.nodeType){case d:case b:for(;this.firstChild;)this.removeChild(this.firstChild);(e||String(e))&&this.appendChild(this.ownerDocument.createTextNode(e));break;default:this.data=e,this.value=e,this.nodeValue=e}}}),oe=function(e,t,i){e["$$"+t]=i}}}catch(e){}i.DocumentType=Q,i.DOMException=k,i.DOMImplementation=O,i.Element=G,i.Node=M,i.NodeList=I,i.XMLSerializer=ie},{"./conventions":24}],27:[function(e,t,i){var n=e("./conventions").freeze;i.XML_ENTITIES=n({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}),i.HTML_ENTITIES=n({lt:"<",gt:">",amp:"&",quot:'"',apos:"'",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",times:"×",divide:"÷",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",euro:"€",trade:"™",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"}),i.entityMap=i.HTML_ENTITIES},{"./conventions":24}],28:[function(e,t,i){var n=e("./dom");i.DOMImplementation=n.DOMImplementation,i.XMLSerializer=n.XMLSerializer,i.DOMParser=e("./dom-parser").DOMParser},{"./dom":26,"./dom-parser":25}],29:[function(e,t,i){var n=e("./conventions").NAMESPACE,r=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,a=new RegExp("[\\-\\.0-9"+r.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),s=new RegExp("^"+r.source+a.source+"*(?::"+r.source+a.source+"*)?$");function o(e,t){this.message=e,this.locator=t,Error.captureStackTrace&&Error.captureStackTrace(this,o)}function u(){}function l(e,t){return t.lineNumber=e.lineNumber,t.columnNumber=e.columnNumber,t}function d(e,t,i,r,a,s){function o(e,t,n){i.attributeNames.hasOwnProperty(e)&&s.fatalError("Attribute "+e+" redefined"),i.addValue(e,t,n)}for(var u,l=++t,d=0;;){var h=e.charAt(l);switch(h){case"=":if(1===d)u=e.slice(t,l),d=3;else{if(2!==d)throw new Error("attribute equal must after attrName");d=3}break;case"'":case'"':if(3===d||1===d){if(1===d&&(s.warning('attribute value must after "="'),u=e.slice(t,l)),t=l+1,!((l=e.indexOf(h,t))>0))throw new Error("attribute value no end '"+h+"' match");o(u,c=e.slice(t,l).replace(/&#?\w+;/g,a),t-1),d=5}else{if(4!=d)throw new Error('attribute value must after "="');o(u,c=e.slice(t,l).replace(/&#?\w+;/g,a),t),s.warning('attribute "'+u+'" missed start quot('+h+")!!"),t=l+1,d=5}break;case"/":switch(d){case 0:i.setTagName(e.slice(t,l));case 5:case 6:case 7:d=7,i.closed=!0;case 4:case 1:case 2:break;default:throw new Error("attribute invalid close char('/')")}break;case"":return s.error("unexpected end of input"),0==d&&i.setTagName(e.slice(t,l)),l;case">":switch(d){case 0:i.setTagName(e.slice(t,l));case 5:case 6:case 7:break;case 4:case 1:"/"===(c=e.slice(t,l)).slice(-1)&&(i.closed=!0,c=c.slice(0,-1));case 2:2===d&&(c=u),4==d?(s.warning('attribute "'+c+'" missed quot(")!'),o(u,c.replace(/&#?\w+;/g,a),t)):(n.isHTML(r[""])&&c.match(/^(?:disabled|checked|selected)$/i)||s.warning('attribute "'+c+'" missed value!! "'+c+'" instead!!'),o(c,c,t));break;case 3:throw new Error("attribute value missed!!")}return l;case"€":h=" ";default:if(h<=" ")switch(d){case 0:i.setTagName(e.slice(t,l)),d=6;break;case 1:u=e.slice(t,l),d=2;break;case 4:var c=e.slice(t,l).replace(/&#?\w+;/g,a);s.warning('attribute "'+c+'" missed quot(")!!'),o(u,c,t);case 5:d=6}else switch(d){case 2:i.tagName;n.isHTML(r[""])&&u.match(/^(?:disabled|checked|selected)$/i)||s.warning('attribute "'+u+'" missed value!! "'+u+'" instead2!!'),o(u,u,t),t=l,d=1;break;case 5:s.warning('attribute space is required"'+u+'"!!');case 6:d=1,t=l;break;case 3:d=4,t=l;break;case 7:throw new Error("elements closed character '/' and '>' must be connected to")}}l++}}function h(e,t,i){for(var r=e.tagName,a=null,s=e.length;s--;){var o=e[s],u=o.qName,l=o.value;if((f=u.indexOf(":"))>0)var d=o.prefix=u.slice(0,f),h=u.slice(f+1),c="xmlns"===d&&h;else h=u,d=null,c="xmlns"===u&&"";o.localName=h,!1!==c&&(null==a&&(a={},p(i,i={})),i[c]=a[c]=l,o.uri=n.XMLNS,t.startPrefixMapping(c,l))}for(s=e.length;s--;){(d=(o=e[s]).prefix)&&("xml"===d&&(o.uri=n.XML),"xmlns"!==d&&(o.uri=i[d||""]))}var f;(f=r.indexOf(":"))>0?(d=e.prefix=r.slice(0,f),h=e.localName=r.slice(f+1)):(d=null,h=e.localName=r);var m=e.uri=i[d||""];if(t.startElement(m,h,r,e),!e.closed)return e.currentNSMap=i,e.localNSMap=a,!0;if(t.endElement(m,h,r),a)for(d in a)t.endPrefixMapping(d)}function c(e,t,i,n,r){if(/^(?:script|textarea)$/i.test(i)){var a=e.indexOf("",t),s=e.substring(t+1,a);if(/[&<]/.test(s))return/^script$/i.test(i)?(r.characters(s,0,s.length),a):(s=s.replace(/&#?\w+;/g,n),r.characters(s,0,s.length),a)}return t+1}function f(e,t,i,n){var r=n[i];return null==r&&((r=e.lastIndexOf(""))t?(i.comment(e,t+4,r-t-4),r+3):(n.error("Unclosed comment"),-1):-1;default:if("CDATA["==e.substr(t+3,6)){var r=e.indexOf("]]>",t+9);return i.startCDATA(),i.characters(e,t+9,r-t-9),i.endCDATA(),r+3}var a=function(e,t){var i,n=[],r=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;r.lastIndex=t,r.exec(e);for(;i=r.exec(e);)if(n.push(i),i[1])return n}(e,t),s=a.length;if(s>1&&/!doctype/i.test(a[0][0])){var o=a[1][0],u=!1,l=!1;s>3&&(/^public$/i.test(a[2][0])?(u=a[3][0],l=s>4&&a[4][0]):/^system$/i.test(a[2][0])&&(l=a[3][0]));var d=a[s-1];return i.startDTD(o,u,l),i.endDTD(),d.index+d[0].length}}return-1}function g(e,t,i){var n=e.indexOf("?>",t);if(n){var r=e.substring(t,n).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);if(r){r[0].length;return i.processingInstruction(r[1],r[2]),n+2}return-1}return-1}function _(){this.attributeNames={}}o.prototype=new Error,o.prototype.name=o.name,u.prototype={parse:function(e,t,i){var r=this.domBuilder;r.startDocument(),p(t,t={}),function(e,t,i,r,a){function s(e){var t=e.slice(1,-1);return t in i?i[t]:"#"===t.charAt(0)?function(e){if(e>65535){var t=55296+((e-=65536)>>10),i=56320+(1023&e);return String.fromCharCode(t,i)}return String.fromCharCode(e)}(parseInt(t.substr(1).replace("x","0x"))):(a.error("entity not found:"+e),e)}function u(t){if(t>w){var i=e.substring(w,t).replace(/&#?\w+;/g,s);T&&p(w),r.characters(i,0,t-w),w=t}}function p(t,i){for(;t>=y&&(i=b.exec(e));)v=i.index,y=v+i[0].length,T.lineNumber++;T.columnNumber=t-v+1}var v=0,y=0,b=/.*(?:\r\n?|\n)|.*$/g,T=r.locator,S=[{currentNSMap:t}],E={},w=0;for(;;){try{var C=e.indexOf("<",w);if(C<0){if(!e.substr(w).match(/^\s*$/)){var A=r.doc,k=A.createTextNode(e.substr(w));A.appendChild(k),r.currentElement=k}return}switch(C>w&&u(C),e.charAt(C+1)){case"/":var I=e.indexOf(">",C+3),x=e.substring(C+2,I).replace(/[ \t\n\r]+$/g,""),P=S.pop();I<0?(x=e.substring(C+2).replace(/[\s<].*/,""),a.error("end tag name: "+x+" is not complete:"+P.tagName),I=C+1+x.length):x.match(/\sw?w=I:u(Math.max(C,w)+1)}}(e,t,i,r,this.errorHandler),r.endDocument()}},_.prototype={setTagName:function(e){if(!s.test(e))throw new Error("invalid tagName:"+e);this.tagName=e},addValue:function(e,t,i){if(!s.test(e))throw new Error("invalid attribute:"+e);this.attributeNames[e]=this.length,this[this.length++]={qName:e,value:t,offset:i}},length:0,getLocalName:function(e){return this[e].localName},getLocator:function(e){return this[e].locator},getQName:function(e){return this[e].qName},getURI:function(e){return this[e].uri},getValue:function(e){return this[e].value}},i.XMLReader=u,i.ParseError=o},{"./conventions":24}],30:[function(e,t,i){"use strict";i.byteLength=function(e){var t=l(e),i=t[0],n=t[1];return 3*(i+n)/4-n},i.toByteArray=function(e){var t,i,n=l(e),s=n[0],o=n[1],u=new a(function(e,t,i){return 3*(t+i)/4-i}(0,s,o)),d=0,h=o>0?s-4:s;for(i=0;i>16&255,u[d++]=t>>8&255,u[d++]=255&t;2===o&&(t=r[e.charCodeAt(i)]<<2|r[e.charCodeAt(i+1)]>>4,u[d++]=255&t);1===o&&(t=r[e.charCodeAt(i)]<<10|r[e.charCodeAt(i+1)]<<4|r[e.charCodeAt(i+2)]>>2,u[d++]=t>>8&255,u[d++]=255&t);return u},i.fromByteArray=function(e){for(var t,i=e.length,r=i%3,a=[],s=0,o=i-r;so?o:s+16383));1===r?(t=e[i-1],a.push(n[t>>2]+n[t<<4&63]+"==")):2===r&&(t=(e[i-2]<<8)+e[i-1],a.push(n[t>>10]+n[t>>4&63]+n[t<<2&63]+"="));return a.join("")};for(var n=[],r=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,u=s.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var i=e.indexOf("=");return-1===i&&(i=t),[i,i===t?0:4-i%4]}function d(e,t,i){for(var r,a,s=[],o=t;o>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return s.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},{}],31:[function(e,t,i){},{}],32:[function(e,t,i){(function(t){ -/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -"use strict";var n=e("base64-js"),r=e("ieee754");i.Buffer=t,i.SlowBuffer=function(e){+e!=e&&(e=0);return t.alloc(+e)},i.INSPECT_MAX_BYTES=50;function a(e){if(e>2147483647)throw new RangeError('The value "'+e+'" is invalid for option "size"');var i=new Uint8Array(e);return i.__proto__=t.prototype,i}function t(e,t,i){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return u(e)}return s(e,t,i)}function s(e,i,n){if("string"==typeof e)return function(e,i){"string"==typeof i&&""!==i||(i="utf8");if(!t.isEncoding(i))throw new TypeError("Unknown encoding: "+i);var n=0|h(e,i),r=a(n),s=r.write(e,i);s!==n&&(r=r.slice(0,s));return r}(e,i);if(ArrayBuffer.isView(e))return l(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(B(e,ArrayBuffer)||e&&B(e.buffer,ArrayBuffer))return function(e,i,n){if(i<0||e.byteLength=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647..toString(16)+" bytes");return 0|e}function h(e,i){if(t.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||B(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var a=!1;;)switch(i){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return O(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return M(e).length;default:if(a)return r?-1:O(e).length;i=(""+i).toLowerCase(),a=!0}}function c(e,t,i){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===i||i>this.length)&&(i=this.length),i<=0)return"";if((i>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return A(this,t,i);case"utf8":case"utf-8":return E(this,t,i);case"ascii":return w(this,t,i);case"latin1":case"binary":return C(this,t,i);case"base64":return S(this,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,i);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function f(e,t,i){var n=e[t];e[t]=e[i],e[i]=n}function p(e,i,n,r,a){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),N(n=+n)&&(n=a?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(a)return-1;n=e.length-1}else if(n<0){if(!a)return-1;n=0}if("string"==typeof i&&(i=t.from(i,r)),t.isBuffer(i))return 0===i.length?-1:m(e,i,n,r,a);if("number"==typeof i)return i&=255,"function"==typeof Uint8Array.prototype.indexOf?a?Uint8Array.prototype.indexOf.call(e,i,n):Uint8Array.prototype.lastIndexOf.call(e,i,n):m(e,[i],n,r,a);throw new TypeError("val must be string, number or Buffer")}function m(e,t,i,n,r){var a,s=1,o=e.length,u=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,o/=2,u/=2,i/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(r){var d=-1;for(a=i;ao&&(i=o-u),a=i;a>=0;a--){for(var h=!0,c=0;cr&&(n=r):n=r;var a=t.length;n>a/2&&(n=a/2);for(var s=0;s>8,r=i%256,a.push(r),a.push(n);return a}(t,e.length-i),e,i,n)}function S(e,t,i){return 0===t&&i===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,i))}function E(e,t,i){i=Math.min(e.length,i);for(var n=[],r=t;r239?4:l>223?3:l>191?2:1;if(r+h<=i)switch(h){case 1:l<128&&(d=l);break;case 2:128==(192&(a=e[r+1]))&&(u=(31&l)<<6|63&a)>127&&(d=u);break;case 3:a=e[r+1],s=e[r+2],128==(192&a)&&128==(192&s)&&(u=(15&l)<<12|(63&a)<<6|63&s)>2047&&(u<55296||u>57343)&&(d=u);break;case 4:a=e[r+1],s=e[r+2],o=e[r+3],128==(192&a)&&128==(192&s)&&128==(192&o)&&(u=(15&l)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&u<1114112&&(d=u)}null===d?(d=65533,h=1):d>65535&&(d-=65536,n.push(d>>>10&1023|55296),d=56320|1023&d),n.push(d),r+=h}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var i="",n=0;for(;nt&&(e+=" ... "),""},t.prototype.compare=function(e,i,n,r,a){if(B(e,Uint8Array)&&(e=t.from(e,e.offset,e.byteLength)),!t.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===i&&(i=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===a&&(a=this.length),i<0||n>e.length||r<0||a>this.length)throw new RangeError("out of range index");if(r>=a&&i>=n)return 0;if(r>=a)return-1;if(i>=n)return 1;if(this===e)return 0;for(var s=(a>>>=0)-(r>>>=0),o=(n>>>=0)-(i>>>=0),u=Math.min(s,o),l=this.slice(r,a),d=e.slice(i,n),h=0;h>>=0,isFinite(i)?(i>>>=0,void 0===n&&(n="utf8")):(n=i,i=void 0)}var r=this.length-t;if((void 0===i||i>r)&&(i=r),e.length>0&&(i<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return g(this,e,t,i);case"utf8":case"utf-8":return _(this,e,t,i);case"ascii":return v(this,e,t,i);case"latin1":case"binary":return y(this,e,t,i);case"base64":return b(this,e,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,e,t,i);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function w(e,t,i){var n="";i=Math.min(e.length,i);for(var r=t;rn)&&(i=n);for(var r="",a=t;ai)throw new RangeError("Trying to access beyond buffer length")}function x(e,i,n,r,a,s){if(!t.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(i>a||ie.length)throw new RangeError("Index out of range")}function P(e,t,i,n,r,a){if(i+n>e.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function L(e,t,i,n,a){return t=+t,i>>>=0,a||P(e,0,i,4),r.write(e,t,i,n,23,4),i+4}function D(e,t,i,n,a){return t=+t,i>>>=0,a||P(e,0,i,8),r.write(e,t,i,n,52,8),i+8}t.prototype.slice=function(e,i){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(i=void 0===i?n:~~i)<0?(i+=n)<0&&(i=0):i>n&&(i=n),i>>=0,t>>>=0,i||I(e,t,this.length);for(var n=this[e],r=1,a=0;++a>>=0,t>>>=0,i||I(e,t,this.length);for(var n=this[e+--t],r=1;t>0&&(r*=256);)n+=this[e+--t]*r;return n},t.prototype.readUInt8=function(e,t){return e>>>=0,t||I(e,1,this.length),this[e]},t.prototype.readUInt16LE=function(e,t){return e>>>=0,t||I(e,2,this.length),this[e]|this[e+1]<<8},t.prototype.readUInt16BE=function(e,t){return e>>>=0,t||I(e,2,this.length),this[e]<<8|this[e+1]},t.prototype.readUInt32LE=function(e,t){return e>>>=0,t||I(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},t.prototype.readUInt32BE=function(e,t){return e>>>=0,t||I(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},t.prototype.readIntLE=function(e,t,i){e>>>=0,t>>>=0,i||I(e,t,this.length);for(var n=this[e],r=1,a=0;++a=(r*=128)&&(n-=Math.pow(2,8*t)),n},t.prototype.readIntBE=function(e,t,i){e>>>=0,t>>>=0,i||I(e,t,this.length);for(var n=t,r=1,a=this[e+--n];n>0&&(r*=256);)a+=this[e+--n]*r;return a>=(r*=128)&&(a-=Math.pow(2,8*t)),a},t.prototype.readInt8=function(e,t){return e>>>=0,t||I(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},t.prototype.readInt16LE=function(e,t){e>>>=0,t||I(e,2,this.length);var i=this[e]|this[e+1]<<8;return 32768&i?4294901760|i:i},t.prototype.readInt16BE=function(e,t){e>>>=0,t||I(e,2,this.length);var i=this[e+1]|this[e]<<8;return 32768&i?4294901760|i:i},t.prototype.readInt32LE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},t.prototype.readInt32BE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},t.prototype.readFloatLE=function(e,t){return e>>>=0,t||I(e,4,this.length),r.read(this,e,!0,23,4)},t.prototype.readFloatBE=function(e,t){return e>>>=0,t||I(e,4,this.length),r.read(this,e,!1,23,4)},t.prototype.readDoubleLE=function(e,t){return e>>>=0,t||I(e,8,this.length),r.read(this,e,!0,52,8)},t.prototype.readDoubleBE=function(e,t){return e>>>=0,t||I(e,8,this.length),r.read(this,e,!1,52,8)},t.prototype.writeUIntLE=function(e,t,i,n){(e=+e,t>>>=0,i>>>=0,n)||x(this,e,t,i,Math.pow(2,8*i)-1,0);var r=1,a=0;for(this[t]=255&e;++a>>=0,i>>>=0,n)||x(this,e,t,i,Math.pow(2,8*i)-1,0);var r=i-1,a=1;for(this[t+r]=255&e;--r>=0&&(a*=256);)this[t+r]=e/a&255;return t+i},t.prototype.writeUInt8=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,1,255,0),this[t]=255&e,t+1},t.prototype.writeUInt16LE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},t.prototype.writeUInt16BE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},t.prototype.writeUInt32LE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},t.prototype.writeUInt32BE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},t.prototype.writeIntLE=function(e,t,i,n){if(e=+e,t>>>=0,!n){var r=Math.pow(2,8*i-1);x(this,e,t,i,r-1,-r)}var a=0,s=1,o=0;for(this[t]=255&e;++a>0)-o&255;return t+i},t.prototype.writeIntBE=function(e,t,i,n){if(e=+e,t>>>=0,!n){var r=Math.pow(2,8*i-1);x(this,e,t,i,r-1,-r)}var a=i-1,s=1,o=0;for(this[t+a]=255&e;--a>=0&&(s*=256);)e<0&&0===o&&0!==this[t+a+1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+i},t.prototype.writeInt8=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},t.prototype.writeInt16LE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},t.prototype.writeInt16BE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},t.prototype.writeInt32LE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},t.prototype.writeInt32BE=function(e,t,i){return e=+e,t>>>=0,i||x(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},t.prototype.writeFloatLE=function(e,t,i){return L(this,e,t,!0,i)},t.prototype.writeFloatBE=function(e,t,i){return L(this,e,t,!1,i)},t.prototype.writeDoubleLE=function(e,t,i){return D(this,e,t,!0,i)},t.prototype.writeDoubleBE=function(e,t,i){return D(this,e,t,!1,i)},t.prototype.copy=function(e,i,n,r){if(!t.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),i>=e.length&&(i=e.length),i||(i=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-i=0;--s)e[s+i]=this[s+n];else Uint8Array.prototype.set.call(e,this.subarray(n,r),i);return a},t.prototype.fill=function(e,i,n,r){if("string"==typeof e){if("string"==typeof i?(r=i,i=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!t.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===e.length){var a=e.charCodeAt(0);("utf8"===r&&a<128||"latin1"===r)&&(e=a)}}else"number"==typeof e&&(e&=255);if(i<0||this.length>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=i;s55295&&i<57344){if(!r){if(i>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&a.push(239,191,189);continue}r=i;continue}if(i<56320){(t-=3)>-1&&a.push(239,191,189),r=i;continue}i=65536+(r-55296<<10|i-56320)}else r&&(t-=3)>-1&&a.push(239,191,189);if(r=null,i<128){if((t-=1)<0)break;a.push(i)}else if(i<2048){if((t-=2)<0)break;a.push(i>>6|192,63&i|128)}else if(i<65536){if((t-=3)<0)break;a.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return a}function M(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(R,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function F(e,t,i,n){for(var r=0;r=t.length||r>=e.length);++r)t[r+i]=e[r];return r}function B(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function N(e){return e!=e}}).call(this,e("buffer").Buffer)},{"base64-js":30,buffer:32,ieee754:36}],33:[function(e,t,i){(function(e){var n,r;n=self,r=function(){return function(){var t={"./node_modules/es6-promise/dist/es6-promise.js": -/*!******************************************************!*\ - !*** ./node_modules/es6-promise/dist/es6-promise.js ***! - \******************************************************/function(t,i,n){ -/*! - * @overview es6-promise - a tiny implementation of Promises/A+. - * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) - * @license Licensed under MIT license - * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE - * @version v4.2.8+1e68dce6 - */ -t.exports=function(){"use strict";function t(e){return"function"==typeof e}var i=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},r=0,a=void 0,s=void 0,o=function(e,t){p[r]=e,p[r+1]=t,2===(r+=2)&&(s?s(m):b())},u="undefined"!=typeof window?window:void 0,l=u||{},d=l.MutationObserver||l.WebKitMutationObserver,h="undefined"==typeof self&&void 0!==e&&"[object process]"==={}.toString.call(e),c="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function f(){var e=setTimeout;return function(){return e(m,1)}}var p=new Array(1e3);function m(){for(var e=0;e0&&s.length>r&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,console&&console.warn}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,i){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:i},r=d.bind(n);return r.listener=i,n.wrapFn=r,r}function c(e,t,i){var n=e._events;if(void 0===n)return[];var r=n[t];return void 0===r?[]:"function"==typeof r?i?[r.listener||r]:[r]:i?function(e){for(var t=new Array(e.length),i=0;i0&&(s=t[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var u=a[e];if(void 0===u)return!1;if("function"==typeof u)n(u,this,t);else{var l=u.length,d=p(u,l);for(i=0;i=0;a--)if(i[a]===t||i[a].listener===t){s=i[a].listener,r=a;break}if(r<0)return this;0===r?i.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return c(this,e,!0)},a.prototype.rawListeners=function(e){return c(this,e,!1)},a.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},a.prototype.listenerCount=f,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},"./node_modules/webworkify-webpack/index.js": -/*!**************************************************!*\ - !*** ./node_modules/webworkify-webpack/index.js ***! - \**************************************************/function(e,t,i){function n(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.m=e,i.c=t,i.i=function(e){return e},i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},i.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/",i.oe=function(e){throw console.error(e),e};var n=i(i.s=ENTRY_MODULE);return n.default||n}function r(e){return(e+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function a(e,t,n){var a={};a[n]=[];var s=t.toString(),o=s.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);if(!o)return a;for(var u,l=o[1],d=new RegExp("(\\\\n|\\W)"+r(l)+"\\(\\s*(/\\*.*?\\*/)?\\s*.*?([\\.|\\-|\\+|\\w|/|@]+).*?\\)","g");u=d.exec(s);)"dll-reference"!==u[3]&&a[n].push(u[3]);for(d=new RegExp("\\("+r(l)+'\\("(dll-reference\\s([\\.|\\-|\\+|\\w|/|@]+))"\\)\\)\\(\\s*(/\\*.*?\\*/)?\\s*.*?([\\.|\\-|\\+|\\w|/|@]+).*?\\)',"g");u=d.exec(s);)e[u[2]]||(a[n].push(u[1]),e[u[2]]=i(u[1]).m),a[u[2]]=a[u[2]]||[],a[u[2]].push(u[4]);for(var h,c=Object.keys(a),f=0;f0}),!1)}e.exports=function(e,t){t=t||{};var r={main:i.m},o=t.all?{main:Object.keys(r.main)}:function(e,t){for(var i={main:[t]},n={main:[]},r={main:{}};s(i);)for(var o=Object.keys(i),u=0;u=e[r]&&t0&&e[0].originalDts=t[r].dts&&et[n].lastSample.originalDts&&e=t[n].lastSample.originalDts&&(n===t.length-1||n0&&(r=this._searchNearestSegmentBefore(i.originalBeginDts)+1),this._lastAppendLocation=r,this._list.splice(r,0,i)},e.prototype.getLastSegmentBefore=function(e){var t=this._searchNearestSegmentBefore(e);return t>=0?this._list[t]:null},e.prototype.getLastSampleBefore=function(e){var t=this.getLastSegmentBefore(e);return null!=t?t.lastSample:null},e.prototype.getLastSyncPointBefore=function(e){for(var t=this._searchNearestSegmentBefore(e),i=this._list[t].syncPoints;0===i.length&&t>0;)t--,i=this._list[t].syncPoints;return i.length>0?i[i.length-1]:null},e}()},"./src/core/mse-controller.js": -/*!************************************!*\ - !*** ./src/core/mse-controller.js ***! - \************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! ../utils/logger.js */"./src/utils/logger.js"),s=i(/*! ../utils/browser.js */"./src/utils/browser.js"),o=i(/*! ./mse-events.js */"./src/core/mse-events.js"),u=i(/*! ./media-segment-info.js */"./src/core/media-segment-info.js"),l=i(/*! ../utils/exception.js */"./src/utils/exception.js"),d=function(){function e(e){this.TAG="MSEController",this._config=e,this._emitter=new(r()),this._config.isLive&&null==this._config.autoCleanupSourceBuffer&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new u.IDRSampleList}return e.prototype.destroy=function(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null},e.prototype.on=function(e,t){this._emitter.addListener(e,t)},e.prototype.off=function(e,t){this._emitter.removeListener(e,t)},e.prototype.attachMediaElement=function(e){if(this._mediaSource)throw new l.IllegalStateException("MediaSource has been attached to an HTMLMediaElement!");var t=this._mediaSource=new window.MediaSource;t.addEventListener("sourceopen",this.e.onSourceOpen),t.addEventListener("sourceended",this.e.onSourceEnded),t.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=e,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),e.src=this._mediaSourceObjectURL},e.prototype.detachMediaElement=function(){if(this._mediaSource){var e=this._mediaSource;for(var t in this._sourceBuffers){var i=this._pendingSegments[t];i.splice(0,i.length),this._pendingSegments[t]=null,this._pendingRemoveRanges[t]=null,this._lastInitSegments[t]=null;var n=this._sourceBuffers[t];if(n){if("closed"!==e.readyState){try{e.removeSourceBuffer(n)}catch(e){a.default.e(this.TAG,e.message)}n.removeEventListener("error",this.e.onSourceBufferError),n.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[t]=null,this._sourceBuffers[t]=null}}if("open"===e.readyState)try{e.endOfStream()}catch(e){a.default.e(this.TAG,e.message)}e.removeEventListener("sourceopen",this.e.onSourceOpen),e.removeEventListener("sourceended",this.e.onSourceEnded),e.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)},e.prototype.appendInitSegment=function(e,t){if(!this._mediaSource||"open"!==this._mediaSource.readyState)return this._pendingSourceBufferInit.push(e),void this._pendingSegments[e.type].push(e);var i=e,n=""+i.container;i.codec&&i.codec.length>0&&(n+=";codecs="+i.codec);var r=!1;if(a.default.v(this.TAG,"Received Initialization Segment, mimeType: "+n),this._lastInitSegments[i.type]=i,n!==this._mimeTypes[i.type]){if(this._mimeTypes[i.type])a.default.v(this.TAG,"Notice: "+i.type+" mimeType changed, origin: "+this._mimeTypes[i.type]+", target: "+n);else{r=!0;try{var u=this._sourceBuffers[i.type]=this._mediaSource.addSourceBuffer(n);u.addEventListener("error",this.e.onSourceBufferError),u.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(e){return a.default.e(this.TAG,e.message),void this._emitter.emit(o.default.ERROR,{code:e.code,msg:e.message})}}this._mimeTypes[i.type]=n}t||this._pendingSegments[i.type].push(i),r||this._sourceBuffers[i.type]&&!this._sourceBuffers[i.type].updating&&this._doAppendSegments(),s.default.safari&&"audio/mpeg"===i.container&&i.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=i.mediaDuration/1e3,this._updateMediaSourceDuration())},e.prototype.appendMediaSegment=function(e){var t=e;this._pendingSegments[t.type].push(t),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();var i=this._sourceBuffers[t.type];!i||i.updating||this._hasPendingRemoveRanges()||this._doAppendSegments()},e.prototype.seek=function(e){for(var t in this._sourceBuffers)if(this._sourceBuffers[t]){var i=this._sourceBuffers[t];if("open"===this._mediaSource.readyState)try{i.abort()}catch(e){a.default.e(this.TAG,e.message)}this._idrList.clear();var n=this._pendingSegments[t];if(n.splice(0,n.length),"closed"!==this._mediaSource.readyState){for(var r=0;r=1&&e-n.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1},e.prototype._doCleanupSourceBuffer=function(){var e=this._mediaElement.currentTime;for(var t in this._sourceBuffers){var i=this._sourceBuffers[t];if(i){for(var n=i.buffered,r=!1,a=0;a=this._config.autoCleanupMaxBackwardDuration){r=!0;var u=e-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[t].push({start:s,end:u})}}else o0&&(isNaN(t)||i>t)&&(a.default.v(this.TAG,"Update MediaSource duration from "+t+" to "+i),this._mediaSource.duration=i),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}},e.prototype._doRemoveRanges=function(){for(var e in this._pendingRemoveRanges)if(this._sourceBuffers[e]&&!this._sourceBuffers[e].updating)for(var t=this._sourceBuffers[e],i=this._pendingRemoveRanges[e];i.length&&!t.updating;){var n=i.shift();t.remove(n.start,n.end)}},e.prototype._doAppendSegments=function(){var e=this._pendingSegments;for(var t in e)if(this._sourceBuffers[t]&&!this._sourceBuffers[t].updating&&e[t].length>0){var i=e[t].shift();if(i.timestampOffset){var n=this._sourceBuffers[t].timestampOffset,r=i.timestampOffset/1e3;Math.abs(n-r)>.1&&(a.default.v(this.TAG,"Update MPEG audio timestampOffset from "+n+" to "+r),this._sourceBuffers[t].timestampOffset=r),delete i.timestampOffset}if(!i.data||0===i.data.byteLength)continue;try{this._sourceBuffers[t].appendBuffer(i.data),this._isBufferFull=!1,"video"===t&&i.hasOwnProperty("info")&&this._idrList.appendArray(i.info.syncPoints)}catch(e){this._pendingSegments[t].unshift(i),22===e.code?(this._isBufferFull||this._emitter.emit(o.default.BUFFER_FULL),this._isBufferFull=!0):(a.default.e(this.TAG,e.message),this._emitter.emit(o.default.ERROR,{code:e.code,msg:e.message}))}}},e.prototype._onSourceOpen=function(){if(a.default.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0)for(var e=this._pendingSourceBufferInit;e.length;){var t=e.shift();this.appendInitSegment(t,!0)}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(o.default.SOURCE_OPEN)},e.prototype._onSourceEnded=function(){a.default.v(this.TAG,"MediaSource onSourceEnded")},e.prototype._onSourceClose=function(){a.default.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&null!=this.e&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))},e.prototype._hasPendingSegments=function(){var e=this._pendingSegments;return e.video.length>0||e.audio.length>0},e.prototype._hasPendingRemoveRanges=function(){var e=this._pendingRemoveRanges;return e.video.length>0||e.audio.length>0},e.prototype._onSourceBufferUpdateEnd=function(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(o.default.UPDATE_END)},e.prototype._onSourceBufferError=function(e){a.default.e(this.TAG,"SourceBuffer Error: "+e)},e}();t.default=d},"./src/core/mse-events.js": -/*!********************************!*\ - !*** ./src/core/mse-events.js ***! - \********************************/function(e,t,i){"use strict";i.r(t),t.default={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"}},"./src/core/transmuxer.js": -/*!********************************!*\ - !*** ./src/core/transmuxer.js ***! - \********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! webworkify-webpack */"./node_modules/webworkify-webpack/index.js"),s=i.n(a),o=i(/*! ../utils/logger.js */"./src/utils/logger.js"),u=i(/*! ../utils/logging-control.js */"./src/utils/logging-control.js"),l=i(/*! ./transmuxing-controller.js */"./src/core/transmuxing-controller.js"),d=i(/*! ./transmuxing-events.js */"./src/core/transmuxing-events.js"),h=i(/*! ./media-info.js */"./src/core/media-info.js"),c=function(){function e(e,t){if(this.TAG="Transmuxer",this._emitter=new(r()),t.enableWorker&&"undefined"!=typeof Worker)try{this._worker=s()(/*! ./transmuxing-worker */"./src/core/transmuxing-worker.js"),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[e,t]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},u.default.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:u.default.getConfig()})}catch(i){o.default.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new l.default(e,t)}else this._controller=new l.default(e,t);if(this._controller){var i=this._controller;i.on(d.default.IO_ERROR,this._onIOError.bind(this)),i.on(d.default.DEMUX_ERROR,this._onDemuxError.bind(this)),i.on(d.default.INIT_SEGMENT,this._onInitSegment.bind(this)),i.on(d.default.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),i.on(d.default.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),i.on(d.default.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),i.on(d.default.MEDIA_INFO,this._onMediaInfo.bind(this)),i.on(d.default.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),i.on(d.default.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),i.on(d.default.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),i.on(d.default.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}return e.prototype.destroy=function(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),u.default.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null},e.prototype.on=function(e,t){this._emitter.addListener(e,t)},e.prototype.off=function(e,t){this._emitter.removeListener(e,t)},e.prototype.hasWorker=function(){return null!=this._worker},e.prototype.open=function(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()},e.prototype.close=function(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()},e.prototype.seek=function(e){this._worker?this._worker.postMessage({cmd:"seek",param:e}):this._controller.seek(e)},e.prototype.pause=function(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()},e.prototype.resume=function(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()},e.prototype._onInitSegment=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(d.default.INIT_SEGMENT,e,t)}))},e.prototype._onMediaSegment=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(d.default.MEDIA_SEGMENT,e,t)}))},e.prototype._onLoadingComplete=function(){var e=this;Promise.resolve().then((function(){e._emitter.emit(d.default.LOADING_COMPLETE)}))},e.prototype._onRecoveredEarlyEof=function(){var e=this;Promise.resolve().then((function(){e._emitter.emit(d.default.RECOVERED_EARLY_EOF)}))},e.prototype._onMediaInfo=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(d.default.MEDIA_INFO,e)}))},e.prototype._onMetaDataArrived=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(d.default.METADATA_ARRIVED,e)}))},e.prototype._onScriptDataArrived=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(d.default.SCRIPTDATA_ARRIVED,e)}))},e.prototype._onStatisticsInfo=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(d.default.STATISTICS_INFO,e)}))},e.prototype._onIOError=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(d.default.IO_ERROR,e,t)}))},e.prototype._onDemuxError=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(d.default.DEMUX_ERROR,e,t)}))},e.prototype._onRecommendSeekpoint=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(d.default.RECOMMEND_SEEKPOINT,e)}))},e.prototype._onLoggingConfigChanged=function(e){this._worker&&this._worker.postMessage({cmd:"logging_config",param:e})},e.prototype._onWorkerMessage=function(e){var t=e.data,i=t.data;if("destroyed"===t.msg||this._workerDestroying)return this._workerDestroying=!1,this._worker.terminate(),void(this._worker=null);switch(t.msg){case d.default.INIT_SEGMENT:case d.default.MEDIA_SEGMENT:this._emitter.emit(t.msg,i.type,i.data);break;case d.default.LOADING_COMPLETE:case d.default.RECOVERED_EARLY_EOF:this._emitter.emit(t.msg);break;case d.default.MEDIA_INFO:Object.setPrototypeOf(i,h.default.prototype),this._emitter.emit(t.msg,i);break;case d.default.METADATA_ARRIVED:case d.default.SCRIPTDATA_ARRIVED:case d.default.STATISTICS_INFO:this._emitter.emit(t.msg,i);break;case d.default.IO_ERROR:case d.default.DEMUX_ERROR:this._emitter.emit(t.msg,i.type,i.info);break;case d.default.RECOMMEND_SEEKPOINT:this._emitter.emit(t.msg,i);break;case"logcat_callback":o.default.emitter.emit("log",i.type,i.logcat)}},e}();t.default=c},"./src/core/transmuxing-controller.js": -/*!********************************************!*\ - !*** ./src/core/transmuxing-controller.js ***! - \********************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! ../utils/logger.js */"./src/utils/logger.js"),s=i(/*! ../utils/browser.js */"./src/utils/browser.js"),o=i(/*! ./media-info.js */"./src/core/media-info.js"),u=i(/*! ../demux/flv-demuxer.js */"./src/demux/flv-demuxer.js"),l=i(/*! ../remux/mp4-remuxer.js */"./src/remux/mp4-remuxer.js"),d=i(/*! ../demux/demux-errors.js */"./src/demux/demux-errors.js"),h=i(/*! ../io/io-controller.js */"./src/io/io-controller.js"),c=i(/*! ./transmuxing-events.js */"./src/core/transmuxing-events.js"),f=function(){function e(e,t){this.TAG="TransmuxingController",this._emitter=new(r()),this._config=t,e.segments||(e.segments=[{duration:e.duration,filesize:e.filesize,url:e.url}]),"boolean"!=typeof e.cors&&(e.cors=!0),"boolean"!=typeof e.withCredentials&&(e.withCredentials=!1),this._mediaDataSource=e,this._currentSegmentIndex=0;var i=0;this._mediaDataSource.segments.forEach((function(n){n.timestampBase=i,i+=n.duration,n.cors=e.cors,n.withCredentials=e.withCredentials,t.referrerPolicy&&(n.referrerPolicy=t.referrerPolicy)})),isNaN(i)||this._mediaDataSource.duration===i||(this._mediaDataSource.duration=i),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}return e.prototype.destroy=function(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null},e.prototype.on=function(e,t){this._emitter.addListener(e,t)},e.prototype.off=function(e,t){this._emitter.removeListener(e,t)},e.prototype.start=function(){this._loadSegment(0),this._enableStatisticsReporter()},e.prototype._loadSegment=function(e,t){this._currentSegmentIndex=e;var i=this._mediaDataSource.segments[e],n=this._ioctl=new h.default(i,this._config,e);n.onError=this._onIOException.bind(this),n.onSeeked=this._onIOSeeked.bind(this),n.onComplete=this._onIOComplete.bind(this),n.onRedirect=this._onIORedirect.bind(this),n.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),t?this._demuxer.bindDataSource(this._ioctl):n.onDataArrival=this._onInitChunkArrival.bind(this),n.open(t)},e.prototype.stop=function(){this._internalAbort(),this._disableStatisticsReporter()},e.prototype._internalAbort=function(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)},e.prototype.pause=function(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())},e.prototype.resume=function(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())},e.prototype.seek=function(e){if(null!=this._mediaInfo&&this._mediaInfo.isSeekable()){var t=this._searchSegmentIndexContains(e);if(t===this._currentSegmentIndex){var i=this._mediaInfo.segments[t];if(null==i)this._pendingSeekTime=e;else{var n=i.getNearestKeyframe(e);this._remuxer.seek(n.milliseconds),this._ioctl.seek(n.fileposition),this._pendingResolveSeekPoint=n.milliseconds}}else{var r=this._mediaInfo.segments[t];null==r?(this._pendingSeekTime=e,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(t)):(n=r.getNearestKeyframe(e),this._internalAbort(),this._remuxer.seek(e),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[t].timestampBase,this._loadSegment(t,n.fileposition),this._pendingResolveSeekPoint=n.milliseconds,this._reportSegmentMediaInfo(t))}this._enableStatisticsReporter()}},e.prototype._searchSegmentIndexContains=function(e){for(var t=this._mediaDataSource.segments,i=t.length-1,n=0;n0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,r=this._demuxer.parseChunks(e,t);else if((n=u.default.probe(e)).match){this._demuxer=new u.default(n,this._config),this._remuxer||(this._remuxer=new l.default(this._config));var s=this._mediaDataSource;null==s.duration||isNaN(s.duration)||(this._demuxer.overridedDuration=s.duration),"boolean"==typeof s.hasAudio&&(this._demuxer.overridedHasAudio=s.hasAudio),"boolean"==typeof s.hasVideo&&(this._demuxer.overridedHasVideo=s.hasVideo),this._demuxer.timestampBase=s.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),r=this._demuxer.parseChunks(e,t)}else n=null,a.default.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then((function(){i._internalAbort()})),this._emitter.emit(c.default.DEMUX_ERROR,d.default.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),r=0;return r},e.prototype._onMediaInfo=function(e){var t=this;null==this._mediaInfo&&(this._mediaInfo=Object.assign({},e),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,o.default.prototype));var i=Object.assign({},e);Object.setPrototypeOf(i,o.default.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=i,this._reportSegmentMediaInfo(this._currentSegmentIndex),null!=this._pendingSeekTime&&Promise.resolve().then((function(){var e=t._pendingSeekTime;t._pendingSeekTime=null,t.seek(e)}))},e.prototype._onMetaDataArrived=function(e){this._emitter.emit(c.default.METADATA_ARRIVED,e)},e.prototype._onScriptDataArrived=function(e){this._emitter.emit(c.default.SCRIPTDATA_ARRIVED,e)},e.prototype._onIOSeeked=function(){this._remuxer.insertDiscontinuity()},e.prototype._onIOComplete=function(e){var t=e+1;t0&&i[0].originalDts===n&&(n=i[0].pts),this._emitter.emit(c.default.RECOMMEND_SEEKPOINT,n)}},e.prototype._enableStatisticsReporter=function(){null==this._statisticsReporter&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))},e.prototype._disableStatisticsReporter=function(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)},e.prototype._reportSegmentMediaInfo=function(e){var t=this._mediaInfo.segments[e],i=Object.assign({},t);i.duration=this._mediaInfo.duration,i.segmentCount=this._mediaInfo.segmentCount,delete i.segments,delete i.keyframesIndex,this._emitter.emit(c.default.MEDIA_INFO,i)},e.prototype._reportStatisticsInfo=function(){var e={};e.url=this._ioctl.currentURL,e.hasRedirect=this._ioctl.hasRedirect,e.hasRedirect&&(e.redirectedURL=this._ioctl.currentRedirectedURL),e.speed=this._ioctl.currentSpeed,e.loaderType=this._ioctl.loaderType,e.currentSegmentIndex=this._currentSegmentIndex,e.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(c.default.STATISTICS_INFO,e)},e}();t.default=f},"./src/core/transmuxing-events.js": -/*!****************************************!*\ - !*** ./src/core/transmuxing-events.js ***! - \****************************************/function(e,t,i){"use strict";i.r(t),t.default={IO_ERROR:"io_error",DEMUX_ERROR:"demux_error",INIT_SEGMENT:"init_segment",MEDIA_SEGMENT:"media_segment",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info",RECOMMEND_SEEKPOINT:"recommend_seekpoint"}},"./src/core/transmuxing-worker.js": -/*!****************************************!*\ - !*** ./src/core/transmuxing-worker.js ***! - \****************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ../utils/logging-control.js */"./src/utils/logging-control.js"),r=i(/*! ../utils/polyfill.js */"./src/utils/polyfill.js"),a=i(/*! ./transmuxing-controller.js */"./src/core/transmuxing-controller.js"),s=i(/*! ./transmuxing-events.js */"./src/core/transmuxing-events.js");t.default=function(e){var t=null,i=function(t,i){e.postMessage({msg:"logcat_callback",data:{type:t,logcat:i}})}.bind(this);function o(t,i){var n={msg:s.default.INIT_SEGMENT,data:{type:t,data:i}};e.postMessage(n,[i.data])}function u(t,i){var n={msg:s.default.MEDIA_SEGMENT,data:{type:t,data:i}};e.postMessage(n,[i.data])}function l(){var t={msg:s.default.LOADING_COMPLETE};e.postMessage(t)}function d(){var t={msg:s.default.RECOVERED_EARLY_EOF};e.postMessage(t)}function h(t){var i={msg:s.default.MEDIA_INFO,data:t};e.postMessage(i)}function c(t){var i={msg:s.default.METADATA_ARRIVED,data:t};e.postMessage(i)}function f(t){var i={msg:s.default.SCRIPTDATA_ARRIVED,data:t};e.postMessage(i)}function p(t){var i={msg:s.default.STATISTICS_INFO,data:t};e.postMessage(i)}function m(t,i){e.postMessage({msg:s.default.IO_ERROR,data:{type:t,info:i}})}function g(t,i){e.postMessage({msg:s.default.DEMUX_ERROR,data:{type:t,info:i}})}function _(t){e.postMessage({msg:s.default.RECOMMEND_SEEKPOINT,data:t})}r.default.install(),e.addEventListener("message",(function(r){switch(r.data.cmd){case"init":(t=new a.default(r.data.param[0],r.data.param[1])).on(s.default.IO_ERROR,m.bind(this)),t.on(s.default.DEMUX_ERROR,g.bind(this)),t.on(s.default.INIT_SEGMENT,o.bind(this)),t.on(s.default.MEDIA_SEGMENT,u.bind(this)),t.on(s.default.LOADING_COMPLETE,l.bind(this)),t.on(s.default.RECOVERED_EARLY_EOF,d.bind(this)),t.on(s.default.MEDIA_INFO,h.bind(this)),t.on(s.default.METADATA_ARRIVED,c.bind(this)),t.on(s.default.SCRIPTDATA_ARRIVED,f.bind(this)),t.on(s.default.STATISTICS_INFO,p.bind(this)),t.on(s.default.RECOMMEND_SEEKPOINT,_.bind(this));break;case"destroy":t&&(t.destroy(),t=null),e.postMessage({msg:"destroyed"});break;case"start":t.start();break;case"stop":t.stop();break;case"seek":t.seek(r.data.param);break;case"pause":t.pause();break;case"resume":t.resume();break;case"logging_config":var v=r.data.param;n.default.applyConfig(v),!0===v.enableCallback?n.default.addLogListener(i):n.default.removeLogListener(i)}}))}},"./src/demux/amf-parser.js": -/*!*********************************!*\ - !*** ./src/demux/amf-parser.js ***! - \*********************************/function(e,t,i){"use strict";i.r(t);var n,r=i(/*! ../utils/logger.js */"./src/utils/logger.js"),a=i(/*! ../utils/utf8-conv.js */"./src/utils/utf8-conv.js"),s=i(/*! ../utils/exception.js */"./src/utils/exception.js"),o=(n=new ArrayBuffer(2),new DataView(n).setInt16(0,256,!0),256===new Int16Array(n)[0]),u=function(){function e(){}return e.parseScriptData=function(t,i,n){var a={};try{var s=e.parseValue(t,i,n),o=e.parseValue(t,i+s.size,n-s.size);a[s.data]=o.data}catch(e){r.default.e("AMF",e.toString())}return a},e.parseObject=function(t,i,n){if(n<3)throw new s.IllegalStateException("Data not enough when parse ScriptDataObject");var r=e.parseString(t,i,n),a=e.parseValue(t,i+r.size,n-r.size),o=a.objectEnd;return{data:{name:r.data,value:a.data},size:r.size+a.size,objectEnd:o}},e.parseVariable=function(t,i,n){return e.parseObject(t,i,n)},e.parseString=function(e,t,i){if(i<2)throw new s.IllegalStateException("Data not enough when parse String");var n=new DataView(e,t,i).getUint16(0,!o);return{data:n>0?(0,a.default)(new Uint8Array(e,t+2,n)):"",size:2+n}},e.parseLongString=function(e,t,i){if(i<4)throw new s.IllegalStateException("Data not enough when parse LongString");var n=new DataView(e,t,i).getUint32(0,!o);return{data:n>0?(0,a.default)(new Uint8Array(e,t+4,n)):"",size:4+n}},e.parseDate=function(e,t,i){if(i<10)throw new s.IllegalStateException("Data size invalid when parse Date");var n=new DataView(e,t,i),r=n.getFloat64(0,!o),a=n.getInt16(8,!o);return{data:new Date(r+=60*a*1e3),size:10}},e.parseValue=function(t,i,n){if(n<1)throw new s.IllegalStateException("Data not enough when parse Value");var a,u=new DataView(t,i,n),l=1,d=u.getUint8(0),h=!1;try{switch(d){case 0:a=u.getFloat64(1,!o),l+=8;break;case 1:a=!!u.getUint8(1),l+=1;break;case 2:var c=e.parseString(t,i+1,n-1);a=c.data,l+=c.size;break;case 3:a={};var f=0;for(9==(16777215&u.getUint32(n-4,!o))&&(f=3);l32)throw new n.InvalidArgumentException("ExpGolomb: readBits() bits exceeded max 32bits!");if(e<=this._current_word_bits_left){var t=this._current_word>>>32-e;return this._current_word<<=e,this._current_word_bits_left-=e,t}var i=this._current_word_bits_left?this._current_word:0;i>>>=32-this._current_word_bits_left;var r=e-this._current_word_bits_left;this._fillCurrentWord();var a=Math.min(r,this._current_word_bits_left),s=this._current_word>>>32-a;return this._current_word<<=a,this._current_word_bits_left-=a,i=i<>>e))return this._current_word<<=e,this._current_word_bits_left-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()},e.prototype.readUEG=function(){var e=this._skipLeadingZero();return this.readBits(e+1)-1},e.prototype.readSEG=function(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)},e}();t.default=r},"./src/demux/flv-demuxer.js": -/*!**********************************!*\ - !*** ./src/demux/flv-demuxer.js ***! - \**********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ../utils/logger.js */"./src/utils/logger.js"),r=i(/*! ./amf-parser.js */"./src/demux/amf-parser.js"),a=i(/*! ./sps-parser.js */"./src/demux/sps-parser.js"),s=i(/*! ./demux-errors.js */"./src/demux/demux-errors.js"),o=i(/*! ../core/media-info.js */"./src/core/media-info.js"),u=i(/*! ../utils/exception.js */"./src/utils/exception.js"),l=function(){function e(e,t){var i;this.TAG="FLVDemuxer",this._config=t,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=e.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=e.hasAudioTrack,this._hasVideo=e.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new o.default,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=(i=new ArrayBuffer(2),new DataView(i).setInt16(0,256,!0),256===new Int16Array(i)[0])}return e.prototype.destroy=function(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null},e.probe=function(e){var t=new Uint8Array(e),i={match:!1};if(70!==t[0]||76!==t[1]||86!==t[2]||1!==t[3])return i;var n,r,a=(4&t[4])>>>2!=0,s=0!=(1&t[4]),o=(n=t)[r=5]<<24|n[r+1]<<16|n[r+2]<<8|n[r+3];return o<9?i:{match:!0,consumed:o,dataOffset:o,hasAudioTrack:a,hasVideoTrack:s}},e.prototype.bindDataSource=function(e){return e.onDataArrival=this.parseChunks.bind(this),this},Object.defineProperty(e.prototype,"onTrackMetadata",{get:function(){return this._onTrackMetadata},set:function(e){this._onTrackMetadata=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onMediaInfo",{get:function(){return this._onMediaInfo},set:function(e){this._onMediaInfo=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onMetaDataArrived",{get:function(){return this._onMetaDataArrived},set:function(e){this._onMetaDataArrived=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScriptDataArrived",{get:function(){return this._onScriptDataArrived},set:function(e){this._onScriptDataArrived=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onError",{get:function(){return this._onError},set:function(e){this._onError=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onDataAvailable",{get:function(){return this._onDataAvailable},set:function(e){this._onDataAvailable=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"timestampBase",{get:function(){return this._timestampBase},set:function(e){this._timestampBase=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"overridedDuration",{get:function(){return this._duration},set:function(e){this._durationOverrided=!0,this._duration=e,this._mediaInfo.duration=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"overridedHasAudio",{set:function(e){this._hasAudioFlagOverrided=!0,this._hasAudio=e,this._mediaInfo.hasAudio=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"overridedHasVideo",{set:function(e){this._hasVideoFlagOverrided=!0,this._hasVideo=e,this._mediaInfo.hasVideo=e},enumerable:!1,configurable:!0}),e.prototype.resetMediaInfo=function(){this._mediaInfo=new o.default},e.prototype._isInitialMetadataDispatched=function(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!(this._hasAudio||!this._hasVideo)&&this._videoInitialMetadataDispatched},e.prototype.parseChunks=function(t,i){if(!(this._onError&&this._onMediaInfo&&this._onTrackMetadata&&this._onDataAvailable))throw new u.IllegalStateException("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");var r=0,a=this._littleEndian;if(0===i){if(!(t.byteLength>13))return 0;r=e.probe(t).dataOffset}for(this._firstParse&&(this._firstParse=!1,i+r!==this._dataOffset&&n.default.w(this.TAG,"First time parsing but chunk byteStart invalid!"),0!==(s=new DataView(t,r)).getUint32(0,!a)&&n.default.w(this.TAG,"PrevTagSize0 !== 0 !!!"),r+=4);rt.byteLength)break;var o=s.getUint8(0),l=16777215&s.getUint32(0,!a);if(r+11+l+4>t.byteLength)break;if(8===o||9===o||18===o){var d=s.getUint8(4),h=s.getUint8(5),c=s.getUint8(6)|h<<8|d<<16|s.getUint8(7)<<24;0!=(16777215&s.getUint32(7,!a))&&n.default.w(this.TAG,"Meet tag which has StreamID != 0!");var f=r+11;switch(o){case 8:this._parseAudioData(t,f,l,c);break;case 9:this._parseVideoData(t,f,l,c,i+r);break;case 18:this._parseScriptData(t,f,l)}var p=s.getUint32(11+l,!a);p!==11+l&&n.default.w(this.TAG,"Invalid PrevTagSize "+p),r+=11+l+4}else n.default.w(this.TAG,"Unsupported tag type "+o+", skipped"),r+=11+l+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),r},e.prototype._parseScriptData=function(e,t,i){var a=r.default.parseScriptData(e,t,i);if(a.hasOwnProperty("onMetaData")){if(null==a.onMetaData||"object"!=typeof a.onMetaData)return void n.default.w(this.TAG,"Invalid onMetaData structure!");this._metadata&&n.default.w(this.TAG,"Found another onMetaData tag!"),this._metadata=a;var s=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},s)),"boolean"==typeof s.hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=s.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),"boolean"==typeof s.hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=s.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),"number"==typeof s.audiodatarate&&(this._mediaInfo.audioDataRate=s.audiodatarate),"number"==typeof s.videodatarate&&(this._mediaInfo.videoDataRate=s.videodatarate),"number"==typeof s.width&&(this._mediaInfo.width=s.width),"number"==typeof s.height&&(this._mediaInfo.height=s.height),"number"==typeof s.duration){if(!this._durationOverrided){var o=Math.floor(s.duration*this._timescale);this._duration=o,this._mediaInfo.duration=o}}else this._mediaInfo.duration=0;if("number"==typeof s.framerate){var u=Math.floor(1e3*s.framerate);if(u>0){var l=u/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=l,this._referenceFrameRate.fps_num=u,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=l}}if("object"==typeof s.keyframes){this._mediaInfo.hasKeyframesIndex=!0;var d=s.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(d),s.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=s,n.default.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(a).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},a))},e.prototype._parseKeyframesIndex=function(e){for(var t=[],i=[],n=1;n>>4;if(2===o||10===o){var u=0,l=(12&a)>>>2;if(l>=0&&l<=4){u=this._flvSoundRateTable[l];var d=1&a,h=this._audioMetadata,c=this._audioTrack;if(h||(!1===this._hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),(h=this._audioMetadata={}).type="audio",h.id=c.id,h.timescale=this._timescale,h.duration=this._duration,h.audioSampleRate=u,h.channelCount=0===d?1:2),10===o){var f=this._parseAACAudioData(e,t+1,i-1);if(null==f)return;if(0===f.packetType){h.config&&n.default.w(this.TAG,"Found another AudioSpecificConfig!");var p=f.data;h.audioSampleRate=p.samplingRate,h.channelCount=p.channelCount,h.codec=p.codec,h.originalCodec=p.originalCodec,h.config=p.config,h.refSampleDuration=1024/h.audioSampleRate*h.timescale,n.default.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",h),(_=this._mediaInfo).audioCodec=h.originalCodec,_.audioSampleRate=h.audioSampleRate,_.audioChannelCount=h.channelCount,_.hasVideo?null!=_.videoCodec&&(_.mimeType='video/x-flv; codecs="'+_.videoCodec+","+_.audioCodec+'"'):_.mimeType='video/x-flv; codecs="'+_.audioCodec+'"',_.isComplete()&&this._onMediaInfo(_)}else if(1===f.packetType){var m=this._timestampBase+r,g={unit:f.data,length:f.data.byteLength,dts:m,pts:m};c.samples.push(g),c.length+=f.data.length}else n.default.e(this.TAG,"Flv: Unsupported AAC data type "+f.packetType)}else if(2===o){if(!h.codec){var _;if(null==(p=this._parseMP3AudioData(e,t+1,i-1,!0)))return;h.audioSampleRate=p.samplingRate,h.channelCount=p.channelCount,h.codec=p.codec,h.originalCodec=p.originalCodec,h.refSampleDuration=1152/h.audioSampleRate*h.timescale,n.default.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",h),(_=this._mediaInfo).audioCodec=h.codec,_.audioSampleRate=h.audioSampleRate,_.audioChannelCount=h.channelCount,_.audioDataRate=p.bitRate,_.hasVideo?null!=_.videoCodec&&(_.mimeType='video/x-flv; codecs="'+_.videoCodec+","+_.audioCodec+'"'):_.mimeType='video/x-flv; codecs="'+_.audioCodec+'"',_.isComplete()&&this._onMediaInfo(_)}var v=this._parseMP3AudioData(e,t+1,i-1,!1);if(null==v)return;m=this._timestampBase+r;var y={unit:v,length:v.byteLength,dts:m,pts:m};c.samples.push(y),c.length+=v.length}}else this._onError(s.default.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+l)}else this._onError(s.default.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+o)}},e.prototype._parseAACAudioData=function(e,t,i){if(!(i<=1)){var r={},a=new Uint8Array(e,t,i);return r.packetType=a[0],0===a[0]?r.data=this._parseAACAudioSpecificConfig(e,t+1,i-1):r.data=a.subarray(1),r}n.default.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!")},e.prototype._parseAACAudioSpecificConfig=function(e,t,i){var n,r,a=new Uint8Array(e,t,i),o=null,u=0,l=null;if(u=n=a[0]>>>3,(r=(7&a[0])<<1|a[1]>>>7)<0||r>=this._mpegSamplingRates.length)this._onError(s.default.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");else{var d=this._mpegSamplingRates[r],h=(120&a[1])>>>3;if(!(h<0||h>=8)){5===u&&(l=(7&a[1])<<1|a[2]>>>7,a[2]);var c=self.navigator.userAgent.toLowerCase();return-1!==c.indexOf("firefox")?r>=6?(u=5,o=new Array(4),l=r-3):(u=2,o=new Array(2),l=r):-1!==c.indexOf("android")?(u=2,o=new Array(2),l=r):(u=5,l=r,o=new Array(4),r>=6?l=r-3:1===h&&(u=2,o=new Array(2),l=r)),o[0]=u<<3,o[0]|=(15&r)>>>1,o[1]=(15&r)<<7,o[1]|=(15&h)<<3,5===u&&(o[1]|=(15&l)>>>1,o[2]=(1&l)<<7,o[2]|=8,o[3]=0),{config:o,samplingRate:d,channelCount:h,codec:"mp4a.40."+u,originalCodec:"mp4a.40."+n}}this._onError(s.default.FORMAT_ERROR,"Flv: AAC invalid channel configuration")}},e.prototype._parseMP3AudioData=function(e,t,i,r){if(!(i<4)){this._littleEndian;var a=new Uint8Array(e,t,i),s=null;if(r){if(255!==a[0])return;var o=a[1]>>>3&3,u=(6&a[1])>>1,l=(240&a[2])>>>4,d=(12&a[2])>>>2,h=3!=(a[3]>>>6&3)?2:1,c=0,f=0;switch(o){case 0:c=this._mpegAudioV25SampleRateTable[d];break;case 2:c=this._mpegAudioV20SampleRateTable[d];break;case 3:c=this._mpegAudioV10SampleRateTable[d]}switch(u){case 1:l>>4,l=15&o;7===l?this._parseAVCVideoPacket(e,t+1,i-1,r,a,u):this._onError(s.default.CODEC_UNSUPPORTED,"Flv: Unsupported codec in video frame: "+l)}},e.prototype._parseAVCVideoPacket=function(e,t,i,r,a,o){if(i<4)n.default.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");else{var u=this._littleEndian,l=new DataView(e,t,i),d=l.getUint8(0),h=(16777215&l.getUint32(0,!u))<<8>>8;if(0===d)this._parseAVCDecoderConfigurationRecord(e,t+4,i-4);else if(1===d)this._parseAVCVideoData(e,t+4,i-4,r,a,o,h);else if(2!==d)return void this._onError(s.default.FORMAT_ERROR,"Flv: Invalid video packet type "+d)}},e.prototype._parseAVCDecoderConfigurationRecord=function(e,t,i){if(i<7)n.default.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");else{var r=this._videoMetadata,o=this._videoTrack,u=this._littleEndian,l=new DataView(e,t,i);r?void 0!==r.avcc&&n.default.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(!1===this._hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),(r=this._videoMetadata={}).type="video",r.id=o.id,r.timescale=this._timescale,r.duration=this._duration);var d=l.getUint8(0),h=l.getUint8(1);if(l.getUint8(2),l.getUint8(3),1===d&&0!==h)if(this._naluLengthSize=1+(3&l.getUint8(4)),3===this._naluLengthSize||4===this._naluLengthSize){var c=31&l.getUint8(5);if(0!==c){c>1&&n.default.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: SPS Count = "+c);for(var f=6,p=0;p1&&n.default.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: PPS Count = "+C),f++,p=0;p=i){n.default.w(this.TAG,"Malformed Nalu near timestamp "+p+", offset = "+c+", dataSize = "+i);break}var g=l.getUint32(c,!u);if(3===f&&(g>>>=8),g>i-f)return void n.default.w(this.TAG,"Malformed Nalus near timestamp "+p+", NaluSize > DataSize!");var _=31&l.getUint8(c+f);5===_&&(m=!0);var v=new Uint8Array(e,t+c,f+g),y={type:_,data:v};d.push(y),h+=v.byteLength,c+=f+g}if(d.length){var b=this._videoTrack,T={units:d,length:h,isKeyframe:m,dts:p,cts:o,pts:p+o};m&&(T.fileposition=a),b.samples.push(T),b.length+=h}},e}();t.default=l},"./src/demux/sps-parser.js": -/*!*********************************!*\ - !*** ./src/demux/sps-parser.js ***! - \*********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ./exp-golomb.js */"./src/demux/exp-golomb.js"),r=function(){function e(){}return e._ebsp2rbsp=function(e){for(var t=e,i=t.byteLength,n=new Uint8Array(i),r=0,a=0;a=2&&3===t[a]&&0===t[a-1]&&0===t[a-2]||(n[r]=t[a],r++);return new Uint8Array(n.buffer,0,r)},e.parseSPS=function(t){var i=e._ebsp2rbsp(t),r=new n.default(i);r.readByte();var a=r.readByte();r.readByte();var s=r.readByte();r.readUEG();var o=e.getProfileString(a),u=e.getLevelString(s),l=1,d=420,h=8;if((100===a||110===a||122===a||244===a||44===a||83===a||86===a||118===a||128===a||138===a||144===a)&&(3===(l=r.readUEG())&&r.readBits(1),l<=3&&(d=[0,420,422,444][l]),h=r.readUEG()+8,r.readUEG(),r.readBits(1),r.readBool()))for(var c=3!==l?8:12,f=0;f0&&P<16?(w=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][P-1],C=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][P-1]):255===P&&(w=r.readByte()<<8|r.readByte(),C=r.readByte()<<8|r.readByte())}if(r.readBool()&&r.readBool(),r.readBool()&&(r.readBits(4),r.readBool()&&r.readBits(24)),r.readBool()&&(r.readUEG(),r.readUEG()),r.readBool()){var L=r.readBits(32),D=r.readBits(32);k=r.readBool(),A=(I=D)/(x=2*L)}}var R=1;1===w&&1===C||(R=w/C);var U=0,O=0;0===l?(U=1,O=2-y):(U=3===l?1:2,O=(1===l?2:1)*(2-y));var M=16*(_+1),F=16*(v+1)*(2-y);M-=(b+T)*U,F-=(S+E)*O;var B=Math.ceil(M*R);return r.destroy(),r=null,{profile_string:o,level_string:u,bit_depth:h,ref_frames:g,chroma_format:d,chroma_format_string:e.getChromaFormatString(d),frame_rate:{fixed:k,fps:A,fps_den:x,fps_num:I},sar_ratio:{width:w,height:C},codec_size:{width:M,height:F},present_size:{width:B,height:F}}},e._skipScalingList=function(e,t){for(var i=8,n=8,r=0;r=15048,t=!r.default.msedge||e;return self.fetch&&self.ReadableStream&&t}catch(e){return!1}},t.prototype.destroy=function(){this.isWorking()&&this.abort(),e.prototype.destroy.call(this)},t.prototype.open=function(e,t){var i=this;this._dataSource=e,this._range=t;var n=e.url;this._config.reuseRedirectedURL&&null!=e.redirectedURL&&(n=e.redirectedURL);var r=this._seekHandler.getConfig(n,t),o=new self.Headers;if("object"==typeof r.headers){var u=r.headers;for(var l in u)u.hasOwnProperty(l)&&o.append(l,u[l])}var d={method:"GET",headers:o,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if("object"==typeof this._config.headers)for(var l in this._config.headers)o.append(l,this._config.headers[l]);!1===e.cors&&(d.mode="same-origin"),e.withCredentials&&(d.credentials="include"),e.referrerPolicy&&(d.referrerPolicy=e.referrerPolicy),self.AbortController&&(this._abortController=new self.AbortController,d.signal=this._abortController.signal),this._status=a.LoaderStatus.kConnecting,self.fetch(r.url,d).then((function(e){if(i._requestAbort)return i._status=a.LoaderStatus.kIdle,void e.body.cancel();if(e.ok&&e.status>=200&&e.status<=299){if(e.url!==r.url&&i._onURLRedirect){var t=i._seekHandler.removeURLParameters(e.url);i._onURLRedirect(t)}var n=e.headers.get("Content-Length");return null!=n&&(i._contentLength=parseInt(n),0!==i._contentLength&&i._onContentLengthKnown&&i._onContentLengthKnown(i._contentLength)),i._pump.call(i,e.body.getReader())}if(i._status=a.LoaderStatus.kError,!i._onError)throw new s.RuntimeException("FetchStreamLoader: Http code invalid, "+e.status+" "+e.statusText);i._onError(a.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:e.status,msg:e.statusText})})).catch((function(e){if(!i._abortController||!i._abortController.signal.aborted){if(i._status=a.LoaderStatus.kError,!i._onError)throw e;i._onError(a.LoaderErrors.EXCEPTION,{code:-1,msg:e.message})}}))},t.prototype.abort=function(){if(this._requestAbort=!0,(this._status!==a.LoaderStatus.kBuffering||!r.default.chrome)&&this._abortController)try{this._abortController.abort()}catch(e){}},t.prototype._pump=function(e){var t=this;return e.read().then((function(i){if(i.done)if(null!==t._contentLength&&t._receivedLength0&&(this._stashInitialSize=t.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=3145728,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,!1===t.enableStashBuffer&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=e,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(e.url),this._refTotalLength=e.filesize?e.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new r.default,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}return e.prototype.destroy=function(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null},e.prototype.isWorking=function(){return this._loader&&this._loader.isWorking()&&!this._paused},e.prototype.isPaused=function(){return this._paused},Object.defineProperty(e.prototype,"status",{get:function(){return this._loader.status},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"extraData",{get:function(){return this._extraData},set:function(e){this._extraData=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onDataArrival",{get:function(){return this._onDataArrival},set:function(e){this._onDataArrival=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSeeked",{get:function(){return this._onSeeked},set:function(e){this._onSeeked=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onError",{get:function(){return this._onError},set:function(e){this._onError=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onComplete",{get:function(){return this._onComplete},set:function(e){this._onComplete=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRedirect",{get:function(){return this._onRedirect},set:function(e){this._onRedirect=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRecoveredEarlyEof",{get:function(){return this._onRecoveredEarlyEof},set:function(e){this._onRecoveredEarlyEof=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentURL",{get:function(){return this._dataSource.url},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasRedirect",{get:function(){return null!=this._redirectedURL||null!=this._dataSource.redirectedURL},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentRedirectedURL",{get:function(){return this._redirectedURL||this._dataSource.redirectedURL},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentSpeed",{get:function(){return this._loaderClass===u.default?this._loader.currentSpeed:this._speedSampler.lastSecondKBps},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"loaderType",{get:function(){return this._loader.type},enumerable:!1,configurable:!0}),e.prototype._selectSeekHandler=function(){var e=this._config;if("range"===e.seekType)this._seekHandler=new d.default(this._config.rangeLoadZeroStart);else if("param"===e.seekType){var t=e.seekParamStart||"bstart",i=e.seekParamEnd||"bend";this._seekHandler=new h.default(t,i)}else{if("custom"!==e.seekType)throw new c.InvalidArgumentException("Invalid seekType in config: "+e.seekType);if("function"!=typeof e.customSeekHandler)throw new c.InvalidArgumentException("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new e.customSeekHandler}},e.prototype._selectLoader=function(){if(null!=this._config.customLoader)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=l.default;else if(s.default.isSupported())this._loaderClass=s.default;else if(o.default.isSupported())this._loaderClass=o.default;else{if(!u.default.isSupported())throw new c.RuntimeException("Your browser doesn't support xhr with arraybuffer responseType!");this._loaderClass=u.default}},e.prototype._createLoader=function(){this._loader=new this._loaderClass(this._seekHandler,this._config),!1===this._loader.needStashBuffer&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)},e.prototype.open=function(e){this._currentRange={from:0,to:-1},e&&(this._currentRange.from=e),this._speedSampler.reset(),e||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))},e.prototype.abort=function(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)},e.prototype.pause=function(){this.isWorking()&&(this._loader.abort(),0!==this._stashUsed?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)},e.prototype.resume=function(){if(this._paused){this._paused=!1;var e=this._resumeFrom;this._resumeFrom=0,this._internalSeek(e,!0)}},e.prototype.seek=function(e){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(e,!0)},e.prototype._internalSeek=function(e,t){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(t),this._loader.destroy(),this._loader=null;var i={from:e,to:-1};this._currentRange={from:i.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,i),this._onSeeked&&this._onSeeked()},e.prototype.updateUrl=function(e){if(!e||"string"!=typeof e||0===e.length)throw new c.InvalidArgumentException("Url must be a non-empty string!");this._dataSource.url=e},e.prototype._expandBuffer=function(e){for(var t=this._stashSize;t+10485760){var n=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(i,0,t).set(n,0)}this._stashBuffer=i,this._bufferSize=t}},e.prototype._normalizeSpeed=function(e){var t=this._speedNormalizeList,i=t.length-1,n=0,r=0,a=i;if(e=t[n]&&e=512&&e<=1024?Math.floor(1.5*e):2*e)>8192&&(t=8192);var i=1024*t+1048576;this._bufferSize0){var a=this._stashBuffer.slice(0,this._stashUsed);(u=this._dispatchChunks(a,this._stashByteStart))0&&(l=new Uint8Array(a,u),o.set(l,0),this._stashUsed=l.byteLength,this._stashByteStart+=u):(this._stashUsed=0,this._stashByteStart+=u),this._stashUsed+e.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+e.byteLength),o=new Uint8Array(this._stashBuffer,0,this._bufferSize)),o.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength}else(u=this._dispatchChunks(e,t))this._bufferSize&&(this._expandBuffer(s),o=new Uint8Array(this._stashBuffer,0,this._bufferSize)),o.set(new Uint8Array(e,u),0),this._stashUsed+=s,this._stashByteStart=t+u);else if(0===this._stashUsed){var s;(u=this._dispatchChunks(e,t))this._bufferSize&&this._expandBuffer(s),(o=new Uint8Array(this._stashBuffer,0,this._bufferSize)).set(new Uint8Array(e,u),0),this._stashUsed+=s,this._stashByteStart=t+u)}else{var o,u;if(this._stashUsed+e.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+e.byteLength),(o=new Uint8Array(this._stashBuffer,0,this._bufferSize)).set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength,(u=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart))0){var l=new Uint8Array(this._stashBuffer,u);o.set(l,0)}this._stashUsed-=u,this._stashByteStart+=u}}},e.prototype._flushStashBuffer=function(e){if(this._stashUsed>0){var t=this._stashBuffer.slice(0,this._stashUsed),i=this._dispatchChunks(t,this._stashByteStart),r=t.byteLength-i;if(i0){var a=new Uint8Array(this._stashBuffer,0,this._bufferSize),s=new Uint8Array(t,i);a.set(s,0),this._stashUsed=s.byteLength,this._stashByteStart+=i}return 0}n.default.w(this.TAG,r+" bytes unconsumed data remain when flush buffer, dropped")}return this._stashUsed=0,this._stashByteStart=0,r}return 0},e.prototype._onLoaderComplete=function(e,t){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)},e.prototype._onLoaderError=function(e,t){switch(n.default.e(this.TAG,"Loader error, code = "+t.code+", msg = "+t.msg),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,e=a.LoaderErrors.UNRECOVERABLE_EARLY_EOF),e){case a.LoaderErrors.EARLY_EOF:if(!this._config.isLive&&this._totalLength){var i=this._currentRange.to+1;return void(i0)for(var a=i.split("&"),s=0;s0;o[0]!==this._startName&&o[0]!==this._endName&&(u&&(r+="&"),r+=a[s])}return 0===r.length?t:t+"?"+r},e}();t.default=n},"./src/io/range-seek-handler.js": -/*!**************************************!*\ - !*** ./src/io/range-seek-handler.js ***! - \**************************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(e){this._zeroStart=e||!1}return e.prototype.getConfig=function(e,t){var i={};if(0!==t.from||-1!==t.to){var n=void 0;n=-1!==t.to?"bytes="+t.from.toString()+"-"+t.to.toString():"bytes="+t.from.toString()+"-",i.Range=n}else this._zeroStart&&(i.Range="bytes=0-");return{url:e,headers:i}},e.prototype.removeURLParameters=function(e){return e},e}();t.default=n},"./src/io/speed-sampler.js": -/*!*********************************!*\ - !*** ./src/io/speed-sampler.js ***! - \*********************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}return e.prototype.reset=function(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0},e.prototype.addBytes=function(e){0===this._firstCheckpoint?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=e,this._totalBytes+=e):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=e,this._totalBytes+=e):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=e,this._totalBytes+=e,this._lastCheckpoint=this._now())},Object.defineProperty(e.prototype,"currentKBps",{get:function(){this.addBytes(0);var e=(this._now()-this._lastCheckpoint)/1e3;return 0==e&&(e=1),this._intervalBytes/e/1024},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lastSecondKBps",{get:function(){return this.addBytes(0),0!==this._lastSecondBytes?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"averageKBps",{get:function(){var e=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/e/1024},enumerable:!1,configurable:!0}),e}();t.default=n},"./src/io/websocket-loader.js": -/*!************************************!*\ - !*** ./src/io/websocket-loader.js ***! - \************************************/function(e,t,i){"use strict";i.r(t);var n,r=i(/*! ./loader.js */"./src/io/loader.js"),a=i(/*! ../utils/exception.js */"./src/utils/exception.js"),s=(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),o=function(e){function t(){var t=e.call(this,"websocket-loader")||this;return t.TAG="WebSocketLoader",t._needStash=!0,t._ws=null,t._requestAbort=!1,t._receivedLength=0,t}return s(t,e),t.isSupported=function(){try{return void 0!==self.WebSocket}catch(e){return!1}},t.prototype.destroy=function(){this._ws&&this.abort(),e.prototype.destroy.call(this)},t.prototype.open=function(e){try{var t=this._ws=new self.WebSocket(e.url);t.binaryType="arraybuffer",t.onopen=this._onWebSocketOpen.bind(this),t.onclose=this._onWebSocketClose.bind(this),t.onmessage=this._onWebSocketMessage.bind(this),t.onerror=this._onWebSocketError.bind(this),this._status=r.LoaderStatus.kConnecting}catch(e){this._status=r.LoaderStatus.kError;var i={code:e.code,msg:e.message};if(!this._onError)throw new a.RuntimeException(i.msg);this._onError(r.LoaderErrors.EXCEPTION,i)}},t.prototype.abort=function(){var e=this._ws;!e||0!==e.readyState&&1!==e.readyState||(this._requestAbort=!0,e.close()),this._ws=null,this._status=r.LoaderStatus.kComplete},t.prototype._onWebSocketOpen=function(e){this._status=r.LoaderStatus.kBuffering},t.prototype._onWebSocketClose=function(e){!0!==this._requestAbort?(this._status=r.LoaderStatus.kComplete,this._onComplete&&this._onComplete(0,this._receivedLength-1)):this._requestAbort=!1},t.prototype._onWebSocketMessage=function(e){var t=this;if(e.data instanceof ArrayBuffer)this._dispatchArrayBuffer(e.data);else if(e.data instanceof Blob){var i=new FileReader;i.onload=function(){t._dispatchArrayBuffer(i.result)},i.readAsArrayBuffer(e.data)}else{this._status=r.LoaderStatus.kError;var n={code:-1,msg:"Unsupported WebSocket message type: "+e.data.constructor.name};if(!this._onError)throw new a.RuntimeException(n.msg);this._onError(r.LoaderErrors.EXCEPTION,n)}},t.prototype._dispatchArrayBuffer=function(e){var t=e,i=this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,i,this._receivedLength)},t.prototype._onWebSocketError=function(e){this._status=r.LoaderStatus.kError;var t={code:e.code,msg:e.message};if(!this._onError)throw new a.RuntimeException(t.msg);this._onError(r.LoaderErrors.EXCEPTION,t)},t}(r.BaseLoader);t.default=o},"./src/io/xhr-moz-chunked-loader.js": -/*!******************************************!*\ - !*** ./src/io/xhr-moz-chunked-loader.js ***! - \******************************************/function(e,t,i){"use strict";i.r(t);var n,r=i(/*! ../utils/logger.js */"./src/utils/logger.js"),a=i(/*! ./loader.js */"./src/io/loader.js"),s=i(/*! ../utils/exception.js */"./src/utils/exception.js"),o=(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),u=function(e){function t(t,i){var n=e.call(this,"xhr-moz-chunked-loader")||this;return n.TAG="MozChunkedLoader",n._seekHandler=t,n._config=i,n._needStash=!0,n._xhr=null,n._requestAbort=!1,n._contentLength=null,n._receivedLength=0,n}return o(t,e),t.isSupported=function(){try{var e=new XMLHttpRequest;return e.open("GET","https://example.com",!0),e.responseType="moz-chunked-arraybuffer","moz-chunked-arraybuffer"===e.responseType}catch(e){return r.default.w("MozChunkedLoader",e.message),!1}},t.prototype.destroy=function(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onloadend=null,this._xhr.onerror=null,this._xhr=null),e.prototype.destroy.call(this)},t.prototype.open=function(e,t){this._dataSource=e,this._range=t;var i=e.url;this._config.reuseRedirectedURL&&null!=e.redirectedURL&&(i=e.redirectedURL);var n=this._seekHandler.getConfig(i,t);this._requestURL=n.url;var r=this._xhr=new XMLHttpRequest;if(r.open("GET",n.url,!0),r.responseType="moz-chunked-arraybuffer",r.onreadystatechange=this._onReadyStateChange.bind(this),r.onprogress=this._onProgress.bind(this),r.onloadend=this._onLoadEnd.bind(this),r.onerror=this._onXhrError.bind(this),e.withCredentials&&(r.withCredentials=!0),"object"==typeof n.headers){var s=n.headers;for(var o in s)s.hasOwnProperty(o)&&r.setRequestHeader(o,s[o])}if("object"==typeof this._config.headers)for(var o in s=this._config.headers)s.hasOwnProperty(o)&&r.setRequestHeader(o,s[o]);this._status=a.LoaderStatus.kConnecting,r.send()},t.prototype.abort=function(){this._requestAbort=!0,this._xhr&&this._xhr.abort(),this._status=a.LoaderStatus.kComplete},t.prototype._onReadyStateChange=function(e){var t=e.target;if(2===t.readyState){if(null!=t.responseURL&&t.responseURL!==this._requestURL&&this._onURLRedirect){var i=this._seekHandler.removeURLParameters(t.responseURL);this._onURLRedirect(i)}if(0!==t.status&&(t.status<200||t.status>299)){if(this._status=a.LoaderStatus.kError,!this._onError)throw new s.RuntimeException("MozChunkedLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(a.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}else this._status=a.LoaderStatus.kBuffering}},t.prototype._onProgress=function(e){if(this._status!==a.LoaderStatus.kError){null===this._contentLength&&null!==e.total&&0!==e.total&&(this._contentLength=e.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));var t=e.target.response,i=this._range.from+this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,i,this._receivedLength)}},t.prototype._onLoadEnd=function(e){!0!==this._requestAbort?this._status!==a.LoaderStatus.kError&&(this._status=a.LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)):this._requestAbort=!1},t.prototype._onXhrError=function(e){this._status=a.LoaderStatus.kError;var t=0,i=null;if(this._contentLength&&e.loaded=this._contentLength&&(i=this._range.from+this._contentLength-1),this._currentRequestRange={from:t,to:i},this._internalOpen(this._dataSource,this._currentRequestRange)},t.prototype._internalOpen=function(e,t){this._lastTimeLoaded=0;var i=e.url;this._config.reuseRedirectedURL&&(null!=this._currentRedirectedURL?i=this._currentRedirectedURL:null!=e.redirectedURL&&(i=e.redirectedURL));var n=this._seekHandler.getConfig(i,t);this._currentRequestURL=n.url;var r=this._xhr=new XMLHttpRequest;if(r.open("GET",n.url,!0),r.responseType="arraybuffer",r.onreadystatechange=this._onReadyStateChange.bind(this),r.onprogress=this._onProgress.bind(this),r.onload=this._onLoad.bind(this),r.onerror=this._onXhrError.bind(this),e.withCredentials&&(r.withCredentials=!0),"object"==typeof n.headers){var a=n.headers;for(var s in a)a.hasOwnProperty(s)&&r.setRequestHeader(s,a[s])}if("object"==typeof this._config.headers)for(var s in a=this._config.headers)a.hasOwnProperty(s)&&r.setRequestHeader(s,a[s]);r.send()},t.prototype.abort=function(){this._requestAbort=!0,this._internalAbort(),this._status=s.LoaderStatus.kComplete},t.prototype._internalAbort=function(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)},t.prototype._onReadyStateChange=function(e){var t=e.target;if(2===t.readyState){if(null!=t.responseURL){var i=this._seekHandler.removeURLParameters(t.responseURL);t.responseURL!==this._currentRequestURL&&i!==this._currentRedirectedURL&&(this._currentRedirectedURL=i,this._onURLRedirect&&this._onURLRedirect(i))}if(t.status>=200&&t.status<=299){if(this._waitForTotalLength)return;this._status=s.LoaderStatus.kBuffering}else{if(this._status=s.LoaderStatus.kError,!this._onError)throw new o.RuntimeException("RangeLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(s.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}}},t.prototype._onProgress=function(e){if(this._status!==s.LoaderStatus.kError){if(null===this._contentLength){var t=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,t=!0;var i=e.total;this._internalAbort(),null!=i&0!==i&&(this._totalLength=i)}if(-1===this._range.to?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,t)return void this._openSubRange();this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}var n=e.loaded-this._lastTimeLoaded;this._lastTimeLoaded=e.loaded,this._speedSampler.addBytes(n)}},t.prototype._normalizeSpeed=function(e){var t=this._chunkSizeKBList,i=t.length-1,n=0,r=0,a=i;if(e=t[n]&&e=3&&(t=this._speedSampler.currentKBps)),0!==t){var i=this._normalizeSpeed(t);this._currentSpeedNormalized!==i&&(this._currentSpeedNormalized=i,this._currentChunkSizeKB=i)}var n=e.target.response,r=this._range.from+this._receivedLength;this._receivedLength+=n.byteLength;var a=!1;null!=this._contentLength&&this._receivedLength0&&this._receivedLength0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new u.default(this._mediaDataSource,this._config),this._transmuxer.on(l.default.INIT_SEGMENT,(function(t,i){e._msectl.appendInitSegment(i)})),this._transmuxer.on(l.default.MEDIA_SEGMENT,(function(t,i){if(e._msectl.appendMediaSegment(i),e._config.lazyLoad&&!e._config.isLive){var n=e._mediaElement.currentTime;i.info.endDts>=1e3*(n+e._config.lazyLoadMaxDuration)&&null==e._progressChecker&&(a.default.v(e.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),e._suspendTransmuxer())}})),this._transmuxer.on(l.default.LOADING_COMPLETE,(function(){e._msectl.endOfStream(),e._emitter.emit(o.default.LOADING_COMPLETE)})),this._transmuxer.on(l.default.RECOVERED_EARLY_EOF,(function(){e._emitter.emit(o.default.RECOVERED_EARLY_EOF)})),this._transmuxer.on(l.default.IO_ERROR,(function(t,i){e._emitter.emit(o.default.ERROR,c.ErrorTypes.NETWORK_ERROR,t,i)})),this._transmuxer.on(l.default.DEMUX_ERROR,(function(t,i){e._emitter.emit(o.default.ERROR,c.ErrorTypes.MEDIA_ERROR,t,{code:-1,msg:i})})),this._transmuxer.on(l.default.MEDIA_INFO,(function(t){e._mediaInfo=t,e._emitter.emit(o.default.MEDIA_INFO,Object.assign({},t))})),this._transmuxer.on(l.default.METADATA_ARRIVED,(function(t){e._emitter.emit(o.default.METADATA_ARRIVED,t)})),this._transmuxer.on(l.default.SCRIPTDATA_ARRIVED,(function(t){e._emitter.emit(o.default.SCRIPTDATA_ARRIVED,t)})),this._transmuxer.on(l.default.STATISTICS_INFO,(function(t){e._statisticsInfo=e._fillStatisticsInfo(t),e._emitter.emit(o.default.STATISTICS_INFO,Object.assign({},e._statisticsInfo))})),this._transmuxer.on(l.default.RECOMMEND_SEEKPOINT,(function(t){e._mediaElement&&!e._config.accurateSeek&&(e._requestSetTime=!0,e._mediaElement.currentTime=t/1e3)})),this._transmuxer.open()))},e.prototype.unload=function(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)},e.prototype.play=function(){return this._mediaElement.play()},e.prototype.pause=function(){this._mediaElement.pause()},Object.defineProperty(e.prototype,"type",{get:function(){return this._type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffered",{get:function(){return this._mediaElement.buffered},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"duration",{get:function(){return this._mediaElement.duration},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"volume",{get:function(){return this._mediaElement.volume},set:function(e){this._mediaElement.volume=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"muted",{get:function(){return this._mediaElement.muted},set:function(e){this._mediaElement.muted=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentTime",{get:function(){return this._mediaElement?this._mediaElement.currentTime:0},set:function(e){this._mediaElement?this._internalSeek(e):this._pendingSeekTime=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"mediaInfo",{get:function(){return Object.assign({},this._mediaInfo)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"statisticsInfo",{get:function(){return null==this._statisticsInfo&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)},enumerable:!1,configurable:!0}),e.prototype._fillStatisticsInfo=function(e){if(e.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return e;var t=!0,i=0,n=0;if(this._mediaElement.getVideoPlaybackQuality){var r=this._mediaElement.getVideoPlaybackQuality();i=r.totalVideoFrames,n=r.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(i=this._mediaElement.webkitDecodedFrameCount,n=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=i,e.droppedFrames=n),e},e.prototype._onmseUpdateEnd=function(){if(this._config.lazyLoad&&!this._config.isLive){for(var e=this._mediaElement.buffered,t=this._mediaElement.currentTime,i=0,n=0;n=t+this._config.lazyLoadMaxDuration&&null==this._progressChecker&&(a.default.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}},e.prototype._onmseBufferFull=function(){a.default.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),null==this._progressChecker&&this._suspendTransmuxer()},e.prototype._suspendTransmuxer=function(){this._transmuxer&&(this._transmuxer.pause(),null==this._progressChecker&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))},e.prototype._checkProgressAndResume=function(){for(var e=this._mediaElement.currentTime,t=this._mediaElement.buffered,i=!1,n=0;n=r&&e=s-this._config.lazyLoadRecoverDuration&&(i=!0);break}}i&&(window.clearInterval(this._progressChecker),this._progressChecker=null,i&&(a.default.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))},e.prototype._isTimepointBuffered=function(e){for(var t=this._mediaElement.buffered,i=0;i=n&&e0){var r=this._mediaElement.buffered.start(0);(r<1&&e0&&t.currentTime0){var n=i.start(0);if(n<1&&t0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)},e.prototype.unload=function(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)},e.prototype.play=function(){return this._mediaElement.play()},e.prototype.pause=function(){this._mediaElement.pause()},Object.defineProperty(e.prototype,"type",{get:function(){return this._type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffered",{get:function(){return this._mediaElement.buffered},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"duration",{get:function(){return this._mediaElement.duration},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"volume",{get:function(){return this._mediaElement.volume},set:function(e){this._mediaElement.volume=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"muted",{get:function(){return this._mediaElement.muted},set:function(e){this._mediaElement.muted=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentTime",{get:function(){return this._mediaElement?this._mediaElement.currentTime:0},set:function(e){this._mediaElement?this._mediaElement.currentTime=e:this._pendingSeekTime=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"mediaInfo",{get:function(){var e={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(e.duration=Math.floor(1e3*this._mediaElement.duration),this._mediaElement instanceof HTMLVideoElement&&(e.width=this._mediaElement.videoWidth,e.height=this._mediaElement.videoHeight)),e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"statisticsInfo",{get:function(){var e={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return e;var t=!0,i=0,n=0;if(this._mediaElement.getVideoPlaybackQuality){var r=this._mediaElement.getVideoPlaybackQuality();i=r.totalVideoFrames,n=r.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(i=this._mediaElement.webkitDecodedFrameCount,n=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=i,e.droppedFrames=n),e},enumerable:!1,configurable:!0}),e.prototype._onvLoadedMetadata=function(e){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(a.default.MEDIA_INFO,this.mediaInfo)},e.prototype._reportStatisticsInfo=function(){this._emitter.emit(a.default.STATISTICS_INFO,this.statisticsInfo)},e}();t.default=u},"./src/player/player-errors.js": -/*!*************************************!*\ - !*** ./src/player/player-errors.js ***! - \*************************************/function(e,t,i){"use strict";i.r(t),i.d(t,{ErrorTypes:function(){return a},ErrorDetails:function(){return s}});var n=i(/*! ../io/loader.js */"./src/io/loader.js"),r=i(/*! ../demux/demux-errors.js */"./src/demux/demux-errors.js"),a={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},s={NETWORK_EXCEPTION:n.LoaderErrors.EXCEPTION,NETWORK_STATUS_CODE_INVALID:n.LoaderErrors.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:n.LoaderErrors.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:n.LoaderErrors.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:r.default.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:r.default.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:r.default.CODEC_UNSUPPORTED}},"./src/player/player-events.js": -/*!*************************************!*\ - !*** ./src/player/player-events.js ***! - \*************************************/function(e,t,i){"use strict";i.r(t),t.default={ERROR:"error",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info"}},"./src/remux/aac-silent.js": -/*!*********************************!*\ - !*** ./src/remux/aac-silent.js ***! - \*********************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){}return e.getSilentFrame=function(e,t){if("mp4a.40.2"===e){if(1===t)return new Uint8Array([0,200,0,128,35,128]);if(2===t)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===t)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(6===t)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])}else{if(1===t)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(2===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(3===t)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},e}();t.default=n},"./src/remux/mp4-generator.js": -/*!************************************!*\ - !*** ./src/remux/mp4-generator.js ***! - \************************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){}return e.init=function(){for(var t in e.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]},e.types)e.types.hasOwnProperty(t)&&(e.types[t]=[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]);var i=e.constants={};i.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),i.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),i.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),i.STSC=i.STCO=i.STTS,i.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),i.HDLR_VIDEO=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]),i.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),i.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),i.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),i.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])},e.box=function(e){for(var t=8,i=null,n=Array.prototype.slice.call(arguments,1),r=n.length,a=0;a>>24&255,i[1]=t>>>16&255,i[2]=t>>>8&255,i[3]=255&t,i.set(e,4);var s=8;for(a=0;a>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,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]))},e.trak=function(t){return e.box(e.types.trak,e.tkhd(t),e.mdia(t))},e.tkhd=function(t){var i=t.id,n=t.duration,r=t.presentWidth,a=t.presentHeight;return e.box(e.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n,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,r>>>8&255,255&r,0,0,a>>>8&255,255&a,0,0]))},e.mdia=function(t){return e.box(e.types.mdia,e.mdhd(t),e.hdlr(t),e.minf(t))},e.mdhd=function(t){var i=t.timescale,n=t.duration;return e.box(e.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,n>>>24&255,n>>>16&255,n>>>8&255,255&n,85,196,0,0]))},e.hdlr=function(t){var i=null;return i="audio"===t.type?e.constants.HDLR_AUDIO:e.constants.HDLR_VIDEO,e.box(e.types.hdlr,i)},e.minf=function(t){var i=null;return i="audio"===t.type?e.box(e.types.smhd,e.constants.SMHD):e.box(e.types.vmhd,e.constants.VMHD),e.box(e.types.minf,i,e.dinf(),e.stbl(t))},e.dinf=function(){return e.box(e.types.dinf,e.box(e.types.dref,e.constants.DREF))},e.stbl=function(t){return e.box(e.types.stbl,e.stsd(t),e.box(e.types.stts,e.constants.STTS),e.box(e.types.stsc,e.constants.STSC),e.box(e.types.stsz,e.constants.STSZ),e.box(e.types.stco,e.constants.STCO))},e.stsd=function(t){return"audio"===t.type?"mp3"===t.codec?e.box(e.types.stsd,e.constants.STSD_PREFIX,e.mp3(t)):e.box(e.types.stsd,e.constants.STSD_PREFIX,e.mp4a(t)):e.box(e.types.stsd,e.constants.STSD_PREFIX,e.avc1(t))},e.mp3=function(t){var i=t.channelCount,n=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,i,0,16,0,0,0,0,n>>>8&255,255&n,0,0]);return e.box(e.types[".mp3"],r)},e.mp4a=function(t){var i=t.channelCount,n=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,i,0,16,0,0,0,0,n>>>8&255,255&n,0,0]);return e.box(e.types.mp4a,r,e.esds(t))},e.esds=function(t){var i=t.config||[],n=i.length,r=new Uint8Array([0,0,0,0,3,23+n,0,1,0,4,15+n,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([n]).concat(i).concat([6,1,2]));return e.box(e.types.esds,r)},e.avc1=function(t){var i=t.avcc,n=t.codecWidth,r=t.codecHeight,a=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,n>>>8&255,255&n,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return e.box(e.types.avc1,a,e.box(e.types.avcC,i))},e.mvex=function(t){return e.box(e.types.mvex,e.trex(t))},e.trex=function(t){var i=t.id,n=new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return e.box(e.types.trex,n)},e.moof=function(t,i){return e.box(e.types.moof,e.mfhd(t.sequenceNumber),e.traf(t,i))},e.mfhd=function(t){var i=new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t]);return e.box(e.types.mfhd,i)},e.traf=function(t,i){var n=t.id,r=e.box(e.types.tfhd,new Uint8Array([0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n])),a=e.box(e.types.tfdt,new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i])),s=e.sdtp(t),o=e.trun(t,s.byteLength+16+16+8+16+8+8);return e.box(e.types.traf,r,a,o,s)},e.sdtp=function(t){for(var i=t.samples||[],n=i.length,r=new Uint8Array(4+n),a=0;a>>24&255,r>>>16&255,r>>>8&255,255&r,i>>>24&255,i>>>16&255,i>>>8&255,255&i],0);for(var o=0;o>>24&255,u>>>16&255,u>>>8&255,255&u,l>>>24&255,l>>>16&255,l>>>8&255,255&l,d.isLeading<<2|d.dependsOn,d.isDependedOn<<6|d.hasRedundancy<<4|d.isNonSync,0,0,h>>>24&255,h>>>16&255,h>>>8&255,255&h],12+16*o)}return e.box(e.types.trun,s)},e.mdat=function(t){return e.box(e.types.mdat,t)},e}();n.init(),t.default=n},"./src/remux/mp4-remuxer.js": -/*!**********************************!*\ - !*** ./src/remux/mp4-remuxer.js ***! - \**********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ../utils/logger.js */"./src/utils/logger.js"),r=i(/*! ./mp4-generator.js */"./src/remux/mp4-generator.js"),a=i(/*! ./aac-silent.js */"./src/remux/aac-silent.js"),s=i(/*! ../utils/browser.js */"./src/utils/browser.js"),o=i(/*! ../core/media-segment-info.js */"./src/core/media-segment-info.js"),u=i(/*! ../utils/exception.js */"./src/utils/exception.js"),l=function(){function e(e){this.TAG="MP4Remuxer",this._config=e,this._isLive=!0===e.isLive,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new o.MediaSegmentInfoList("audio"),this._videoSegmentInfoList=new o.MediaSegmentInfoList("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!(!s.default.chrome||!(s.default.version.major<50||50===s.default.version.major&&s.default.version.build<2661)),this._fillSilentAfterSeek=s.default.msedge||s.default.msie,this._mp3UseMpegAudio=!s.default.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}return e.prototype.destroy=function(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null},e.prototype.bindDataSource=function(e){return e.onDataAvailable=this.remux.bind(this),e.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this},Object.defineProperty(e.prototype,"onInitSegment",{get:function(){return this._onInitSegment},set:function(e){this._onInitSegment=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onMediaSegment",{get:function(){return this._onMediaSegment},set:function(e){this._onMediaSegment=e},enumerable:!1,configurable:!0}),e.prototype.insertDiscontinuity=function(){this._audioNextDts=this._videoNextDts=void 0},e.prototype.seek=function(e){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()},e.prototype.remux=function(e,t){if(!this._onMediaSegment)throw new u.IllegalStateException("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(e,t),this._remuxVideo(t),this._remuxAudio(e)},e.prototype._onTrackMetadataReceived=function(e,t){var i=null,n="mp4",a=t.codec;if("audio"===e)this._audioMeta=t,"mp3"===t.codec&&this._mp3UseMpegAudio?(n="mpeg",a="",i=new Uint8Array):i=r.default.generateInitSegment(t);else{if("video"!==e)return;this._videoMeta=t,i=r.default.generateInitSegment(t)}if(!this._onInitSegment)throw new u.IllegalStateException("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(e,{type:e,data:i.buffer,codec:a,container:e+"/"+n,mediaDuration:t.duration})},e.prototype._calculateDtsBase=function(e,t){this._dtsBaseInited||(e.samples&&e.samples.length&&(this._audioDtsBase=e.samples[0].dts),t.samples&&t.samples.length&&(this._videoDtsBase=t.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)},e.prototype.flushStashedSamples=function(){var e=this._videoStashedLastSample,t=this._audioStashedLastSample,i={type:"video",id:1,sequenceNumber:0,samples:[],length:0};null!=e&&(i.samples.push(e),i.length=e.length);var n={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};null!=t&&(n.samples.push(t),n.length=t.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(i,!0),this._remuxAudio(n,!0)},e.prototype._remuxAudio=function(e,t){if(null!=this._audioMeta){var i,u=e,l=u.samples,d=void 0,h=-1,c=this._audioMeta.refSampleDuration,f="mp3"===this._audioMeta.codec&&this._mp3UseMpegAudio,p=this._dtsBaseInited&&void 0===this._audioNextDts,m=!1;if(l&&0!==l.length&&(1!==l.length||t)){var g=0,_=null,v=0;f?(g=0,v=u.length):(g=8,v=8+u.length);var y=null;if(l.length>1&&(v-=(y=l.pop()).length),null!=this._audioStashedLastSample){var b=this._audioStashedLastSample;this._audioStashedLastSample=null,l.unshift(b),v+=b.length}null!=y&&(this._audioStashedLastSample=y);var T=l[0].dts-this._dtsBase;if(this._audioNextDts)d=T-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())d=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&"mp3"!==this._audioMeta.originalCodec&&(m=!0);else{var S=this._audioSegmentInfoList.getLastSampleBefore(T);if(null!=S){var E=T-(S.originalDts+S.duration);E<=3&&(E=0),d=T-(S.dts+S.duration+E)}else d=0}if(m){var w=T-d,C=this._videoSegmentInfoList.getLastSegmentBefore(T);if(null!=C&&C.beginDts=3*c&&this._fillAudioTimestampGap&&!s.default.safari){D=!0;var M,F=Math.floor(d/c);n.default.w(this.TAG,"Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.\noriginalDts: "+L+" ms, curRefDts: "+O+" ms, dtsCorrection: "+Math.round(d)+" ms, generate: "+F+" frames"),A=Math.floor(O),U=Math.floor(O+c)-A,null==(M=a.default.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount))&&(n.default.w(this.TAG,"Unable to generate silent frame for "+this._audioMeta.originalCodec+" with "+this._audioMeta.channelCount+" channels, repeat last frame"),M=P),R=[];for(var B=0;B=1?I[I.length-1].duration:Math.floor(c),this._audioNextDts=A+U;-1===h&&(h=A),I.push({dts:A,pts:A,cts:0,unit:b.unit,size:b.unit.byteLength,duration:U,originalDts:L,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),D&&I.push.apply(I,R)}}if(0===I.length)return u.samples=[],void(u.length=0);for(f?_=new Uint8Array(v):((_=new Uint8Array(v))[0]=v>>>24&255,_[1]=v>>>16&255,_[2]=v>>>8&255,_[3]=255&v,_.set(r.default.types.mdat,4)),x=0;x1&&(f-=(p=s.pop()).length),null!=this._videoStashedLastSample){var m=this._videoStashedLastSample;this._videoStashedLastSample=null,s.unshift(m),f+=m.length}null!=p&&(this._videoStashedLastSample=p);var g=s[0].dts-this._dtsBase;if(this._videoNextDts)u=g-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())u=0;else{var _=this._videoSegmentInfoList.getLastSampleBefore(g);if(null!=_){var v=g-(_.originalDts+_.duration);v<=3&&(v=0),u=g-(_.dts+_.duration+v)}else u=0}for(var y=new o.MediaSegmentInfo,b=[],T=0;T=1?b[b.length-1].duration:Math.floor(this._videoMeta.refSampleDuration),E){var I=new o.SampleInfo(w,A,k,m.dts,!0);I.fileposition=m.fileposition,y.appendSyncPoint(I)}b.push({dts:w,pts:A,cts:C,units:m.units,size:m.length,isKeyframe:E,duration:k,originalDts:S,flags:{isLeading:0,dependsOn:E?2:1,isDependedOn:E?1:0,hasRedundancy:0,isNonSync:E?0:1}})}for((c=new Uint8Array(f))[0]=f>>>24&255,c[1]=f>>>16&255,c[2]=f>>>8&255,c[3]=255&f,c.set(r.default.types.mdat,4),T=0;T=0&&/(rv)(?::| )([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(e)||[],i=/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(android)/.exec(e)||/(windows)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||[],r={browser:t[5]||t[3]||t[1]||"",version:t[2]||t[4]||"0",majorVersion:t[4]||t[2]||"0",platform:i[0]||""},a={};if(r.browser){a[r.browser]=!0;var s=r.majorVersion.split(".");a.version={major:parseInt(r.majorVersion,10),string:r.version},s.length>1&&(a.version.minor=parseInt(s[1],10)),s.length>2&&(a.version.build=parseInt(s[2],10))}for(var o in r.platform&&(a[r.platform]=!0),(a.chrome||a.opr||a.safari)&&(a.webkit=!0),(a.rv||a.iemobile)&&(a.rv&&delete a.rv,r.browser="msie",a.msie=!0),a.edge&&(delete a.edge,r.browser="msedge",a.msedge=!0),a.opr&&(r.browser="opera",a.opera=!0),a.safari&&a.android&&(r.browser="android",a.android=!0),a.name=r.browser,a.platform=r.platform,n)n.hasOwnProperty(o)&&delete n[o];Object.assign(n,a)}(),t.default=n},"./src/utils/exception.js": -/*!********************************!*\ - !*** ./src/utils/exception.js ***! - \********************************/function(e,t,i){"use strict";i.r(t),i.d(t,{RuntimeException:function(){return a},IllegalStateException:function(){return s},InvalidArgumentException:function(){return o},NotImplementedException:function(){return u}});var n,r=(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),a=function(){function e(e){this._message=e}return Object.defineProperty(e.prototype,"name",{get:function(){return"RuntimeException"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"message",{get:function(){return this._message},enumerable:!1,configurable:!0}),e.prototype.toString=function(){return this.name+": "+this.message},e}(),s=function(e){function t(t){return e.call(this,t)||this}return r(t,e),Object.defineProperty(t.prototype,"name",{get:function(){return"IllegalStateException"},enumerable:!1,configurable:!0}),t}(a),o=function(e){function t(t){return e.call(this,t)||this}return r(t,e),Object.defineProperty(t.prototype,"name",{get:function(){return"InvalidArgumentException"},enumerable:!1,configurable:!0}),t}(a),u=function(e){function t(t){return e.call(this,t)||this}return r(t,e),Object.defineProperty(t.prototype,"name",{get:function(){return"NotImplementedException"},enumerable:!1,configurable:!0}),t}(a)},"./src/utils/logger.js": -/*!*****************************!*\ - !*** ./src/utils/logger.js ***! - \*****************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=function(){function e(){}return e.e=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","error",n),e.ENABLE_ERROR&&(console.error?console.error(n):console.warn)},e.i=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","info",n),e.ENABLE_INFO&&console.info&&console.info(n)},e.w=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","warn",n),e.ENABLE_WARN&&console.warn},e.d=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","debug",n),e.ENABLE_DEBUG&&console.debug&&console.debug(n)},e.v=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","verbose",n),e.ENABLE_VERBOSE},e}();a.GLOBAL_TAG="flv.js",a.FORCE_GLOBAL_TAG=!1,a.ENABLE_ERROR=!0,a.ENABLE_INFO=!0,a.ENABLE_WARN=!0,a.ENABLE_DEBUG=!0,a.ENABLE_VERBOSE=!0,a.ENABLE_CALLBACK=!1,a.emitter=new(r()),t.default=a},"./src/utils/logging-control.js": -/*!**************************************!*\ - !*** ./src/utils/logging-control.js ***! - \**************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! ./logger.js */"./src/utils/logger.js"),s=function(){function e(){}return Object.defineProperty(e,"forceGlobalTag",{get:function(){return a.default.FORCE_GLOBAL_TAG},set:function(t){a.default.FORCE_GLOBAL_TAG=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"globalTag",{get:function(){return a.default.GLOBAL_TAG},set:function(t){a.default.GLOBAL_TAG=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableAll",{get:function(){return a.default.ENABLE_VERBOSE&&a.default.ENABLE_DEBUG&&a.default.ENABLE_INFO&&a.default.ENABLE_WARN&&a.default.ENABLE_ERROR},set:function(t){a.default.ENABLE_VERBOSE=t,a.default.ENABLE_DEBUG=t,a.default.ENABLE_INFO=t,a.default.ENABLE_WARN=t,a.default.ENABLE_ERROR=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableDebug",{get:function(){return a.default.ENABLE_DEBUG},set:function(t){a.default.ENABLE_DEBUG=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableVerbose",{get:function(){return a.default.ENABLE_VERBOSE},set:function(t){a.default.ENABLE_VERBOSE=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableInfo",{get:function(){return a.default.ENABLE_INFO},set:function(t){a.default.ENABLE_INFO=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableWarn",{get:function(){return a.default.ENABLE_WARN},set:function(t){a.default.ENABLE_WARN=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableError",{get:function(){return a.default.ENABLE_ERROR},set:function(t){a.default.ENABLE_ERROR=t,e._notifyChange()},enumerable:!1,configurable:!0}),e.getConfig=function(){return{globalTag:a.default.GLOBAL_TAG,forceGlobalTag:a.default.FORCE_GLOBAL_TAG,enableVerbose:a.default.ENABLE_VERBOSE,enableDebug:a.default.ENABLE_DEBUG,enableInfo:a.default.ENABLE_INFO,enableWarn:a.default.ENABLE_WARN,enableError:a.default.ENABLE_ERROR,enableCallback:a.default.ENABLE_CALLBACK}},e.applyConfig=function(e){a.default.GLOBAL_TAG=e.globalTag,a.default.FORCE_GLOBAL_TAG=e.forceGlobalTag,a.default.ENABLE_VERBOSE=e.enableVerbose,a.default.ENABLE_DEBUG=e.enableDebug,a.default.ENABLE_INFO=e.enableInfo,a.default.ENABLE_WARN=e.enableWarn,a.default.ENABLE_ERROR=e.enableError,a.default.ENABLE_CALLBACK=e.enableCallback},e._notifyChange=function(){var t=e.emitter;if(t.listenerCount("change")>0){var i=e.getConfig();t.emit("change",i)}},e.registerListener=function(t){e.emitter.addListener("change",t)},e.removeListener=function(t){e.emitter.removeListener("change",t)},e.addLogListener=function(t){a.default.emitter.addListener("log",t),a.default.emitter.listenerCount("log")>0&&(a.default.ENABLE_CALLBACK=!0,e._notifyChange())},e.removeLogListener=function(t){a.default.emitter.removeListener("log",t),0===a.default.emitter.listenerCount("log")&&(a.default.ENABLE_CALLBACK=!1,e._notifyChange())},e}();s.emitter=new(r()),t.default=s},"./src/utils/polyfill.js": -/*!*******************************!*\ - !*** ./src/utils/polyfill.js ***! - \*******************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){}return e.install=function(){Object.setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Object.assign=Object.assign||function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),i=1;i=128){t.push(String.fromCharCode(65535&s)),r+=2;continue}}else if(i[r]<240){if(n(i,r,2)&&(s=(15&i[r])<<12|(63&i[r+1])<<6|63&i[r+2])>=2048&&55296!=(63488&s)){t.push(String.fromCharCode(65535&s)),r+=3;continue}}else if(i[r]<248){var s;if(n(i,r,3)&&(s=(7&i[r])<<18|(63&i[r+1])<<12|(63&i[r+2])<<6|63&i[r+3])>65536&&s<1114112){s-=65536,t.push(String.fromCharCode(s>>>10|55296)),t.push(String.fromCharCode(1023&s|56320)),r+=4;continue}}t.push(String.fromCharCode(65533)),++r}return t.join("")}}},i={};function n(e){var r=i[e];if(void 0!==r)return r.exports;var a=i[e]={exports:{}};return t[e].call(a.exports,a,a.exports,n),a.exports}return n.m=t,n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n("./src/index.js")}()},"object"==typeof i&&"object"==typeof t?t.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof i?i.flvjs=r():n.flvjs=r()}).call(this,e("_process"))},{_process:44}],34:[function(e,t,i){(function(i){var n,r=void 0!==i?i:"undefined"!=typeof window?window:{},a=e("min-document");"undefined"!=typeof document?n=document:(n=r["__GLOBAL_DOCUMENT_CACHE@4"])||(n=r["__GLOBAL_DOCUMENT_CACHE@4"]=a),t.exports=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"min-document":31}],35:[function(e,t,i){(function(e){var i;i="undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:{},t.exports=i}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],36:[function(e,t,i){i.read=function(e,t,i,n,r){var a,s,o=8*r-n-1,u=(1<>1,d=-7,h=i?r-1:0,c=i?-1:1,f=e[t+h];for(h+=c,a=f&(1<<-d)-1,f>>=-d,d+=o;d>0;a=256*a+e[t+h],h+=c,d-=8);for(s=a&(1<<-d)-1,a>>=-d,d+=n;d>0;s=256*s+e[t+h],h+=c,d-=8);if(0===a)a=1-l;else{if(a===u)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,n),a-=l}return(f?-1:1)*s*Math.pow(2,a-n)},i.write=function(e,t,i,n,r,a){var s,o,u,l=8*a-r-1,d=(1<>1,c=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,p=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,s=d):(s=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-s))<1&&(s--,u*=2),(t+=s+h>=1?c/u:c*Math.pow(2,1-h))*u>=2&&(s++,u/=2),s+h>=d?(o=0,s=d):s+h>=1?(o=(t*u-1)*Math.pow(2,r),s+=h):(o=t*Math.pow(2,h-1)*Math.pow(2,r),s=0));r>=8;e[i+f]=255&o,f+=p,o/=256,r-=8);for(s=s<0;e[i+f]=255&s,f+=p,s/=256,l-=8);e[i+f-p]|=128*m}},{}],37:[function(e,t,i){t.exports=function(e){if(!e)return!1;var t=n.call(e);return"[object Function]"===t||"function"==typeof e&&"[object RegExp]"!==t||"undefined"!=typeof window&&(e===window.setTimeout||e===window.alert||e===window.confirm||e===window.prompt)};var n=Object.prototype.toString},{}],38:[function(e,t,i){function n(e){if(e&&"object"==typeof e){var t=e.which||e.keyCode||e.charCode;t&&(e=t)}if("number"==typeof e)return o[e];var i,n=String(e);return(i=r[n.toLowerCase()])?i:(i=a[n.toLowerCase()])||(1===n.length?n.charCodeAt(0):void 0)}n.isEventKey=function(e,t){if(e&&"object"==typeof e){var i=e.which||e.keyCode||e.charCode;if(null==i)return!1;if("string"==typeof t){var n;if(n=r[t.toLowerCase()])return n===i;if(n=a[t.toLowerCase()])return n===i}else if("number"==typeof t)return t===i;return!1}};var r=(i=t.exports=n).code=i.codes={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,"pause/break":19,"caps lock":20,esc:27,space:32,"page up":33,"page down":34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46,command:91,"left command":91,"right command":93,"numpad *":106,"numpad +":107,"numpad -":109,"numpad .":110,"numpad /":111,"num lock":144,"scroll lock":145,"my computer":182,"my calculator":183,";":186,"=":187,",":188,"-":189,".":190,"/":191,"`":192,"[":219,"\\":220,"]":221,"'":222},a=i.aliases={windows:91,"⇧":16,"⌥":18,"⌃":17,"⌘":91,ctl:17,control:17,option:18,pause:19,break:19,caps:20,return:13,escape:27,spc:32,spacebar:32,pgup:33,pgdn:34,ins:45,del:46,cmd:91}; -/*! - * Programatically add the following - */ -for(s=97;s<123;s++)r[String.fromCharCode(s)]=s-32;for(var s=48;s<58;s++)r[s-48]=s;for(s=1;s<13;s++)r["f"+s]=s+111;for(s=0;s<10;s++)r["numpad "+s]=s+96;var o=i.names=i.title={};for(s in r)o[r[s]]=s;for(var u in a)r[u]=a[u]},{}],39:[function(e,t,i){ -/*! @name m3u8-parser @version 4.7.0 @license Apache-2.0 */ -"use strict";Object.defineProperty(i,"__esModule",{value:!0});var n=e("@babel/runtime/helpers/inheritsLoose"),r=e("@videojs/vhs-utils/cjs/stream.js"),a=e("@babel/runtime/helpers/extends"),s=e("@babel/runtime/helpers/assertThisInitialized"),o=e("@videojs/vhs-utils/cjs/decode-b64-to-uint8-array.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=u(n),d=u(r),h=u(a),c=u(s),f=u(o),p=function(e){function t(){var t;return(t=e.call(this)||this).buffer="",t}return l.default(t,e),t.prototype.push=function(e){var t;for(this.buffer+=e,t=this.buffer.indexOf("\n");t>-1;t=this.buffer.indexOf("\n"))this.trigger("data",this.buffer.substring(0,t)),this.buffer=this.buffer.substring(t+1)},t}(d.default),m=String.fromCharCode(9),g=function(e){var t=/([0-9.]*)?@?([0-9.]*)?/.exec(e||""),i={};return t[1]&&(i.length=parseInt(t[1],10)),t[2]&&(i.offset=parseInt(t[2],10)),i},_=function(e){for(var t,i=e.split(new RegExp('(?:^|,)((?:[^=]*)=(?:"[^"]*"|[^,]*))')),n={},r=i.length;r--;)""!==i[r]&&((t=/([^=]*)=(.*)/.exec(i[r]).slice(1))[0]=t[0].replace(/^\s+|\s+$/g,""),t[1]=t[1].replace(/^\s+|\s+$/g,""),t[1]=t[1].replace(/^['"](.*)['"]$/g,"$1"),n[t[0]]=t[1]);return n},v=function(e){function t(){var t;return(t=e.call(this)||this).customParsers=[],t.tagMappers=[],t}l.default(t,e);var i=t.prototype;return i.push=function(e){var t,i,n=this;0!==(e=e.trim()).length&&("#"===e[0]?this.tagMappers.reduce((function(t,i){var n=i(e);return n===e?t:t.concat([n])}),[e]).forEach((function(e){for(var r=0;r0&&(s.duration=e.duration),0===e.duration&&(s.duration=.01,this.trigger("info",{message:"updating zero segment duration to a small value"})),this.manifest.segments=a},key:function(){if(e.attributes)if("NONE"!==e.attributes.METHOD)if(e.attributes.URI){if("com.apple.streamingkeydelivery"===e.attributes.KEYFORMAT)return this.manifest.contentProtection=this.manifest.contentProtection||{},void(this.manifest.contentProtection["com.apple.fps.1_0"]={attributes:e.attributes});if("urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"===e.attributes.KEYFORMAT){return-1===["SAMPLE-AES","SAMPLE-AES-CTR","SAMPLE-AES-CENC"].indexOf(e.attributes.METHOD)?void this.trigger("warn",{message:"invalid key method provided for Widevine"}):("SAMPLE-AES-CENC"===e.attributes.METHOD&&this.trigger("warn",{message:"SAMPLE-AES-CENC is deprecated, please use SAMPLE-AES-CTR instead"}),"data:text/plain;base64,"!==e.attributes.URI.substring(0,23)?void this.trigger("warn",{message:"invalid key URI provided for Widevine"}):e.attributes.KEYID&&"0x"===e.attributes.KEYID.substring(0,2)?(this.manifest.contentProtection=this.manifest.contentProtection||{},void(this.manifest.contentProtection["com.widevine.alpha"]={attributes:{schemeIdUri:e.attributes.KEYFORMAT,keyId:e.attributes.KEYID.substring(2)},pssh:f.default(e.attributes.URI.split(",")[1])})):void this.trigger("warn",{message:"invalid key ID provided for Widevine"}))}e.attributes.METHOD||this.trigger("warn",{message:"defaulting key method to AES-128"}),n={method:e.attributes.METHOD||"AES-128",uri:e.attributes.URI},void 0!==e.attributes.IV&&(n.iv=e.attributes.IV)}else this.trigger("warn",{message:"ignoring key declaration without URI"});else n=null;else this.trigger("warn",{message:"ignoring key declaration without attribute list"})},"media-sequence":function(){isFinite(e.number)?this.manifest.mediaSequence=e.number:this.trigger("warn",{message:"ignoring invalid media sequence: "+e.number})},"discontinuity-sequence":function(){isFinite(e.number)?(this.manifest.discontinuitySequence=e.number,d=e.number):this.trigger("warn",{message:"ignoring invalid discontinuity sequence: "+e.number})},"playlist-type":function(){/VOD|EVENT/.test(e.playlistType)?this.manifest.playlistType=e.playlistType:this.trigger("warn",{message:"ignoring unknown playlist type: "+e.playlist})},map:function(){i={},e.uri&&(i.uri=e.uri),e.byterange&&(i.byterange=e.byterange),n&&(i.key=n)},"stream-inf":function(){this.manifest.playlists=a,this.manifest.mediaGroups=this.manifest.mediaGroups||l,e.attributes?(s.attributes||(s.attributes={}),h.default(s.attributes,e.attributes)):this.trigger("warn",{message:"ignoring empty stream-inf attributes"})},media:function(){if(this.manifest.mediaGroups=this.manifest.mediaGroups||l,e.attributes&&e.attributes.TYPE&&e.attributes["GROUP-ID"]&&e.attributes.NAME){var i=this.manifest.mediaGroups[e.attributes.TYPE];i[e.attributes["GROUP-ID"]]=i[e.attributes["GROUP-ID"]]||{},t=i[e.attributes["GROUP-ID"]],(c={default:/yes/i.test(e.attributes.DEFAULT)}).default?c.autoselect=!0:c.autoselect=/yes/i.test(e.attributes.AUTOSELECT),e.attributes.LANGUAGE&&(c.language=e.attributes.LANGUAGE),e.attributes.URI&&(c.uri=e.attributes.URI),e.attributes["INSTREAM-ID"]&&(c.instreamId=e.attributes["INSTREAM-ID"]),e.attributes.CHARACTERISTICS&&(c.characteristics=e.attributes.CHARACTERISTICS),e.attributes.FORCED&&(c.forced=/yes/i.test(e.attributes.FORCED)),t[e.attributes.NAME]=c}else this.trigger("warn",{message:"ignoring incomplete or missing media group"})},discontinuity:function(){d+=1,s.discontinuity=!0,this.manifest.discontinuityStarts.push(a.length)},"program-date-time":function(){void 0===this.manifest.dateTimeString&&(this.manifest.dateTimeString=e.dateTimeString,this.manifest.dateTimeObject=e.dateTimeObject),s.dateTimeString=e.dateTimeString,s.dateTimeObject=e.dateTimeObject},targetduration:function(){!isFinite(e.duration)||e.duration<0?this.trigger("warn",{message:"ignoring invalid target duration: "+e.duration}):(this.manifest.targetDuration=e.duration,b.call(this,this.manifest))},start:function(){e.attributes&&!isNaN(e.attributes["TIME-OFFSET"])?this.manifest.start={timeOffset:e.attributes["TIME-OFFSET"],precise:e.attributes.PRECISE}:this.trigger("warn",{message:"ignoring start declaration without appropriate attribute list"})},"cue-out":function(){s.cueOut=e.data},"cue-out-cont":function(){s.cueOutCont=e.data},"cue-in":function(){s.cueIn=e.data},skip:function(){this.manifest.skip=y(e.attributes),this.warnOnMissingAttributes_("#EXT-X-SKIP",e.attributes,["SKIPPED-SEGMENTS"])},part:function(){var t=this;o=!0;var i=this.manifest.segments.length,n=y(e.attributes);s.parts=s.parts||[],s.parts.push(n),n.byterange&&(n.byterange.hasOwnProperty("offset")||(n.byterange.offset=g),g=n.byterange.offset+n.byterange.length);var r=s.parts.length-1;this.warnOnMissingAttributes_("#EXT-X-PART #"+r+" for segment #"+i,e.attributes,["URI","DURATION"]),this.manifest.renditionReports&&this.manifest.renditionReports.forEach((function(e,i){e.hasOwnProperty("lastPart")||t.trigger("warn",{message:"#EXT-X-RENDITION-REPORT #"+i+" lacks required attribute(s): LAST-PART"})}))},"server-control":function(){var t=this.manifest.serverControl=y(e.attributes);t.hasOwnProperty("canBlockReload")||(t.canBlockReload=!1,this.trigger("info",{message:"#EXT-X-SERVER-CONTROL defaulting CAN-BLOCK-RELOAD to false"})),b.call(this,this.manifest),t.canSkipDateranges&&!t.hasOwnProperty("canSkipUntil")&&this.trigger("warn",{message:"#EXT-X-SERVER-CONTROL lacks required attribute CAN-SKIP-UNTIL which is required when CAN-SKIP-DATERANGES is set"})},"preload-hint":function(){var t=this.manifest.segments.length,i=y(e.attributes),n=i.type&&"PART"===i.type;s.preloadHints=s.preloadHints||[],s.preloadHints.push(i),i.byterange&&(i.byterange.hasOwnProperty("offset")||(i.byterange.offset=n?g:0,n&&(g=i.byterange.offset+i.byterange.length)));var r=s.preloadHints.length-1;if(this.warnOnMissingAttributes_("#EXT-X-PRELOAD-HINT #"+r+" for segment #"+t,e.attributes,["TYPE","URI"]),i.type)for(var a=0;a=r&&console.debug("["+a.getDurationString(new Date-n,1e3)+"]","["+e+"]",t)},log:function(e,t){this.debug(e.msg)},info:function(e,t){2>=r&&console.info("["+a.getDurationString(new Date-n,1e3)+"]","["+e+"]",t)},warn:function(e,t){3>=r&&a.getDurationString(new Date-n,1e3)},error:function(e,t){4>=r&&console.error("["+a.getDurationString(new Date-n,1e3)+"]","["+e+"]",t)}});a.getDurationString=function(e,t){var i;function n(e,t){for(var i=(""+e).split(".");i[0].length0){for(var i="",n=0;n0&&(i+=","),i+="["+a.getDurationString(e.start(n))+","+a.getDurationString(e.end(n))+"]";return i}return"(empty)"},void 0!==i&&(i.Log=a);var s=function(e){if(!(e instanceof ArrayBuffer))throw"Needs an array buffer";this.buffer=e,this.dataview=new DataView(e),this.position=0};s.prototype.getPosition=function(){return this.position},s.prototype.getEndPosition=function(){return this.buffer.byteLength},s.prototype.getLength=function(){return this.buffer.byteLength},s.prototype.seek=function(e){var t=Math.max(0,Math.min(this.buffer.byteLength,e));return this.position=isNaN(t)||!isFinite(t)?0:t,!0},s.prototype.isEos=function(){return this.getPosition()>=this.getEndPosition()},s.prototype.readAnyInt=function(e,t){var i=0;if(this.position+e<=this.buffer.byteLength){switch(e){case 1:i=t?this.dataview.getInt8(this.position):this.dataview.getUint8(this.position);break;case 2:i=t?this.dataview.getInt16(this.position):this.dataview.getUint16(this.position);break;case 3:if(t)throw"No method for reading signed 24 bits values";i=this.dataview.getUint8(this.position)<<16,i|=this.dataview.getUint8(this.position)<<8,i|=this.dataview.getUint8(this.position);break;case 4:i=t?this.dataview.getInt32(this.position):this.dataview.getUint32(this.position);break;case 8:if(t)throw"No method for reading signed 64 bits values";i=this.dataview.getUint32(this.position)<<32,i|=this.dataview.getUint32(this.position);break;default:throw"readInt method not implemented for size: "+e}return this.position+=e,i}throw"Not enough bytes in buffer"},s.prototype.readUint8=function(){return this.readAnyInt(1,!1)},s.prototype.readUint16=function(){return this.readAnyInt(2,!1)},s.prototype.readUint24=function(){return this.readAnyInt(3,!1)},s.prototype.readUint32=function(){return this.readAnyInt(4,!1)},s.prototype.readUint64=function(){return this.readAnyInt(8,!1)},s.prototype.readString=function(e){if(this.position+e<=this.buffer.byteLength){for(var t="",i=0;ithis._byteLength&&(this._byteLength=t);else{for(i<1&&(i=1);t>i;)i*=2;var n=new ArrayBuffer(i),r=new Uint8Array(this._buffer);new Uint8Array(n,0,r.length).set(r),this.buffer=n,this._byteLength=t}}},o.prototype._trimAlloc=function(){if(this._byteLength!=this._buffer.byteLength){var e=new ArrayBuffer(this._byteLength),t=new Uint8Array(e),i=new Uint8Array(this._buffer,0,t.length);t.set(i),this.buffer=e}},o.BIG_ENDIAN=!1,o.LITTLE_ENDIAN=!0,o.prototype._byteLength=0,Object.defineProperty(o.prototype,"byteLength",{get:function(){return this._byteLength-this._byteOffset}}),Object.defineProperty(o.prototype,"buffer",{get:function(){return this._trimAlloc(),this._buffer},set:function(e){this._buffer=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(o.prototype,"byteOffset",{get:function(){return this._byteOffset},set:function(e){this._byteOffset=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(o.prototype,"dataView",{get:function(){return this._dataView},set:function(e){this._byteOffset=e.byteOffset,this._buffer=e.buffer,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._byteOffset+e.byteLength}}),o.prototype.seek=function(e){var t=Math.max(0,Math.min(this.byteLength,e));this.position=isNaN(t)||!isFinite(t)?0:t},o.prototype.isEof=function(){return this.position>=this._byteLength},o.prototype.mapUint8Array=function(e){this._realloc(1*e);var t=new Uint8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=1*e,t},o.prototype.readInt32Array=function(e,t){e=null==e?this.byteLength-this.position/4:e;var i=new Int32Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readInt16Array=function(e,t){e=null==e?this.byteLength-this.position/2:e;var i=new Int16Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readInt8Array=function(e){e=null==e?this.byteLength-this.position:e;var t=new Int8Array(e);return o.memcpy(t.buffer,0,this.buffer,this.byteOffset+this.position,e*t.BYTES_PER_ELEMENT),this.position+=t.byteLength,t},o.prototype.readUint32Array=function(e,t){e=null==e?this.byteLength-this.position/4:e;var i=new Uint32Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readUint16Array=function(e,t){e=null==e?this.byteLength-this.position/2:e;var i=new Uint16Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readUint8Array=function(e){e=null==e?this.byteLength-this.position:e;var t=new Uint8Array(e);return o.memcpy(t.buffer,0,this.buffer,this.byteOffset+this.position,e*t.BYTES_PER_ELEMENT),this.position+=t.byteLength,t},o.prototype.readFloat64Array=function(e,t){e=null==e?this.byteLength-this.position/8:e;var i=new Float64Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readFloat32Array=function(e,t){e=null==e?this.byteLength-this.position/4:e;var i=new Float32Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readInt32=function(e){var t=this._dataView.getInt32(this.position,null==e?this.endianness:e);return this.position+=4,t},o.prototype.readInt16=function(e){var t=this._dataView.getInt16(this.position,null==e?this.endianness:e);return this.position+=2,t},o.prototype.readInt8=function(){var e=this._dataView.getInt8(this.position);return this.position+=1,e},o.prototype.readUint32=function(e){var t=this._dataView.getUint32(this.position,null==e?this.endianness:e);return this.position+=4,t},o.prototype.readUint16=function(e){var t=this._dataView.getUint16(this.position,null==e?this.endianness:e);return this.position+=2,t},o.prototype.readUint8=function(){var e=this._dataView.getUint8(this.position);return this.position+=1,e},o.prototype.readFloat32=function(e){var t=this._dataView.getFloat32(this.position,null==e?this.endianness:e);return this.position+=4,t},o.prototype.readFloat64=function(e){var t=this._dataView.getFloat64(this.position,null==e?this.endianness:e);return this.position+=8,t},o.endianness=new Int8Array(new Int16Array([1]).buffer)[0]>0,o.memcpy=function(e,t,i,n,r){var a=new Uint8Array(e,t,r),s=new Uint8Array(i,n,r);a.set(s)},o.arrayToNative=function(e,t){return t==this.endianness?e:this.flipArrayEndianness(e)},o.nativeToEndian=function(e,t){return this.endianness==t?e:this.flipArrayEndianness(e)},o.flipArrayEndianness=function(e){for(var t=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),i=0;ir;n--,r++){var a=t[r];t[r]=t[n],t[n]=a}return e},o.prototype.failurePosition=0,String.fromCharCodeUint8=function(e){for(var t=[],i=0;i>16),this.writeUint8((65280&e)>>8),this.writeUint8(255&e)},o.prototype.adjustUint32=function(e,t){var i=this.position;this.seek(e),this.writeUint32(t),this.seek(i)},o.prototype.mapInt32Array=function(e,t){this._realloc(4*e);var i=new Int32Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=4*e,i},o.prototype.mapInt16Array=function(e,t){this._realloc(2*e);var i=new Int16Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=2*e,i},o.prototype.mapInt8Array=function(e){this._realloc(1*e);var t=new Int8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=1*e,t},o.prototype.mapUint32Array=function(e,t){this._realloc(4*e);var i=new Uint32Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=4*e,i},o.prototype.mapUint16Array=function(e,t){this._realloc(2*e);var i=new Uint16Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=2*e,i},o.prototype.mapFloat64Array=function(e,t){this._realloc(8*e);var i=new Float64Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=8*e,i},o.prototype.mapFloat32Array=function(e,t){this._realloc(4*e);var i=new Float32Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=4*e,i};var l=function(e){this.buffers=[],this.bufferIndex=-1,e&&(this.insertBuffer(e),this.bufferIndex=0)};(l.prototype=new o(new ArrayBuffer,0,o.BIG_ENDIAN)).initialized=function(){var e;return this.bufferIndex>-1||(this.buffers.length>0?0===(e=this.buffers[0]).fileStart?(this.buffer=e,this.bufferIndex=0,a.debug("MultiBufferStream","Stream ready for parsing"),!0):(a.warn("MultiBufferStream","The first buffer should have a fileStart of 0"),this.logBufferLevel(),!1):(a.warn("MultiBufferStream","No buffer to start parsing from"),this.logBufferLevel(),!1))},ArrayBuffer.concat=function(e,t){a.debug("ArrayBuffer","Trying to create a new buffer of size: "+(e.byteLength+t.byteLength));var i=new Uint8Array(e.byteLength+t.byteLength);return i.set(new Uint8Array(e),0),i.set(new Uint8Array(t),e.byteLength),i.buffer},l.prototype.reduceBuffer=function(e,t,i){var n;return(n=new Uint8Array(i)).set(new Uint8Array(e,t,i)),n.buffer.fileStart=e.fileStart+t,n.buffer.usedBytes=0,n.buffer},l.prototype.insertBuffer=function(e){for(var t=!0,i=0;in.byteLength){this.buffers.splice(i,1),i--;continue}a.warn("MultiBufferStream","Buffer (fileStart: "+e.fileStart+" - Length: "+e.byteLength+") already appended, ignoring")}else e.fileStart+e.byteLength<=n.fileStart||(e=this.reduceBuffer(e,0,n.fileStart-e.fileStart)),a.debug("MultiBufferStream","Appending new buffer (fileStart: "+e.fileStart+" - Length: "+e.byteLength+")"),this.buffers.splice(i,0,e),0===i&&(this.buffer=e);t=!1;break}if(e.fileStart0)){t=!1;break}e=this.reduceBuffer(e,r,s)}}t&&(a.debug("MultiBufferStream","Appending new buffer (fileStart: "+e.fileStart+" - Length: "+e.byteLength+")"),this.buffers.push(e),0===i&&(this.buffer=e))},l.prototype.logBufferLevel=function(e){var t,i,n,r,s,o=[],u="";for(n=0,r=0,t=0;t0&&(u+=s.end-1+"]");var l=e?a.info:a.debug;0===this.buffers.length?l("MultiBufferStream","No more buffer in memory"):l("MultiBufferStream",this.buffers.length+" stored buffer(s) ("+n+"/"+r+" bytes): "+u)},l.prototype.cleanBuffers=function(){var e,t;for(e=0;e"+this.buffer.byteLength+")"),!0}return!1}return!1},l.prototype.findPosition=function(e,t,i){var n,r=null,s=-1;for(n=!0===e?0:this.bufferIndex;n=t?(a.debug("MultiBufferStream","Found position in existing buffer #"+s),s):-1},l.prototype.findEndContiguousBuf=function(e){var t,i,n,r=void 0!==e?e:this.bufferIndex;if(i=this.buffers[r],this.buffers.length>r+1)for(t=r+1;t>3;return 31===n&&i.data.length>=2&&(n=32+((7&i.data[0])<<3)+((224&i.data[1])>>5)),n}return null},i.DecoderConfigDescriptor=function(e){i.Descriptor.call(this,4,e)},i.DecoderConfigDescriptor.prototype=new i.Descriptor,i.DecoderConfigDescriptor.prototype.parse=function(e){this.oti=e.readUint8(),this.streamType=e.readUint8(),this.bufferSize=e.readUint24(),this.maxBitrate=e.readUint32(),this.avgBitrate=e.readUint32(),this.size-=13,this.parseRemainingDescriptors(e)},i.DecoderSpecificInfo=function(e){i.Descriptor.call(this,5,e)},i.DecoderSpecificInfo.prototype=new i.Descriptor,i.SLConfigDescriptor=function(e){i.Descriptor.call(this,6,e)},i.SLConfigDescriptor.prototype=new i.Descriptor,this};void 0!==i&&(i.MPEG4DescriptorParser=d);var h={ERR_INVALID_DATA:-1,ERR_NOT_ENOUGH_DATA:0,OK:1,BASIC_BOXES:["mdat","idat","free","skip","meco","strk"],FULL_BOXES:["hmhd","nmhd","iods","xml ","bxml","ipro","mere"],CONTAINER_BOXES:[["moov",["trak","pssh"]],["trak"],["edts"],["mdia"],["minf"],["dinf"],["stbl",["sgpd","sbgp"]],["mvex",["trex"]],["moof",["traf"]],["traf",["trun","sgpd","sbgp"]],["vttc"],["tref"],["iref"],["mfra",["tfra"]],["meco"],["hnti"],["hinf"],["strk"],["strd"],["sinf"],["rinf"],["schi"],["trgr"],["udta",["kind"]],["iprp",["ipma"]],["ipco"]],boxCodes:[],fullBoxCodes:[],containerBoxCodes:[],sampleEntryCodes:{},sampleGroupEntryCodes:[],trackGroupTypes:[],UUIDBoxes:{},UUIDs:[],initialize:function(){h.FullBox.prototype=new h.Box,h.ContainerBox.prototype=new h.Box,h.SampleEntry.prototype=new h.Box,h.TrackGroupTypeBox.prototype=new h.FullBox,h.BASIC_BOXES.forEach((function(e){h.createBoxCtor(e)})),h.FULL_BOXES.forEach((function(e){h.createFullBoxCtor(e)})),h.CONTAINER_BOXES.forEach((function(e){h.createContainerBoxCtor(e[0],null,e[1])}))},Box:function(e,t,i){this.type=e,this.size=t,this.uuid=i},FullBox:function(e,t,i){h.Box.call(this,e,t,i),this.flags=0,this.version=0},ContainerBox:function(e,t,i){h.Box.call(this,e,t,i),this.boxes=[]},SampleEntry:function(e,t,i,n){h.ContainerBox.call(this,e,t),this.hdr_size=i,this.start=n},SampleGroupEntry:function(e){this.grouping_type=e},TrackGroupTypeBox:function(e,t){h.FullBox.call(this,e,t)},createBoxCtor:function(e,t){h.boxCodes.push(e),h[e+"Box"]=function(t){h.Box.call(this,e,t)},h[e+"Box"].prototype=new h.Box,t&&(h[e+"Box"].prototype.parse=t)},createFullBoxCtor:function(e,t){h[e+"Box"]=function(t){h.FullBox.call(this,e,t)},h[e+"Box"].prototype=new h.FullBox,h[e+"Box"].prototype.parse=function(e){this.parseFullHeader(e),t&&t.call(this,e)}},addSubBoxArrays:function(e){if(e){this.subBoxNames=e;for(var t=e.length,i=0;ii?(a.error("BoxParser","Box of type '"+d+"' has a size "+l+" greater than its container size "+i),{code:h.ERR_NOT_ENOUGH_DATA,type:d,size:l,hdr_size:u,start:o}):o+l>e.getEndPosition()?(e.seek(o),a.info("BoxParser","Not enough data in stream to parse the entire '"+d+"' box"),{code:h.ERR_NOT_ENOUGH_DATA,type:d,size:l,hdr_size:u,start:o}):t?{code:h.OK,type:d,size:l,hdr_size:u,start:o}:(h[d+"Box"]?n=new h[d+"Box"](l):"uuid"!==d?(a.warn("BoxParser","Unknown box type: '"+d+"'"),(n=new h.Box(d,l)).has_unparsed_data=!0):h.UUIDBoxes[s]?n=new h.UUIDBoxes[s](l):(a.warn("BoxParser","Unknown uuid type: '"+s+"'"),(n=new h.Box(d,l)).uuid=s,n.has_unparsed_data=!0),n.hdr_size=u,n.start=o,n.write===h.Box.prototype.write&&"mdat"!==n.type&&(a.info("BoxParser","'"+c+"' box writing not yet implemented, keeping unparsed data in memory for later write"),n.parseDataAndRewind(e)),n.parse(e),(r=e.getPosition()-(n.start+n.size))<0?(a.warn("BoxParser","Parsing of box '"+c+"' did not read the entire indicated box data size (missing "+-r+" bytes), seeking forward"),e.seek(n.start+n.size)):r>0&&(a.error("BoxParser","Parsing of box '"+c+"' read "+r+" more bytes than the indicated box data size, seeking backwards"),e.seek(n.start+n.size)),{code:h.OK,box:n,size:n.size})},h.Box.prototype.parse=function(e){"mdat"!=this.type?this.data=e.readUint8Array(this.size-this.hdr_size):0===this.size?e.seek(e.getEndPosition()):e.seek(this.start+this.size)},h.Box.prototype.parseDataAndRewind=function(e){this.data=e.readUint8Array(this.size-this.hdr_size),e.position-=this.size-this.hdr_size},h.FullBox.prototype.parseDataAndRewind=function(e){this.parseFullHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size),this.hdr_size-=4,e.position-=this.size-this.hdr_size},h.FullBox.prototype.parseFullHeader=function(e){this.version=e.readUint8(),this.flags=e.readUint24(),this.hdr_size+=4},h.FullBox.prototype.parse=function(e){this.parseFullHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size)},h.ContainerBox.prototype.parse=function(e){for(var t,i;e.getPosition()>10&31,t[1]=this.language>>5&31,t[2]=31&this.language,this.languageString=String.fromCharCode(t[0]+96,t[1]+96,t[2]+96)},h.SAMPLE_ENTRY_TYPE_VISUAL="Visual",h.SAMPLE_ENTRY_TYPE_AUDIO="Audio",h.SAMPLE_ENTRY_TYPE_HINT="Hint",h.SAMPLE_ENTRY_TYPE_METADATA="Metadata",h.SAMPLE_ENTRY_TYPE_SUBTITLE="Subtitle",h.SAMPLE_ENTRY_TYPE_SYSTEM="System",h.SAMPLE_ENTRY_TYPE_TEXT="Text",h.SampleEntry.prototype.parseHeader=function(e){e.readUint8Array(6),this.data_reference_index=e.readUint16(),this.hdr_size+=8},h.SampleEntry.prototype.parse=function(e){this.parseHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size)},h.SampleEntry.prototype.parseDataAndRewind=function(e){this.parseHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size),this.hdr_size-=8,e.position-=this.size-this.hdr_size},h.SampleEntry.prototype.parseFooter=function(e){h.ContainerBox.prototype.parse.call(this,e)},h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_HINT),h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_METADATA),h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_SUBTITLE),h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_SYSTEM),h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_TEXT),h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,(function(e){var t;this.parseHeader(e),e.readUint16(),e.readUint16(),e.readUint32Array(3),this.width=e.readUint16(),this.height=e.readUint16(),this.horizresolution=e.readUint32(),this.vertresolution=e.readUint32(),e.readUint32(),this.frame_count=e.readUint16(),t=Math.min(31,e.readUint8()),this.compressorname=e.readString(t),t<31&&e.readString(31-t),this.depth=e.readUint16(),e.readUint16(),this.parseFooter(e)})),h.createMediaSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_AUDIO,(function(e){this.parseHeader(e),e.readUint32Array(2),this.channel_count=e.readUint16(),this.samplesize=e.readUint16(),e.readUint16(),e.readUint16(),this.samplerate=e.readUint32()/65536,this.parseFooter(e)})),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"avc1"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"avc2"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"avc3"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"avc4"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"av01"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"hvc1"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"hev1"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_AUDIO,"mp4a"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_AUDIO,"ac-3"),h.createSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_AUDIO,"ec-3"),h.createEncryptedSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_VISUAL,"encv"),h.createEncryptedSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_AUDIO,"enca"),h.createEncryptedSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_SUBTITLE,"encu"),h.createEncryptedSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_SYSTEM,"encs"),h.createEncryptedSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_TEXT,"enct"),h.createEncryptedSampleEntryCtor(h.SAMPLE_ENTRY_TYPE_METADATA,"encm"),h.createBoxCtor("av1C",(function(e){var t=e.readUint8();if(t>>7&!1)a.error("av1C marker problem");else if(this.version=127&t,1===this.version)if(t=e.readUint8(),this.seq_profile=t>>5&7,this.seq_level_idx_0=31&t,t=e.readUint8(),this.seq_tier_0=t>>7&1,this.high_bitdepth=t>>6&1,this.twelve_bit=t>>5&1,this.monochrome=t>>4&1,this.chroma_subsampling_x=t>>3&1,this.chroma_subsampling_y=t>>2&1,this.chroma_sample_position=3&t,t=e.readUint8(),this.reserved_1=t>>5&7,0===this.reserved_1){if(this.initial_presentation_delay_present=t>>4&1,1===this.initial_presentation_delay_present)this.initial_presentation_delay_minus_one=15&t;else if(this.reserved_2=15&t,0!==this.reserved_2)return void a.error("av1C reserved_2 parsing problem");var i=this.size-this.hdr_size-4;this.configOBUs=e.readUint8Array(i)}else a.error("av1C reserved_1 parsing problem");else a.error("av1C version "+this.version+" not supported")})),h.createBoxCtor("avcC",(function(e){var t,i;for(this.configurationVersion=e.readUint8(),this.AVCProfileIndication=e.readUint8(),this.profile_compatibility=e.readUint8(),this.AVCLevelIndication=e.readUint8(),this.lengthSizeMinusOne=3&e.readUint8(),this.nb_SPS_nalus=31&e.readUint8(),i=this.size-this.hdr_size-6,this.SPS=[],t=0;t0&&(this.ext=e.readUint8Array(i))})),h.createBoxCtor("btrt",(function(e){this.bufferSizeDB=e.readUint32(),this.maxBitrate=e.readUint32(),this.avgBitrate=e.readUint32()})),h.createBoxCtor("clap",(function(e){this.cleanApertureWidthN=e.readUint32(),this.cleanApertureWidthD=e.readUint32(),this.cleanApertureHeightN=e.readUint32(),this.cleanApertureHeightD=e.readUint32(),this.horizOffN=e.readUint32(),this.horizOffD=e.readUint32(),this.vertOffN=e.readUint32(),this.vertOffD=e.readUint32()})),h.createBoxCtor("clli",(function(e){this.max_content_light_level=e.readUint16(),this.max_pic_average_light_level=e.readUint16()})),h.createFullBoxCtor("co64",(function(e){var t,i;if(t=e.readUint32(),this.chunk_offsets=[],0===this.version)for(i=0;i>7}else("rICC"===this.colour_type||"prof"===this.colour_type)&&(this.ICC_profile=e.readUint8Array(this.size-4))})),h.createFullBoxCtor("cprt",(function(e){this.parseLanguage(e),this.notice=e.readCString()})),h.createFullBoxCtor("cslg",(function(e){0===this.version&&(this.compositionToDTSShift=e.readInt32(),this.leastDecodeToDisplayDelta=e.readInt32(),this.greatestDecodeToDisplayDelta=e.readInt32(),this.compositionStartTime=e.readInt32(),this.compositionEndTime=e.readInt32())})),h.createFullBoxCtor("ctts",(function(e){var t,i;if(t=e.readUint32(),this.sample_counts=[],this.sample_offsets=[],0===this.version)for(i=0;i>6,this.bsid=t>>1&31,this.bsmod=(1&t)<<2|i>>6&3,this.acmod=i>>3&7,this.lfeon=i>>2&1,this.bit_rate_code=3&i|n>>5&7})),h.createBoxCtor("dec3",(function(e){var t=e.readUint16();this.data_rate=t>>3,this.num_ind_sub=7&t,this.ind_subs=[];for(var i=0;i>6,n.bsid=r>>1&31,n.bsmod=(1&r)<<4|a>>4&15,n.acmod=a>>1&7,n.lfeon=1&a,n.num_dep_sub=s>>1&15,n.num_dep_sub>0&&(n.chan_loc=(1&s)<<8|e.readUint8())}})),h.createFullBoxCtor("dfLa",(function(e){var t=[],i=["STREAMINFO","PADDING","APPLICATION","SEEKTABLE","VORBIS_COMMENT","CUESHEET","PICTURE","RESERVED"];for(this.parseFullHeader(e);;){var n=e.readUint8(),r=Math.min(127&n,i.length-1);if(r?e.readUint8Array(e.readUint24()):(e.readUint8Array(13),this.samplerate=e.readUint32()>>12,e.readUint8Array(20)),t.push(i[r]),128&n)break}this.numMetadataBlocks=t.length+" ("+t.join(", ")+")"})),h.createBoxCtor("dimm",(function(e){this.bytessent=e.readUint64()})),h.createBoxCtor("dmax",(function(e){this.time=e.readUint32()})),h.createBoxCtor("dmed",(function(e){this.bytessent=e.readUint64()})),h.createFullBoxCtor("dref",(function(e){var t,i;this.entries=[];for(var n=e.readUint32(),r=0;r=4;)this.compatible_brands[i]=e.readString(4),t-=4,i++})),h.createFullBoxCtor("hdlr",(function(e){0===this.version&&(e.readUint32(),this.handler=e.readString(4),e.readUint32Array(3),this.name=e.readString(this.size-this.hdr_size-20),"\0"===this.name[this.name.length-1]&&(this.name=this.name.slice(0,-1)))})),h.createBoxCtor("hvcC",(function(e){var t,i,n,r;this.configurationVersion=e.readUint8(),r=e.readUint8(),this.general_profile_space=r>>6,this.general_tier_flag=(32&r)>>5,this.general_profile_idc=31&r,this.general_profile_compatibility=e.readUint32(),this.general_constraint_indicator=e.readUint8Array(6),this.general_level_idc=e.readUint8(),this.min_spatial_segmentation_idc=4095&e.readUint16(),this.parallelismType=3&e.readUint8(),this.chroma_format_idc=3&e.readUint8(),this.bit_depth_luma_minus8=7&e.readUint8(),this.bit_depth_chroma_minus8=7&e.readUint8(),this.avgFrameRate=e.readUint16(),r=e.readUint8(),this.constantFrameRate=r>>6,this.numTemporalLayers=(13&r)>>3,this.temporalIdNested=(4&r)>>2,this.lengthSizeMinusOne=3&r,this.nalu_arrays=[];var a=e.readUint8();for(t=0;t>7,s.nalu_type=63&r;var o=e.readUint16();for(i=0;i>4&15,this.length_size=15&t,t=e.readUint8(),this.base_offset_size=t>>4&15,1===this.version||2===this.version?this.index_size=15&t:this.index_size=0,this.items=[];var i=0;if(this.version<2)i=e.readUint16();else{if(2!==this.version)throw"version of iloc box not supported";i=e.readUint32()}for(var n=0;n=2&&(2===this.version?this.item_ID=e.readUint16():3===this.version&&(this.item_ID=e.readUint32()),this.item_protection_index=e.readUint16(),this.item_type=e.readString(4),this.item_name=e.readCString(),"mime"===this.item_type?(this.content_type=e.readCString(),this.content_encoding=e.readCString()):"uri "===this.item_type&&(this.item_uri_type=e.readCString()))})),h.createFullBoxCtor("ipma",(function(e){var t,i;for(entry_count=e.readUint32(),this.associations=[],t=0;t>7==1,1&this.flags?s.property_index=(127&a)<<8|e.readUint8():s.property_index=127&a}}})),h.createFullBoxCtor("iref",(function(e){var t,i;for(this.references=[];e.getPosition()>7,n.assignment_type=127&r,n.assignment_type){case 0:n.grouping_type=e.readString(4);break;case 1:n.grouping_type=e.readString(4),n.grouping_type_parameter=e.readUint32();break;case 2:case 3:break;case 4:n.sub_track_id=e.readUint32();break;default:a.warn("BoxParser","Unknown leva assignement type")}}})),h.createBoxCtor("maxr",(function(e){this.period=e.readUint32(),this.bytes=e.readUint32()})),h.createBoxCtor("mdcv",(function(e){this.display_primaries=[],this.display_primaries[0]={},this.display_primaries[0].x=e.readUint16(),this.display_primaries[0].y=e.readUint16(),this.display_primaries[1]={},this.display_primaries[1].x=e.readUint16(),this.display_primaries[1].y=e.readUint16(),this.display_primaries[2]={},this.display_primaries[2].x=e.readUint16(),this.display_primaries[2].y=e.readUint16(),this.white_point={},this.white_point.x=e.readUint16(),this.white_point.y=e.readUint16(),this.max_display_mastering_luminance=e.readUint32(),this.min_display_mastering_luminance=e.readUint32()})),h.createFullBoxCtor("mdhd",(function(e){1==this.version?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.timescale=e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.timescale=e.readUint32(),this.duration=e.readUint32()),this.parseLanguage(e),e.readUint16()})),h.createFullBoxCtor("mehd",(function(e){1&this.flags&&(a.warn("BoxParser","mehd box incorrectly uses flags set to 1, converting version to 1"),this.version=1),1==this.version?this.fragment_duration=e.readUint64():this.fragment_duration=e.readUint32()})),h.createFullBoxCtor("meta",(function(e){this.boxes=[],h.ContainerBox.prototype.parse.call(this,e)})),h.createFullBoxCtor("mfhd",(function(e){this.sequence_number=e.readUint32()})),h.createFullBoxCtor("mfro",(function(e){this._size=e.readUint32()})),h.createFullBoxCtor("mvhd",(function(e){1==this.version?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.timescale=e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.timescale=e.readUint32(),this.duration=e.readUint32()),this.rate=e.readUint32(),this.volume=e.readUint16()>>8,e.readUint16(),e.readUint32Array(2),this.matrix=e.readUint32Array(9),e.readUint32Array(6),this.next_track_id=e.readUint32()})),h.createBoxCtor("npck",(function(e){this.packetssent=e.readUint32()})),h.createBoxCtor("nump",(function(e){this.packetssent=e.readUint64()})),h.createFullBoxCtor("padb",(function(e){var t=e.readUint32();this.padbits=[];for(var i=0;i0){var t=e.readUint32();this.kid=[];for(var i=0;i0&&(this.data=e.readUint8Array(n))})),h.createFullBoxCtor("clef",(function(e){this.width=e.readUint32(),this.height=e.readUint32()})),h.createFullBoxCtor("enof",(function(e){this.width=e.readUint32(),this.height=e.readUint32()})),h.createFullBoxCtor("prof",(function(e){this.width=e.readUint32(),this.height=e.readUint32()})),h.createContainerBoxCtor("tapt",null,["clef","prof","enof"]),h.createBoxCtor("rtp ",(function(e){this.descriptionformat=e.readString(4),this.sdptext=e.readString(this.size-this.hdr_size-4)})),h.createFullBoxCtor("saio",(function(e){1&this.flags&&(this.aux_info_type=e.readUint32(),this.aux_info_type_parameter=e.readUint32());var t=e.readUint32();this.offset=[];for(var i=0;i>7,this.avgRateFlag=t>>6&1,this.durationFlag&&(this.duration=e.readUint32()),this.avgRateFlag&&(this.accurateStatisticsFlag=e.readUint8(),this.avgBitRate=e.readUint16(),this.avgFrameRate=e.readUint16()),this.dependency=[];for(var i=e.readUint8(),n=0;n>7,this.num_leading_samples=127&t})),h.createSampleGroupCtor("rash",(function(e){if(this.operation_point_count=e.readUint16(),this.description_length!==2+(1===this.operation_point_count?2:6*this.operation_point_count)+9)a.warn("BoxParser","Mismatch in "+this.grouping_type+" sample group length"),this.data=e.readUint8Array(this.description_length-2);else{if(1===this.operation_point_count)this.target_rate_share=e.readUint16();else{this.target_rate_share=[],this.available_bitrate=[];for(var t=0;t>4,this.skip_byte_block=15&t,this.isProtected=e.readUint8(),this.Per_Sample_IV_Size=e.readUint8(),this.KID=h.parseHex16(e),this.constant_IV_size=0,this.constant_IV=0,1===this.isProtected&&0===this.Per_Sample_IV_Size&&(this.constant_IV_size=e.readUint8(),this.constant_IV=e.readUint8Array(this.constant_IV_size))})),h.createSampleGroupCtor("stsa",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),h.createSampleGroupCtor("sync",(function(e){var t=e.readUint8();this.NAL_unit_type=63&t})),h.createSampleGroupCtor("tele",(function(e){var t=e.readUint8();this.level_independently_decodable=t>>7})),h.createSampleGroupCtor("tsas",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),h.createSampleGroupCtor("tscl",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),h.createSampleGroupCtor("vipr",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),h.createFullBoxCtor("sbgp",(function(e){this.grouping_type=e.readString(4),1===this.version?this.grouping_type_parameter=e.readUint32():this.grouping_type_parameter=0,this.entries=[];for(var t=e.readUint32(),i=0;i>6,this.sample_depends_on[n]=t>>4&3,this.sample_is_depended_on[n]=t>>2&3,this.sample_has_redundancy[n]=3&t})),h.createFullBoxCtor("senc"),h.createFullBoxCtor("sgpd",(function(e){this.grouping_type=e.readString(4),a.debug("BoxParser","Found Sample Groups of type "+this.grouping_type),1===this.version?this.default_length=e.readUint32():this.default_length=0,this.version>=2&&(this.default_group_description_index=e.readUint32()),this.entries=[];for(var t=e.readUint32(),i=0;i>31&1,n.referenced_size=2147483647&r,n.subsegment_duration=e.readUint32(),r=e.readUint32(),n.starts_with_SAP=r>>31&1,n.SAP_type=r>>28&7,n.SAP_delta_time=268435455&r}})),h.SingleItemTypeReferenceBox=function(e,t,i,n){h.Box.call(this,e,t),this.hdr_size=i,this.start=n},h.SingleItemTypeReferenceBox.prototype=new h.Box,h.SingleItemTypeReferenceBox.prototype.parse=function(e){this.from_item_ID=e.readUint16();var t=e.readUint16();this.references=[];for(var i=0;i>4&15,this.sample_sizes[t+1]=15&n}else if(8===this.field_size)for(t=0;t0)for(i=0;i>4&15,this.default_skip_byte_block=15&t}this.default_isProtected=e.readUint8(),this.default_Per_Sample_IV_Size=e.readUint8(),this.default_KID=h.parseHex16(e),1===this.default_isProtected&&0===this.default_Per_Sample_IV_Size&&(this.default_constant_IV_size=e.readUint8(),this.default_constant_IV=e.readUint8Array(this.default_constant_IV_size))})),h.createFullBoxCtor("tfdt",(function(e){1==this.version?this.baseMediaDecodeTime=e.readUint64():this.baseMediaDecodeTime=e.readUint32()})),h.createFullBoxCtor("tfhd",(function(e){var t=0;this.track_id=e.readUint32(),this.size-this.hdr_size>t&&this.flags&h.TFHD_FLAG_BASE_DATA_OFFSET?(this.base_data_offset=e.readUint64(),t+=8):this.base_data_offset=0,this.size-this.hdr_size>t&&this.flags&h.TFHD_FLAG_SAMPLE_DESC?(this.default_sample_description_index=e.readUint32(),t+=4):this.default_sample_description_index=0,this.size-this.hdr_size>t&&this.flags&h.TFHD_FLAG_SAMPLE_DUR?(this.default_sample_duration=e.readUint32(),t+=4):this.default_sample_duration=0,this.size-this.hdr_size>t&&this.flags&h.TFHD_FLAG_SAMPLE_SIZE?(this.default_sample_size=e.readUint32(),t+=4):this.default_sample_size=0,this.size-this.hdr_size>t&&this.flags&h.TFHD_FLAG_SAMPLE_FLAGS?(this.default_sample_flags=e.readUint32(),t+=4):this.default_sample_flags=0})),h.createFullBoxCtor("tfra",(function(e){this.track_ID=e.readUint32(),e.readUint24();var t=e.readUint8();this.length_size_of_traf_num=t>>4&3,this.length_size_of_trun_num=t>>2&3,this.length_size_of_sample_num=3&t,this.entries=[];for(var i=e.readUint32(),n=0;n>8,e.readUint16(),this.matrix=e.readInt32Array(9),this.width=e.readUint32(),this.height=e.readUint32()})),h.createBoxCtor("tmax",(function(e){this.time=e.readUint32()})),h.createBoxCtor("tmin",(function(e){this.time=e.readUint32()})),h.createBoxCtor("totl",(function(e){this.bytessent=e.readUint32()})),h.createBoxCtor("tpay",(function(e){this.bytessent=e.readUint32()})),h.createBoxCtor("tpyl",(function(e){this.bytessent=e.readUint64()})),h.TrackGroupTypeBox.prototype.parse=function(e){this.parseFullHeader(e),this.track_group_id=e.readUint32()},h.createTrackGroupCtor("msrc"),h.TrackReferenceTypeBox=function(e,t,i,n){h.Box.call(this,e,t),this.hdr_size=i,this.start=n},h.TrackReferenceTypeBox.prototype=new h.Box,h.TrackReferenceTypeBox.prototype.parse=function(e){this.track_ids=e.readUint32Array((this.size-this.hdr_size)/4)},h.trefBox.prototype.parse=function(e){for(var t,i;e.getPosition()t&&this.flags&h.TRUN_FLAGS_DATA_OFFSET?(this.data_offset=e.readInt32(),t+=4):this.data_offset=0,this.size-this.hdr_size>t&&this.flags&h.TRUN_FLAGS_FIRST_FLAG?(this.first_sample_flags=e.readUint32(),t+=4):this.first_sample_flags=0,this.sample_duration=[],this.sample_size=[],this.sample_flags=[],this.sample_composition_time_offset=[],this.size-this.hdr_size>t)for(var i=0;i0&&(this.location=e.readCString())})),h.createUUIDBox("a5d40b30e81411ddba2f0800200c9a66",!0,!1,(function(e){this.LiveServerManifest=e.readString(this.size-this.hdr_size).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")})),h.createUUIDBox("d08a4f1810f34a82b6c832d8aba183d3",!0,!1,(function(e){this.system_id=h.parseHex16(e);var t=e.readUint32();t>0&&(this.data=e.readUint8Array(t))})),h.createUUIDBox("a2394f525a9b4f14a2446c427c648df4",!0,!1),h.createUUIDBox("8974dbce7be74c5184f97148f9882554",!0,!1,(function(e){this.default_AlgorithmID=e.readUint24(),this.default_IV_size=e.readUint8(),this.default_KID=h.parseHex16(e)})),h.createUUIDBox("d4807ef2ca3946958e5426cb9e46a79f",!0,!1,(function(e){this.fragment_count=e.readUint8(),this.entries=[];for(var t=0;t>4,this.chromaSubsampling=t>>1&7,this.videoFullRangeFlag=1&t,this.colourPrimaries=e.readUint8(),this.transferCharacteristics=e.readUint8(),this.matrixCoefficients=e.readUint8(),this.codecIntializationDataSize=e.readUint16(),this.codecIntializationData=e.readUint8Array(this.codecIntializationDataSize)):(this.profile=e.readUint8(),this.level=e.readUint8(),t=e.readUint8(),this.bitDepth=t>>4&15,this.colorSpace=15&t,t=e.readUint8(),this.chromaSubsampling=t>>4&15,this.transferFunction=t>>1&7,this.videoFullRangeFlag=1&t,this.codecIntializationDataSize=e.readUint16(),this.codecIntializationData=e.readUint8Array(this.codecIntializationDataSize))})),h.createBoxCtor("vttC",(function(e){this.text=e.readString(this.size-this.hdr_size)})),h.SampleEntry.prototype.isVideo=function(){return!1},h.SampleEntry.prototype.isAudio=function(){return!1},h.SampleEntry.prototype.isSubtitle=function(){return!1},h.SampleEntry.prototype.isMetadata=function(){return!1},h.SampleEntry.prototype.isHint=function(){return!1},h.SampleEntry.prototype.getCodec=function(){return this.type.replace(".","")},h.SampleEntry.prototype.getWidth=function(){return""},h.SampleEntry.prototype.getHeight=function(){return""},h.SampleEntry.prototype.getChannelCount=function(){return""},h.SampleEntry.prototype.getSampleRate=function(){return""},h.SampleEntry.prototype.getSampleSize=function(){return""},h.VisualSampleEntry.prototype.isVideo=function(){return!0},h.VisualSampleEntry.prototype.getWidth=function(){return this.width},h.VisualSampleEntry.prototype.getHeight=function(){return this.height},h.AudioSampleEntry.prototype.isAudio=function(){return!0},h.AudioSampleEntry.prototype.getChannelCount=function(){return this.channel_count},h.AudioSampleEntry.prototype.getSampleRate=function(){return this.samplerate},h.AudioSampleEntry.prototype.getSampleSize=function(){return this.samplesize},h.SubtitleSampleEntry.prototype.isSubtitle=function(){return!0},h.MetadataSampleEntry.prototype.isMetadata=function(){return!0},h.decimalToHex=function(e,t){var i=Number(e).toString(16);for(t=null==t?t=2:t;i.length>=1;t+=h.decimalToHex(n,0),t+=".",0===this.hvcC.general_tier_flag?t+="L":t+="H",t+=this.hvcC.general_level_idc;var r=!1,a="";for(e=5;e>=0;e--)(this.hvcC.general_constraint_indicator[e]||r)&&(a="."+h.decimalToHex(this.hvcC.general_constraint_indicator[e],0)+a,r=!0);t+=a}return t},h.mp4aSampleEntry.prototype.getCodec=function(){var e=h.SampleEntry.prototype.getCodec.call(this);if(this.esds&&this.esds.esd){var t=this.esds.esd.getOTI(),i=this.esds.esd.getAudioConfig();return e+"."+h.decimalToHex(t)+(i?"."+i:"")}return e},h.stxtSampleEntry.prototype.getCodec=function(){var e=h.SampleEntry.prototype.getCodec.call(this);return this.mime_format?e+"."+this.mime_format:e},h.av01SampleEntry.prototype.getCodec=function(){var e,t=h.SampleEntry.prototype.getCodec.call(this);return 2===this.av1C.seq_profile&&1===this.av1C.high_bitdepth?e=1===this.av1C.twelve_bit?"12":"10":this.av1C.seq_profile<=2&&(e=1===this.av1C.high_bitdepth?"10":"08"),t+"."+this.av1C.seq_profile+"."+this.av1C.seq_level_idx_0+(this.av1C.seq_tier_0?"H":"M")+"."+e},h.Box.prototype.writeHeader=function(e,t){this.size+=8,this.size>u&&(this.size+=8),"uuid"===this.type&&(this.size+=16),a.debug("BoxWriter","Writing box "+this.type+" of size: "+this.size+" at position "+e.getPosition()+(t||"")),this.size>u?e.writeUint32(1):(this.sizePosition=e.getPosition(),e.writeUint32(this.size)),e.writeString(this.type,null,4),"uuid"===this.type&&e.writeUint8Array(this.uuid),this.size>u&&e.writeUint64(this.size)},h.FullBox.prototype.writeHeader=function(e){this.size+=4,h.Box.prototype.writeHeader.call(this,e," v="+this.version+" f="+this.flags),e.writeUint8(this.version),e.writeUint24(this.flags)},h.Box.prototype.write=function(e){"mdat"===this.type?this.data&&(this.size=this.data.length,this.writeHeader(e),e.writeUint8Array(this.data)):(this.size=this.data?this.data.length:0,this.writeHeader(e),this.data&&e.writeUint8Array(this.data))},h.ContainerBox.prototype.write=function(e){this.size=0,this.writeHeader(e);for(var t=0;t=2&&e.writeUint32(this.default_sample_description_index),e.writeUint32(this.entries.length),t=0;t0)for(t=0;t+1-1||e[i]instanceof h.Box||t[i]instanceof h.Box||void 0===e[i]||void 0===t[i]||"function"==typeof e[i]||"function"==typeof t[i]||e.subBoxNames&&e.subBoxNames.indexOf(i.slice(0,4))>-1||t.subBoxNames&&t.subBoxNames.indexOf(i.slice(0,4))>-1||"data"===i||"start"===i||"size"===i||"creation_time"===i||"modification_time"===i||h.DIFF_PRIMITIVE_ARRAY_PROP_NAMES.indexOf(i)>-1||e[i]===t[i]))return!1;return!0},h.boxEqual=function(e,t){if(!h.boxEqualFields(e,t))return!1;for(var i=0;i=t?e:new Array(t-e.length+1).join(i)+e}function r(e){var t=Math.floor(e/3600),i=Math.floor((e-3600*t)/60),r=Math.floor(e-3600*t-60*i),a=Math.floor(1e3*(e-3600*t-60*i-r));return n(t,2)+":"+n(i,2)+":"+n(r,2)+"."+n(a,3)}for(var a=this.parseSample(i),s="",o=0;o1)for(t=1;t-1&&this.fragmentedTracks.splice(t,1)},m.prototype.setExtractionOptions=function(e,t,i){var n=this.getTrackById(e);if(n){var r={};this.extractedTracks.push(r),r.id=e,r.user=t,r.trak=n,n.nextSample=0,r.nb_samples=1e3,r.samples=[],i&&i.nbSamples&&(r.nb_samples=i.nbSamples)}},m.prototype.unsetExtractionOptions=function(e){for(var t=-1,i=0;i-1&&this.extractedTracks.splice(t,1)},m.prototype.parse=function(){var e,t;if(!this.restoreParsePosition||this.restoreParsePosition())for(;;){if(this.hasIncompleteMdat&&this.hasIncompleteMdat()){if(this.processIncompleteMdat())continue;return}if(this.saveParsePosition&&this.saveParsePosition(),(e=h.parseOneBox(this.stream,!1)).code===h.ERR_NOT_ENOUGH_DATA){if(this.processIncompleteBox){if(this.processIncompleteBox(e))continue;return}return}var i;switch(i="uuid"!==(t=e.box).type?t.type:t.uuid,this.boxes.push(t),i){case"mdat":this.mdats.push(t);break;case"moof":this.moofs.push(t);break;case"moov":this.moovStartFound=!0,0===this.mdats.length&&(this.isProgressive=!0);default:void 0!==this[i]&&a.warn("ISOFile","Duplicate Box of type: "+i+", overriding previous occurrence"),this[i]=t}this.updateUsedBytes&&this.updateUsedBytes(t,e)}},m.prototype.checkBuffer=function(e){if(null==e)throw"Buffer must be defined and non empty";if(void 0===e.fileStart)throw"Buffer must have a fileStart property";return 0===e.byteLength?(a.warn("ISOFile","Ignoring empty buffer (fileStart: "+e.fileStart+")"),this.stream.logBufferLevel(),!1):(a.info("ISOFile","Processing buffer (fileStart: "+e.fileStart+")"),e.usedBytes=0,this.stream.insertBuffer(e),this.stream.logBufferLevel(),!!this.stream.initialized()||(a.warn("ISOFile","Not ready to start parsing"),!1))},m.prototype.appendBuffer=function(e,t){var i;if(this.checkBuffer(e))return this.parse(),this.moovStartFound&&!this.moovStartSent&&(this.moovStartSent=!0,this.onMoovStart&&this.onMoovStart()),this.moov?(this.sampleListBuilt||(this.buildSampleLists(),this.sampleListBuilt=!0),this.updateSampleLists(),this.onReady&&!this.readySent&&(this.readySent=!0,this.onReady(this.getInfo())),this.processSamples(t),this.nextSeekPosition?(i=this.nextSeekPosition,this.nextSeekPosition=void 0):i=this.nextParsePosition,this.stream.getEndFilePositionAfter&&(i=this.stream.getEndFilePositionAfter(i))):i=this.nextParsePosition?this.nextParsePosition:0,this.sidx&&this.onSidx&&!this.sidxSent&&(this.onSidx(this.sidx),this.sidxSent=!0),this.meta&&(this.flattenItemInfo&&!this.itemListBuilt&&(this.flattenItemInfo(),this.itemListBuilt=!0),this.processItems&&this.processItems(this.onItem)),this.stream.cleanBuffers&&(a.info("ISOFile","Done processing buffer (fileStart: "+e.fileStart+") - next buffer to fetch should have a fileStart position of "+i),this.stream.logBufferLevel(),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0),a.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize())),i},m.prototype.getInfo=function(){var e,t,i,n,r,a={},s=new Date("1904-01-01T00:00:00Z").getTime();if(this.moov)for(a.hasMoov=!0,a.duration=this.moov.mvhd.duration,a.timescale=this.moov.mvhd.timescale,a.isFragmented=null!=this.moov.mvex,a.isFragmented&&this.moov.mvex.mehd&&(a.fragment_duration=this.moov.mvex.mehd.fragment_duration),a.isProgressive=this.isProgressive,a.hasIOD=null!=this.moov.iods,a.brands=[],a.brands.push(this.ftyp.major_brand),a.brands=a.brands.concat(this.ftyp.compatible_brands),a.created=new Date(s+1e3*this.moov.mvhd.creation_time),a.modified=new Date(s+1e3*this.moov.mvhd.modification_time),a.tracks=[],a.audioTracks=[],a.videoTracks=[],a.subtitleTracks=[],a.metadataTracks=[],a.hintTracks=[],a.otherTracks=[],e=0;e0?a.mime+='video/mp4; codecs="':a.audioTracks&&a.audioTracks.length>0?a.mime+='audio/mp4; codecs="':a.mime+='application/mp4; codecs="',e=0;e=i.samples.length)&&(a.info("ISOFile","Sending fragmented data on track #"+n.id+" for samples ["+Math.max(0,i.nextSample-n.nb_samples)+","+(i.nextSample-1)+"]"),a.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize()),this.onSegment&&this.onSegment(n.id,n.user,n.segmentStream.buffer,i.nextSample,e||i.nextSample>=i.samples.length),n.segmentStream=null,n!==this.fragmentedTracks[t]))break}}if(null!==this.onSamples)for(t=0;t=i.samples.length)&&(a.debug("ISOFile","Sending samples on track #"+s.id+" for sample "+i.nextSample),this.onSamples&&this.onSamples(s.id,s.user,s.samples),s.samples=[],s!==this.extractedTracks[t]))break}}}},m.prototype.getBox=function(e){var t=this.getBoxes(e,!0);return t.length?t[0]:null},m.prototype.getBoxes=function(e,t){var i=[];return m._sweep.call(this,e,i,t),i},m._sweep=function(e,t,i){for(var n in this.type&&this.type==e&&t.push(this),this.boxes){if(t.length&&i)return;m._sweep.call(this.boxes[n],e,t,i)}},m.prototype.getTrackSamplesInfo=function(e){var t=this.getTrackById(e);return t?t.samples:void 0},m.prototype.getTrackSample=function(e,t){var i=this.getTrackById(e);return this.getSample(i,t)},m.prototype.releaseUsedSamples=function(e,t){var i=0,n=this.getTrackById(e);n.lastValidSample||(n.lastValidSample=0);for(var r=n.lastValidSample;re*r.timescale){l=n-1;break}t&&r.is_sync&&(u=n)}for(t&&(l=u),e=i.samples[l].cts,i.nextSample=l;i.samples[l].alreadyRead===i.samples[l].size&&i.samples[l+1];)l++;return s=i.samples[l].offset+i.samples[l].alreadyRead,a.info("ISOFile","Seeking to "+(t?"RAP":"")+" sample #"+i.nextSample+" on track "+i.tkhd.track_id+", time "+a.getDurationString(e,o)+" and offset: "+s),{offset:s,time:e/o}},m.prototype.seek=function(e,t){var i,n,r,s=this.moov,o={offset:1/0,time:1/0};if(this.moov){for(r=0;r-1){s=o;break}switch(s){case"Visual":r.add("vmhd").set("graphicsmode",0).set("opcolor",[0,0,0]),a.set("width",t.width).set("height",t.height).set("horizresolution",72<<16).set("vertresolution",72<<16).set("frame_count",1).set("compressorname",t.type+" Compressor").set("depth",24);break;case"Audio":r.add("smhd").set("balance",t.balance||0),a.set("channel_count",t.channel_count||2).set("samplesize",t.samplesize||16).set("samplerate",t.samplerate||65536);break;case"Hint":r.add("hmhd");break;case"Subtitle":switch(r.add("sthd"),t.type){case"stpp":a.set("namespace",t.namespace||"nonamespace").set("schema_location",t.schema_location||"").set("auxiliary_mime_types",t.auxiliary_mime_types||"")}break;case"Metadata":case"System":default:r.add("nmhd")}t.description&&a.addBox(t.description),t.description_boxes&&t.description_boxes.forEach((function(e){a.addBox(e)})),r.add("dinf").add("dref").addEntry((new h["url Box"]).set("flags",1));var d=r.add("stbl");return d.add("stsd").addEntry(a),d.add("stts").set("sample_counts",[]).set("sample_deltas",[]),d.add("stsc").set("first_chunk",[]).set("samples_per_chunk",[]).set("sample_description_index",[]),d.add("stco").set("chunk_offsets",[]),d.add("stsz").set("sample_sizes",[]),this.moov.mvex.add("trex").set("track_id",t.id).set("default_sample_description_index",t.default_sample_description_index||1).set("default_sample_duration",t.default_sample_duration||0).set("default_sample_size",t.default_sample_size||0).set("default_sample_flags",t.default_sample_flags||0),this.buildTrakSampleLists(i),t.id}},h.Box.prototype.computeSize=function(e){var t=e||new o;t.endianness=o.BIG_ENDIAN,this.write(t)},m.prototype.addSample=function(e,t,i){var n=i||{},r={},a=this.getTrackById(e);if(null!==a){r.number=a.samples.length,r.track_id=a.tkhd.track_id,r.timescale=a.mdia.mdhd.timescale,r.description_index=n.sample_description_index?n.sample_description_index-1:0,r.description=a.mdia.minf.stbl.stsd.entries[r.description_index],r.data=t,r.size=t.length,r.alreadyRead=r.size,r.duration=n.duration||1,r.cts=n.cts||0,r.dts=n.dts||0,r.is_sync=n.is_sync||!1,r.is_leading=n.is_leading||0,r.depends_on=n.depends_on||0,r.is_depended_on=n.is_depended_on||0,r.has_redundancy=n.has_redundancy||0,r.degradation_priority=n.degradation_priority||0,r.offset=0,r.subsamples=n.subsamples,a.samples.push(r),a.samples_size+=r.size,a.samples_duration+=r.duration,this.processSamples();var s=m.createSingleSampleMoof(r);return this.addBox(s),s.computeSize(),s.trafs[0].truns[0].data_offset=s.size+8,this.add("mdat").data=t,r}},m.createSingleSampleMoof=function(e){var t=new h.moofBox;t.add("mfhd").set("sequence_number",this.nextMoofNumber),this.nextMoofNumber++;var i=t.add("traf");return i.add("tfhd").set("track_id",e.track_id).set("flags",h.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),i.add("tfdt").set("baseMediaDecodeTime",e.dts),i.add("trun").set("flags",h.TRUN_FLAGS_DATA_OFFSET|h.TRUN_FLAGS_DURATION|h.TRUN_FLAGS_SIZE|h.TRUN_FLAGS_FLAGS|h.TRUN_FLAGS_CTS_OFFSET).set("data_offset",0).set("first_sample_flags",0).set("sample_count",1).set("sample_duration",[e.duration]).set("sample_size",[e.size]).set("sample_flags",[0]).set("sample_composition_time_offset",[e.cts-e.dts]),t},m.prototype.lastMoofIndex=0,m.prototype.samplesDataSize=0,m.prototype.resetTables=function(){var e,t,i,n,r,a;for(this.initial_duration=this.moov.mvhd.duration,this.moov.mvhd.duration=0,e=0;e=2&&(u=r[s].grouping_type+"/0",(o=new l(r[s].grouping_type,0)).is_fragment=!0,t.sample_groups_info[u]||(t.sample_groups_info[u]=o))}else for(s=0;s=2&&(u=n[s].grouping_type+"/0",o=new l(n[s].grouping_type,0),e.sample_groups_info[u]||(e.sample_groups_info[u]=o))},m.setSampleGroupProperties=function(e,t,i,n){var r,a;for(r in t.sample_groups=[],n){var s;if(t.sample_groups[r]={},t.sample_groups[r].grouping_type=n[r].grouping_type,t.sample_groups[r].grouping_type_parameter=n[r].grouping_type_parameter,i>=n[r].last_sample_in_run&&(n[r].last_sample_in_run<0&&(n[r].last_sample_in_run=0),n[r].entry_index++,n[r].entry_index<=n[r].sbgp.entries.length-1&&(n[r].last_sample_in_run+=n[r].sbgp.entries[n[r].entry_index].sample_count)),n[r].entry_index<=n[r].sbgp.entries.length-1?t.sample_groups[r].group_description_index=n[r].sbgp.entries[n[r].entry_index].group_description_index:t.sample_groups[r].group_description_index=-1,0!==t.sample_groups[r].group_description_index)s=n[r].fragment_description?n[r].fragment_description:n[r].description,t.sample_groups[r].group_description_index>0?(a=t.sample_groups[r].group_description_index>65535?(t.sample_groups[r].group_description_index>>16)-1:t.sample_groups[r].group_description_index-1,s&&a>=0&&(t.sample_groups[r].description=s.entries[a])):s&&s.version>=2&&s.default_group_description_index>0&&(t.sample_groups[r].description=s.entries[s.default_group_description_index-1])}},m.process_sdtp=function(e,t,i){t&&(e?(t.is_leading=e.is_leading[i],t.depends_on=e.sample_depends_on[i],t.is_depended_on=e.sample_is_depended_on[i],t.has_redundancy=e.sample_has_redundancy[i]):(t.is_leading=0,t.depends_on=0,t.is_depended_on=0,t.has_redundancy=0))},m.prototype.buildSampleLists=function(){var e,t;for(e=0;ey&&(b++,y<0&&(y=0),y+=a.sample_counts[b]),t>0?(e.samples[t-1].duration=a.sample_deltas[b],e.samples_duration+=e.samples[t-1].duration,A.dts=e.samples[t-1].dts+e.samples[t-1].duration):A.dts=0,s?(t>=T&&(S++,T<0&&(T=0),T+=s.sample_counts[S]),A.cts=e.samples[t].dts+s.sample_offsets[S]):A.cts=A.dts,o?(t==o.sample_numbers[E]-1?(A.is_sync=!0,E++):(A.is_sync=!1,A.degradation_priority=0),l&&l.entries[w].sample_delta+C==t+1&&(A.subsamples=l.entries[w].subsamples,C+=l.entries[w].sample_delta,w++)):A.is_sync=!0,m.process_sdtp(e.mdia.minf.stbl.sdtp,A,A.number),A.degradation_priority=c?c.priority[t]:0,l&&l.entries[w].sample_delta+C==t&&(A.subsamples=l.entries[w].subsamples,C+=l.entries[w].sample_delta),(d.length>0||h.length>0)&&m.setSampleGroupProperties(e,A,t,e.sample_groups_info)}t>0&&(e.samples[t-1].duration=Math.max(e.mdia.mdhd.duration-e.samples[t-1].dts,0),e.samples_duration+=e.samples[t-1].duration)}},m.prototype.updateSampleLists=function(){var e,t,i,n,r,a,s,o,u,l,d,c,f,p,g;if(void 0!==this.moov)for(;this.lastMoofIndex0&&m.initSampleGroups(c,d,d.sbgps,c.mdia.minf.stbl.sgpds,d.sgpds),t=0;t0?p.dts=c.samples[c.samples.length-2].dts+c.samples[c.samples.length-2].duration:(d.tfdt?p.dts=d.tfdt.baseMediaDecodeTime:p.dts=0,c.first_traf_merged=!0),p.cts=p.dts,_.flags&h.TRUN_FLAGS_CTS_OFFSET&&(p.cts=p.dts+_.sample_composition_time_offset[i]),g=s,_.flags&h.TRUN_FLAGS_FLAGS?g=_.sample_flags[i]:0===i&&_.flags&h.TRUN_FLAGS_FIRST_FLAG&&(g=_.first_sample_flags),p.is_sync=!(g>>16&1),p.is_leading=g>>26&3,p.depends_on=g>>24&3,p.is_depended_on=g>>22&3,p.has_redundancy=g>>20&3,p.degradation_priority=65535&g;var v=!!(d.tfhd.flags&h.TFHD_FLAG_BASE_DATA_OFFSET),y=!!(d.tfhd.flags&h.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),b=!!(_.flags&h.TRUN_FLAGS_DATA_OFFSET),T=0;T=v?d.tfhd.base_data_offset:y||0===t?l.start:o,p.offset=0===t&&0===i?b?T+_.data_offset:T:o,o=p.offset+p.size,(d.sbgps.length>0||d.sgpds.length>0||c.mdia.minf.stbl.sbgps.length>0||c.mdia.minf.stbl.sgpds.length>0)&&m.setSampleGroupProperties(c,p,p.number_in_traf,d.sample_groups_info)}}if(d.subs){c.has_fragment_subsamples=!0;var S=d.first_sample_index;for(t=0;t-1))return null;var s=(i=this.stream.buffers[r]).byteLength-(n.offset+n.alreadyRead-i.fileStart);if(n.size-n.alreadyRead<=s)return a.debug("ISOFile","Getting sample #"+t+" data (alreadyRead: "+n.alreadyRead+" offset: "+(n.offset+n.alreadyRead-i.fileStart)+" read size: "+(n.size-n.alreadyRead)+" full size: "+n.size+")"),o.memcpy(n.data.buffer,n.alreadyRead,i,n.offset+n.alreadyRead-i.fileStart,n.size-n.alreadyRead),i.usedBytes+=n.size-n.alreadyRead,this.stream.logBufferLevel(),n.alreadyRead=n.size,n;if(0===s)return null;a.debug("ISOFile","Getting sample #"+t+" partial data (alreadyRead: "+n.alreadyRead+" offset: "+(n.offset+n.alreadyRead-i.fileStart)+" read size: "+s+" full size: "+n.size+")"),o.memcpy(n.data.buffer,n.alreadyRead,i,n.offset+n.alreadyRead-i.fileStart,s),n.alreadyRead+=s,i.usedBytes+=s,this.stream.logBufferLevel()}},m.prototype.releaseSample=function(e,t){var i=e.samples[t];return i.data?(this.samplesDataSize-=i.size,i.data=null,i.alreadyRead=0,i.size):0},m.prototype.getAllocatedSampleDataSize=function(){return this.samplesDataSize},m.prototype.getCodecs=function(){var e,t="";for(e=0;e0&&(t+=","),t+=this.moov.traks[e].mdia.minf.stbl.stsd.entries[0].getCodec()}return t},m.prototype.getTrexById=function(e){var t;if(!this.moov||!this.moov.mvex)return null;for(t=0;t0&&(i.protection=r.ipro.protections[r.iinf.item_infos[e].protection_index-1]),r.iinf.item_infos[e].item_type?i.type=r.iinf.item_infos[e].item_type:i.type="mime",i.content_type=r.iinf.item_infos[e].content_type,i.content_encoding=r.iinf.item_infos[e].content_encoding;if(r.iloc)for(e=0;e0){var c=r.iprp.ipco.boxes[h.property_index-1];i.properties[c.type]=c,i.properties.boxes.push(c)}}}}}},m.prototype.getItem=function(e){var t,i;if(!this.meta)return null;if(!(i=this.items[e]).data&&i.size)i.data=new Uint8Array(i.size),i.alreadyRead=0,this.itemsDataSize+=i.size,a.debug("ISOFile","Allocating item #"+e+" of size "+i.size+" (total: "+this.itemsDataSize+")");else if(i.alreadyRead===i.size)return i;for(var n=0;n-1))return null;var u=(t=this.stream.buffers[s]).byteLength-(r.offset+r.alreadyRead-t.fileStart);if(!(r.length-r.alreadyRead<=u))return a.debug("ISOFile","Getting item #"+e+" extent #"+n+" partial data (alreadyRead: "+r.alreadyRead+" offset: "+(r.offset+r.alreadyRead-t.fileStart)+" read size: "+u+" full extent size: "+r.length+" full item size: "+i.size+")"),o.memcpy(i.data.buffer,i.alreadyRead,t,r.offset+r.alreadyRead-t.fileStart,u),r.alreadyRead+=u,i.alreadyRead+=u,t.usedBytes+=u,this.stream.logBufferLevel(),null;a.debug("ISOFile","Getting item #"+e+" extent #"+n+" data (alreadyRead: "+r.alreadyRead+" offset: "+(r.offset+r.alreadyRead-t.fileStart)+" read size: "+(r.length-r.alreadyRead)+" full extent size: "+r.length+" full item size: "+i.size+")"),o.memcpy(i.data.buffer,i.alreadyRead,t,r.offset+r.alreadyRead-t.fileStart,r.length-r.alreadyRead),t.usedBytes+=r.length-r.alreadyRead,this.stream.logBufferLevel(),i.alreadyRead+=r.length-r.alreadyRead,r.alreadyRead=r.length}}return i.alreadyRead===i.size?i:null},m.prototype.releaseItem=function(e){var t=this.items[e];if(t.data){this.itemsDataSize-=t.size,t.data=null,t.alreadyRead=0;for(var i=0;i0?this.moov.traks[e].samples[0].duration:0),t.push(n)}return t},h.Box.prototype.printHeader=function(e){this.size+=8,this.size>u&&(this.size+=8),"uuid"===this.type&&(this.size+=16),e.log(e.indent+"size:"+this.size),e.log(e.indent+"type:"+this.type)},h.FullBox.prototype.printHeader=function(e){this.size+=4,h.Box.prototype.printHeader.call(this,e),e.log(e.indent+"version:"+this.version),e.log(e.indent+"flags:"+this.flags)},h.Box.prototype.print=function(e){this.printHeader(e)},h.ContainerBox.prototype.print=function(e){this.printHeader(e);for(var t=0;t>8)),e.log(e.indent+"matrix: "+this.matrix.join(", ")),e.log(e.indent+"next_track_id: "+this.next_track_id)},h.tkhdBox.prototype.print=function(e){h.FullBox.prototype.printHeader.call(this,e),e.log(e.indent+"creation_time: "+this.creation_time),e.log(e.indent+"modification_time: "+this.modification_time),e.log(e.indent+"track_id: "+this.track_id),e.log(e.indent+"duration: "+this.duration),e.log(e.indent+"volume: "+(this.volume>>8)),e.log(e.indent+"matrix: "+this.matrix.join(", ")),e.log(e.indent+"layer: "+this.layer),e.log(e.indent+"alternate_group: "+this.alternate_group),e.log(e.indent+"width: "+this.width),e.log(e.indent+"height: "+this.height)};var g={createFile:function(e,t){var i=void 0===e||e,n=new m(t);return n.discardMdatData=!i,n}};void 0!==i&&(i.createFile=g.createFile)},{}],41:[function(e,t,i){ -/*! @name mpd-parser @version 0.19.0 @license Apache-2.0 */ -"use strict";Object.defineProperty(i,"__esModule",{value:!0});var n=e("@videojs/vhs-utils/cjs/resolve-url"),r=e("global/window"),a=e("@videojs/vhs-utils/cjs/decode-b64-to-uint8-array"),s=e("@xmldom/xmldom");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=o(n),l=o(r),d=o(a),h=function(e){return!!e&&"object"==typeof e},c=function e(){for(var t=arguments.length,i=new Array(t),n=0;n=0&&(f.minimumUpdatePeriod=1e3*u),t&&(f.locations=t),"dynamic"===s&&(f.suggestedPresentationDelay=o);var p=0===f.playlists.length;return d.length&&(f.mediaGroups.AUDIO.audio=function(e,t,i){var n;void 0===t&&(t={}),void 0===i&&(i=!1);var r=e.reduce((function(e,r){var a=r.attributes.role&&r.attributes.role.value||"",s=r.attributes.lang||"",o=r.attributes.label||"main";if(s&&!r.attributes.label){var u=a?" ("+a+")":"";o=""+r.attributes.lang+u}e[o]||(e[o]={language:s,autoselect:!0,default:"main"===a,playlists:[],uri:""});var l=x(function(e,t){var i,n=e.attributes,r=e.segments,a=e.sidx,s={attributes:(i={NAME:n.id,BANDWIDTH:n.bandwidth,CODECS:n.codecs},i["PROGRAM-ID"]=1,i),uri:"",endList:"static"===n.type,timeline:n.periodIndex,resolvedUri:"",targetDuration:n.duration,segments:r,mediaSequence:r.length?r[0].number:1};return n.contentProtection&&(s.contentProtection=n.contentProtection),a&&(s.sidx=a),t&&(s.attributes.AUDIO="audio",s.attributes.SUBTITLES="subs"),s}(r,i),t);return e[o].playlists.push(l),void 0===n&&"main"===a&&((n=r).default=!0),e}),{});n||(r[Object.keys(r)[0]].default=!0);return r}(d,i,p)),h.length&&(f.mediaGroups.SUBTITLES.subs=function(e,t){return void 0===t&&(t={}),e.reduce((function(e,i){var n=i.attributes.lang||"text";return e[n]||(e[n]={language:n,default:!1,autoselect:!1,playlists:[],uri:""}),e[n].playlists.push(x(function(e){var t,i=e.attributes,n=e.segments;void 0===n&&(n=[{uri:i.baseUrl,timeline:i.periodIndex,resolvedUri:i.baseUrl||"",duration:i.sourceDuration,number:0}],i.duration=i.sourceDuration);var r=((t={NAME:i.id,BANDWIDTH:i.bandwidth})["PROGRAM-ID"]=1,t);return i.codecs&&(r.CODECS=i.codecs),{attributes:r,uri:"",endList:"static"===i.type,timeline:i.periodIndex,resolvedUri:i.baseUrl||"",targetDuration:i.duration,segments:n,mediaSequence:n.length?n[0].number:1}}(i),t)),e}),{})}(h,i)),c.length&&(f.mediaGroups["CLOSED-CAPTIONS"].cc=c.reduce((function(e,t){return t?(t.forEach((function(t){var i=t.channel,n=t.language;e[n]={autoselect:!1,default:!1,instreamId:i,language:n},t.hasOwnProperty("aspectRatio")&&(e[n].aspectRatio=t.aspectRatio),t.hasOwnProperty("easyReader")&&(e[n].easyReader=t.easyReader),t.hasOwnProperty("3D")&&(e[n]["3D"]=t["3D"])})),e):e}),{})),f},M=function(e,t,i){var n=e.NOW,r=e.clientOffset,a=e.availabilityStartTime,s=e.timescale,o=void 0===s?1:s,u=e.start,l=void 0===u?0:u,d=e.minimumUpdatePeriod,h=(n+r)/1e3+(void 0===d?0:d)-(a+l);return Math.ceil((h*o-t)/i)},F=function(e,t){for(var i=e.type,n=e.minimumUpdatePeriod,r=void 0===n?0:n,a=e.media,s=void 0===a?"":a,o=e.sourceDuration,u=e.timescale,l=void 0===u?1:u,d=e.startNumber,h=void 0===d?1:d,c=e.periodIndex,f=[],p=-1,m=0;mp&&(p=y);var b=void 0;if(v<0){var T=m+1;b=T===t.length?"dynamic"===i&&r>0&&s.indexOf("$Number$")>0?M(e,p,_):(o*l-p)/_:(t[T].t-p)/_}else b=v+1;for(var S=h+f.length+b,E=h+f.length;E=r?a:""+new Array(r-a.length+1).join("0")+a)}}(t))},j=function(e,t){var i={RepresentationID:e.id,Bandwidth:e.bandwidth||0},n=e.initialization,r=void 0===n?{sourceURL:"",range:""}:n,a=T({baseUrl:e.baseUrl,source:N(r.sourceURL,i),range:r.range});return function(e,t){return e.duration||t?e.duration?w(e):F(e,t):[{number:e.startNumber||1,duration:e.sourceDuration,time:0,timeline:e.periodIndex}]}(e,t).map((function(t){i.Number=t.number,i.Time=t.time;var n=N(e.media||"",i),r=e.timescale||1,s=e.presentationTimeOffset||0,o=e.periodStart+(t.time-s)/r;return{uri:n,timeline:t.timeline,duration:t.duration,resolvedUri:u.default(e.baseUrl||"",n),map:a,number:t.number,presentationTime:o}}))},V=function(e,t){var i=e.duration,n=e.segmentUrls,r=void 0===n?[]:n,a=e.periodStart;if(!i&&!t||i&&t)throw new Error(y);var s,o=r.map((function(t){return function(e,t){var i=e.baseUrl,n=e.initialization,r=void 0===n?{}:n,a=T({baseUrl:i,source:r.sourceURL,range:r.range}),s=T({baseUrl:i,source:t.media,range:t.mediaRange});return s.map=a,s}(e,t)}));return i&&(s=w(e)),t&&(s=F(e,t)),s.map((function(t,i){if(o[i]){var n=o[i],r=e.timescale||1,s=e.presentationTimeOffset||0;return n.timeline=t.timeline,n.duration=t.duration,n.number=t.number,n.presentationTime=a+(t.time-s)/r,n}})).filter((function(e){return e}))},H=function(e){var t,i,n=e.attributes,r=e.segmentInfo;r.template?(i=j,t=c(n,r.template)):r.base?(i=C,t=c(n,r.base)):r.list&&(i=V,t=c(n,r.list));var a={attributes:n};if(!i)return a;var s=i(t,r.segmentTimeline);if(t.duration){var o=t,u=o.duration,l=o.timescale,d=void 0===l?1:l;t.duration=u/d}else s.length?t.duration=s.reduce((function(e,t){return Math.max(e,Math.ceil(t.duration))}),0):t.duration=0;return a.attributes=t,a.segments=s,r.base&&t.indexRange&&(a.sidx=s[0],a.segments=[]),a},z=function(e){return e.map(H)},G=function(e,t){return p(e.childNodes).filter((function(e){return e.tagName===t}))},W=function(e){return e.textContent.trim()},Y=function(e){var t=/P(?:(\d*)Y)?(?:(\d*)M)?(?:(\d*)D)?(?:T(?:(\d*)H)?(?:(\d*)M)?(?:([\d.]*)S)?)?/.exec(e);if(!t)return 0;var i=t.slice(1),n=i[0],r=i[1],a=i[2],s=i[3],o=i[4],u=i[5];return 31536e3*parseFloat(n||0)+2592e3*parseFloat(r||0)+86400*parseFloat(a||0)+3600*parseFloat(s||0)+60*parseFloat(o||0)+parseFloat(u||0)},q={mediaPresentationDuration:function(e){return Y(e)},availabilityStartTime:function(e){return/^\d+-\d+-\d+T\d+:\d+:\d+(\.\d+)?$/.test(t=e)&&(t+="Z"),Date.parse(t)/1e3;var t},minimumUpdatePeriod:function(e){return Y(e)},suggestedPresentationDelay:function(e){return Y(e)},type:function(e){return e},timeShiftBufferDepth:function(e){return Y(e)},start:function(e){return Y(e)},width:function(e){return parseInt(e,10)},height:function(e){return parseInt(e,10)},bandwidth:function(e){return parseInt(e,10)},startNumber:function(e){return parseInt(e,10)},timescale:function(e){return parseInt(e,10)},presentationTimeOffset:function(e){return parseInt(e,10)},duration:function(e){var t=parseInt(e,10);return isNaN(t)?Y(e):t},d:function(e){return parseInt(e,10)},t:function(e){return parseInt(e,10)},r:function(e){return parseInt(e,10)},DEFAULT:function(e){return e}},K=function(e){return e&&e.attributes?p(e.attributes).reduce((function(e,t){var i=q[t.name]||q.DEFAULT;return e[t.name]=i(t.value),e}),{}):{}},X={"urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b":"org.w3.clearkey","urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":"com.widevine.alpha","urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":"com.microsoft.playready","urn:uuid:f239e769-efa3-4850-9c16-a903c6932efb":"com.adobe.primetime"},Q=function(e,t){return t.length?f(e.map((function(e){return t.map((function(t){return u.default(e,W(t))}))}))):e},$=function(e){var t=G(e,"SegmentTemplate")[0],i=G(e,"SegmentList")[0],n=i&&G(i,"SegmentURL").map((function(e){return c({tag:"SegmentURL"},K(e))})),r=G(e,"SegmentBase")[0],a=i||t,s=a&&G(a,"SegmentTimeline")[0],o=i||r||t,u=o&&G(o,"Initialization")[0],l=t&&K(t);l&&u?l.initialization=u&&K(u):l&&l.initialization&&(l.initialization={sourceURL:l.initialization});var d={template:l,segmentTimeline:s&&G(s,"S").map((function(e){return K(e)})),list:i&&c(K(i),{segmentUrls:n,initialization:K(u)}),base:r&&c(K(r),{initialization:K(u)})};return Object.keys(d).forEach((function(e){d[e]||delete d[e]})),d},J=function(e,t,i){return function(n){var r,a=K(n),s=Q(t,G(n,"BaseURL")),o=G(n,"Role")[0],u={role:K(o)},l=c(e,a,u),h=G(n,"Accessibility")[0],p="urn:scte:dash:cc:cea-608:2015"===(r=K(h)).schemeIdUri?r.value.split(";").map((function(e){var t,i;if(i=e,/^CC\d=/.test(e)){var n=e.split("=");t=n[0],i=n[1]}else/^CC\d$/.test(e)&&(t=e);return{channel:t,language:i}})):"urn:scte:dash:cc:cea-708:2015"===r.schemeIdUri?r.value.split(";").map((function(e){var t={channel:void 0,language:void 0,aspectRatio:1,easyReader:0,"3D":0};if(/=/.test(e)){var i=e.split("="),n=i[0],r=i[1],a=void 0===r?"":r;t.channel=n,t.language=e,a.split(",").forEach((function(e){var i=e.split(":"),n=i[0],r=i[1];"lang"===n?t.language=r:"er"===n?t.easyReader=Number(r):"war"===n?t.aspectRatio=Number(r):"3D"===n&&(t["3D"]=Number(r))}))}else t.language=e;return t.channel&&(t.channel="SERVICE"+t.channel),t})):void 0;p&&(l=c(l,{captionServices:p}));var m=G(n,"Label")[0];if(m&&m.childNodes.length){var g=m.childNodes[0].nodeValue.trim();l=c(l,{label:g})}var _=G(n,"ContentProtection").reduce((function(e,t){var i=K(t),n=X[i.schemeIdUri];if(n){e[n]={attributes:i};var r=G(t,"cenc:pssh")[0];if(r){var a=W(r),s=a&&d.default(a);e[n].pssh=s}}return e}),{});Object.keys(_).length&&(l=c(l,{contentProtection:_}));var v=$(n),y=G(n,"Representation"),b=c(i,v);return f(y.map(function(e,t,i){return function(n){var r=G(n,"BaseURL"),a=Q(t,r),s=c(e,K(n)),o=$(n);return a.map((function(e){return{segmentInfo:c(i,o),attributes:c(s,{baseUrl:e})}}))}}(l,s,b)))}},Z=function(e,t){return function(i,n){var r=Q(t,G(i.node,"BaseURL")),a=parseInt(i.attributes.id,10),s=l.default.isNaN(a)?n:a,o=c(e,{periodIndex:s,periodStart:i.attributes.start});"number"==typeof i.attributes.duration&&(o.periodDuration=i.attributes.duration);var u=G(i.node,"AdaptationSet"),d=$(i.node);return f(u.map(J(o,r,d)))}},ee=function(e,t){void 0===t&&(t={});var i=t,n=i.manifestUri,r=void 0===n?"":n,a=i.NOW,s=void 0===a?Date.now():a,o=i.clientOffset,u=void 0===o?0:o,l=G(e,"Period");if(!l.length)throw new Error(m);var d=G(e,"Location"),h=K(e),c=Q([r],G(e,"BaseURL"));h.type=h.type||"static",h.sourceDuration=h.mediaPresentationDuration||0,h.NOW=s,h.clientOffset=u,d.length&&(h.locations=d.map(W));var p=[];return l.forEach((function(e,t){var i=K(e),n=p[t-1];i.start=function(e){var t=e.attributes,i=e.priorPeriodAttributes,n=e.mpdType;return"number"==typeof t.start?t.start:i&&"number"==typeof i.start&&"number"==typeof i.duration?i.start+i.duration:i||"static"!==n?null:0}({attributes:i,priorPeriodAttributes:n?n.attributes:null,mpdType:h.type}),p.push({node:e,attributes:i})})),{locations:h.locations,representationInfo:f(p.map(Z(h,c)))}},te=function(e){if(""===e)throw new Error(g);var t,i,n=new s.DOMParser;try{i=(t=n.parseFromString(e,"application/xml"))&&"MPD"===t.documentElement.tagName?t.documentElement:null}catch(e){}if(!i||i&&i.getElementsByTagName("parsererror").length>0)throw new Error(_);return i};i.VERSION="0.19.0",i.addSidxSegmentsToPlaylist=A,i.generateSidxKey=k,i.inheritAttributes=ee,i.parse=function(e,t){void 0===t&&(t={});var i=ee(te(e),t),n=z(i.representationInfo);return O(n,i.locations,t.sidxMapping)},i.parseUTCTiming=function(e){return function(e){var t=G(e,"UTCTiming")[0];if(!t)return null;var i=K(t);switch(i.schemeIdUri){case"urn:mpeg:dash:utc:http-head:2014":case"urn:mpeg:dash:utc:http-head:2012":i.method="HEAD";break;case"urn:mpeg:dash:utc:http-xsdate:2014":case"urn:mpeg:dash:utc:http-iso:2014":case"urn:mpeg:dash:utc:http-xsdate:2012":case"urn:mpeg:dash:utc:http-iso:2012":i.method="GET";break;case"urn:mpeg:dash:utc:direct:2014":case"urn:mpeg:dash:utc:direct:2012":i.method="DIRECT",i.value=Date.parse(i.value);break;case"urn:mpeg:dash:utc:http-ntp:2014":case"urn:mpeg:dash:utc:ntp:2014":case"urn:mpeg:dash:utc:sntp:2014":default:throw new Error(b)}return i}(te(e))},i.stringToMpdXml=te,i.toM3u8=O,i.toPlaylists=z},{"@videojs/vhs-utils/cjs/decode-b64-to-uint8-array":13,"@videojs/vhs-utils/cjs/resolve-url":20,"@xmldom/xmldom":28,"global/window":35}],42:[function(e,t,i){var n=Math.pow(2,32);t.exports=function(e){var t=new DataView(e.buffer,e.byteOffset,e.byteLength),i={version:e[0],flags:new Uint8Array(e.subarray(1,4)),references:[],referenceId:t.getUint32(4),timescale:t.getUint32(8)},r=12;0===i.version?(i.earliestPresentationTime=t.getUint32(r),i.firstOffset=t.getUint32(r+4),r+=8):(i.earliestPresentationTime=t.getUint32(r)*n+t.getUint32(r+4),i.firstOffset=t.getUint32(r+8)*n+t.getUint32(r+12),r+=16),r+=2;var a=t.getUint16(r);for(r+=2;a>0;r+=12,a--)i.references.push({referenceType:(128&e[r])>>>7,referencedSize:2147483647&t.getUint32(r),subsegmentDuration:t.getUint32(r+4),startsWithSap:!!(128&e[r+8]),sapType:(112&e[r+8])>>>4,sapDeltaTime:268435455&t.getUint32(r+8)});return i}},{}],43:[function(e,t,i){var n,r,a,s,o,u,l;n=function(e){return 9e4*e},r=function(e,t){return e*t},a=function(e){return e/9e4},s=function(e,t){return e/t},o=function(e,t){return n(s(e,t))},u=function(e,t){return r(a(e),t)},l=function(e,t,i){return a(i?e:e-t)},t.exports={ONE_SECOND_IN_TS:9e4,secondsToVideoTs:n,secondsToAudioTs:r,videoTsToSeconds:a,audioTsToSeconds:s,audioTsToVideoTs:o,videoTsToAudioTs:u,metadataTsToSeconds:l}},{}],44:[function(e,t,i){var n,r,a=t.exports={};function s(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function u(e){if(n===setTimeout)return setTimeout(e,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:s}catch(e){n=s}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var l,d=[],h=!1,c=-1;function f(){h&&l&&(h=!1,l.length?d=l.concat(d):c=-1,d.length&&p())}function p(){if(!h){var e=u(f);h=!0;for(var t=d.length;t;){for(l=d,d=[];++c1)for(var i=1;i - * Copyright Brightcove, Inc. - * Available under Apache License Version 2.0 - * - * - * Includes vtt.js - * Available under Apache License Version 2.0 - * - */ -"use strict";var n=e("global/window"),r=e("global/document"),a=e("@babel/runtime/helpers/extends"),s=e("@babel/runtime/helpers/assertThisInitialized"),o=e("@babel/runtime/helpers/inheritsLoose"),u=e("safe-json-parse/tuple"),l=e("keycode"),d=e("@videojs/xhr"),h=e("videojs-vtt.js"),c=e("@babel/runtime/helpers/construct"),f=e("@babel/runtime/helpers/inherits"),p=e("@videojs/vhs-utils/cjs/resolve-url.js"),m=e("m3u8-parser"),g=e("@videojs/vhs-utils/cjs/codecs.js"),_=e("@videojs/vhs-utils/cjs/media-types.js"),v=e("mpd-parser"),y=e("mux.js/lib/tools/parse-sidx"),b=e("@videojs/vhs-utils/cjs/id3-helpers"),T=e("@videojs/vhs-utils/cjs/containers"),S=e("@videojs/vhs-utils/cjs/byte-helpers"),E=e("mux.js/lib/utils/clock");function w(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}for(var C,A=w(n),k=w(r),I=w(a),x=w(s),P=w(o),L=w(u),D=w(l),R=w(d),U=w(h),O=w(c),M=w(f),F=w(p),B=w(y),N={},j=function(e,t){return N[e]=N[e]||[],t&&(N[e]=N[e].concat(t)),N[e]},V=function(e,t){var i=j(e).indexOf(t);return!(i<=-1)&&(N[e]=N[e].slice(),N[e].splice(i,1),!0)},H={prefixed:!0},z=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror","fullscreen"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror","-webkit-full-screen"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror","-moz-full-screen"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError","-ms-fullscreen"]],G=z[0],W=0;W0?o:0)}if(A.default.console){var u=A.default.console[i];u||"debug"!==i||(u=A.default.console.info||A.default.console.log),u&&a&&s.test(i)&&u[Array.isArray(r)?"apply":"call"](A.default.console,r)}}}(t,r),r.createLogger=function(i){return e(t+": "+i)},r.levels={all:"debug|log|warn|error",off:"",debug:"debug|log|warn|error",info:"log|warn|error",warn:"warn|error",error:"error",DEFAULT:n},r.level=function(e){if("string"==typeof e){if(!r.levels.hasOwnProperty(e))throw new Error('"'+e+'" in not a valid log level');n=e}return n},(r.history=function(){return q?[].concat(q):[]}).filter=function(e){return(q||[]).filter((function(t){return new RegExp(".*"+e+".*").test(t[0])}))},r.history.clear=function(){q&&(q.length=0)},r.history.disable=function(){null!==q&&(q.length=0,q=null)},r.history.enable=function(){null===q&&(q=[])},r.error=function(){for(var e=arguments.length,t=new Array(e),r=0;r1?t-1:0),n=1;n=0)throw new Error("class has illegal whitespace characters")}function ke(){return k.default===A.default.document}function Ie(e){return ee(e)&&1===e.nodeType}function xe(){try{return A.default.parent!==A.default.self}catch(e){return!0}}function Pe(e){return function(t,i){if(!Ce(t))return k.default[e](null);Ce(i)&&(i=k.default.querySelector(i));var n=Ie(i)?i:k.default;return n[e]&&n[e](t)}}function Le(e,t,i,n){void 0===e&&(e="div"),void 0===t&&(t={}),void 0===i&&(i={});var r=k.default.createElement(e);return Object.getOwnPropertyNames(t).forEach((function(e){var i=t[e];-1!==e.indexOf("aria-")||"role"===e||"type"===e?(K.warn("Setting attributes in the second argument of createEl()\nhas been deprecated. Use the third argument instead.\ncreateEl(type, properties, attributes). Attempting to set "+e+" to "+i+"."),r.setAttribute(e,i)):"textContent"===e?De(r,i):r[e]===i&&"tabIndex"!==e||(r[e]=i)})),Object.getOwnPropertyNames(i).forEach((function(e){r.setAttribute(e,i[e])})),n&&$e(r,n),r}function De(e,t){return void 0===e.textContent?e.innerText=t:e.textContent=t,e}function Re(e,t){t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e)}function Ue(e,t){return Ae(t),e.classList?e.classList.contains(t):(i=t,new RegExp("(^|\\s)"+i+"($|\\s)")).test(e.className);var i}function Oe(e,t){return e.classList?e.classList.add(t):Ue(e,t)||(e.className=(e.className+" "+t).trim()),e}function Me(e,t){return e?(e.classList?e.classList.remove(t):(Ae(t),e.className=e.className.split(/\s+/).filter((function(e){return e!==t})).join(" ")),e):(K.warn("removeClass was called with an element that doesn't exist"),null)}function Fe(e,t,i){var n=Ue(e,t);if("function"==typeof i&&(i=i(e,t)),"boolean"!=typeof i&&(i=!n),i!==n)return i?Oe(e,t):Me(e,t),e}function Be(e,t){Object.getOwnPropertyNames(t).forEach((function(i){var n=t[i];null==n||!1===n?e.removeAttribute(i):e.setAttribute(i,!0===n?"":n)}))}function Ne(e){var t={},i=",autoplay,controls,playsinline,loop,muted,default,defaultMuted,";if(e&&e.attributes&&e.attributes.length>0)for(var n=e.attributes,r=n.length-1;r>=0;r--){var a=n[r].name,s=n[r].value;"boolean"!=typeof e[a]&&-1===i.indexOf(","+a+",")||(s=null!==s),t[a]=s}return t}function je(e,t){return e.getAttribute(t)}function Ve(e,t,i){e.setAttribute(t,i)}function He(e,t){e.removeAttribute(t)}function ze(){k.default.body.focus(),k.default.onselectstart=function(){return!1}}function Ge(){k.default.onselectstart=function(){return!0}}function We(e){if(e&&e.getBoundingClientRect&&e.parentNode){var t=e.getBoundingClientRect(),i={};return["bottom","height","left","right","top","width"].forEach((function(e){void 0!==t[e]&&(i[e]=t[e])})),i.height||(i.height=parseFloat(ie(e,"height"))),i.width||(i.width=parseFloat(ie(e,"width"))),i}}function Ye(e){if(!e||e&&!e.offsetParent)return{left:0,top:0,width:0,height:0};for(var t=e.offsetWidth,i=e.offsetHeight,n=0,r=0;e.offsetParent&&e!==k.default[H.fullscreenElement];)n+=e.offsetLeft,r+=e.offsetTop,e=e.offsetParent;return{left:n,top:r,width:t,height:i}}function qe(e,t){var i={x:0,y:0};if(Se)for(var n=e;n&&"html"!==n.nodeName.toLowerCase();){var r=ie(n,"transform");if(/^matrix/.test(r)){var a=r.slice(7,-1).split(/,\s/).map(Number);i.x+=a[4],i.y+=a[5]}else if(/^matrix3d/.test(r)){var s=r.slice(9,-1).split(/,\s/).map(Number);i.x+=s[12],i.y+=s[13]}n=n.parentNode}var o={},u=Ye(t.target),l=Ye(e),d=l.width,h=l.height,c=t.offsetY-(l.top-u.top),f=t.offsetX-(l.left-u.left);return t.changedTouches&&(f=t.changedTouches[0].pageX-l.left,c=t.changedTouches[0].pageY+l.top,Se&&(f-=i.x,c-=i.y)),o.y=1-Math.max(0,Math.min(1,c/h)),o.x=Math.max(0,Math.min(1,f/d)),o}function Ke(e){return ee(e)&&3===e.nodeType}function Xe(e){for(;e.firstChild;)e.removeChild(e.firstChild);return e}function Qe(e){return"function"==typeof e&&(e=e()),(Array.isArray(e)?e:[e]).map((function(e){return"function"==typeof e&&(e=e()),Ie(e)||Ke(e)?e:"string"==typeof e&&/\S/.test(e)?k.default.createTextNode(e):void 0})).filter((function(e){return e}))}function $e(e,t){return Qe(t).forEach((function(t){return e.appendChild(t)})),e}function Je(e,t){return $e(Xe(e),t)}function Ze(e){return void 0===e.button&&void 0===e.buttons||(0===e.button&&void 0===e.buttons||("mouseup"===e.type&&0===e.button&&0===e.buttons||0===e.button&&1===e.buttons))}var et,tt=Pe("querySelector"),it=Pe("querySelectorAll"),nt=Object.freeze({__proto__:null,isReal:ke,isEl:Ie,isInFrame:xe,createEl:Le,textContent:De,prependTo:Re,hasClass:Ue,addClass:Oe,removeClass:Me,toggleClass:Fe,setAttributes:Be,getAttributes:Ne,getAttribute:je,setAttribute:Ve,removeAttribute:He,blockTextSelection:ze,unblockTextSelection:Ge,getBoundingClientRect:We,findPosition:Ye,getPointerPosition:qe,isTextNode:Ke,emptyEl:Xe,normalizeContent:Qe,appendContent:$e,insertContent:Je,isSingleLeftClick:Ze,$:tt,$$:it}),rt=!1,at=function(){if(!1!==et.options.autoSetup){var e=Array.prototype.slice.call(k.default.getElementsByTagName("video")),t=Array.prototype.slice.call(k.default.getElementsByTagName("audio")),i=Array.prototype.slice.call(k.default.getElementsByTagName("video-js")),n=e.concat(t,i);if(n&&n.length>0)for(var r=0,a=n.length;r-1&&(r={passive:!0}),e.addEventListener(t,n.dispatcher,r)}else e.attachEvent&&e.attachEvent("on"+t,n.dispatcher)}function bt(e,t,i){if(pt.has(e)){var n=pt.get(e);if(n.handlers){if(Array.isArray(t))return gt(bt,e,t,i);var r=function(e,t){n.handlers[t]=[],mt(e,t)};if(void 0!==t){var a=n.handlers[t];if(a)if(i){if(i.guid)for(var s=0;s=t&&(e.apply(void 0,arguments),i=n)}},It=function(){};It.prototype.allowedEvents_={},It.prototype.on=function(e,t){var i=this.addEventListener;this.addEventListener=function(){},yt(this,e,t),this.addEventListener=i},It.prototype.addEventListener=It.prototype.on,It.prototype.off=function(e,t){bt(this,e,t)},It.prototype.removeEventListener=It.prototype.off,It.prototype.one=function(e,t){var i=this.addEventListener;this.addEventListener=function(){},St(this,e,t),this.addEventListener=i},It.prototype.any=function(e,t){var i=this.addEventListener;this.addEventListener=function(){},Et(this,e,t),this.addEventListener=i},It.prototype.trigger=function(e){var t=e.type||e;"string"==typeof e&&(e={type:t}),e=_t(e),this.allowedEvents_[t]&&this["on"+t]&&this["on"+t](e),Tt(this,e)},It.prototype.dispatchEvent=It.prototype.trigger,It.prototype.queueTrigger=function(e){var t=this;wt||(wt=new Map);var i=e.type||e,n=wt.get(this);n||(n=new Map,wt.set(this,n));var r=n.get(i);n.delete(i),A.default.clearTimeout(r);var a=A.default.setTimeout((function(){0===n.size&&(n=null,wt.delete(t)),t.trigger(e)}),0);n.set(i,a)};var xt=function(e){return"function"==typeof e.name?e.name():"string"==typeof e.name?e.name:e.name_?e.name_:e.constructor&&e.constructor.name?e.constructor.name:typeof e},Pt=function(e){return e instanceof It||!!e.eventBusEl_&&["on","one","off","trigger"].every((function(t){return"function"==typeof e[t]}))},Lt=function(e){return"string"==typeof e&&/\S/.test(e)||Array.isArray(e)&&!!e.length},Dt=function(e,t,i){if(!e||!e.nodeName&&!Pt(e))throw new Error("Invalid target for "+xt(t)+"#"+i+"; must be a DOM node or evented object.")},Rt=function(e,t,i){if(!Lt(e))throw new Error("Invalid event type for "+xt(t)+"#"+i+"; must be a non-empty string or array.")},Ut=function(e,t,i){if("function"!=typeof e)throw new Error("Invalid listener for "+xt(t)+"#"+i+"; must be a function.")},Ot=function(e,t,i){var n,r,a,s=t.length<3||t[0]===e||t[0]===e.eventBusEl_;return s?(n=e.eventBusEl_,t.length>=3&&t.shift(),r=t[0],a=t[1]):(n=t[0],r=t[1],a=t[2]),Dt(n,e,i),Rt(r,e,i),Ut(a,e,i),{isTargetingSelf:s,target:n,type:r,listener:a=At(e,a)}},Mt=function(e,t,i,n){Dt(e,e,t),e.nodeName?Ct[t](e,i,n):e[t](i,n)},Ft={on:function(){for(var e=this,t=arguments.length,i=new Array(t),n=0;n=0;e--)this.children_[e].dispose&&this.children_[e].dispose();this.children_=null,this.childIndex_=null,this.childNameIndex_=null,this.parentComponent_=null,this.el_&&(this.el_.parentNode&&this.el_.parentNode.removeChild(this.el_),this.el_=null),this.player_=null}},t.isDisposed=function(){return Boolean(this.isDisposed_)},t.player=function(){return this.player_},t.options=function(e){return e?(this.options_=zt(this.options_,e),this.options_):this.options_},t.el=function(){return this.el_},t.createEl=function(e,t,i){return Le(e,t,i)},t.localize=function(e,t,i){void 0===i&&(i=e);var n=this.player_.language&&this.player_.language(),r=this.player_.languages&&this.player_.languages(),a=r&&r[n],s=n&&n.split("-")[0],o=r&&r[s],u=i;return a&&a[e]?u=a[e]:o&&o[e]&&(u=o[e]),t&&(u=u.replace(/\{(\d+)\}/g,(function(e,i){var n=t[i-1],r=n;return void 0===n&&(r=e),r}))),u},t.handleLanguagechange=function(){},t.contentEl=function(){return this.contentEl_||this.el_},t.id=function(){return this.id_},t.name=function(){return this.name_},t.children=function(){return this.children_},t.getChildById=function(e){return this.childIndex_[e]},t.getChild=function(e){if(e)return this.childNameIndex_[e]},t.getDescendant=function(){for(var e=arguments.length,t=new Array(e),i=0;i=0;i--)if(this.children_[i]===e){t=!0,this.children_.splice(i,1);break}if(t){e.parentComponent_=null,this.childIndex_[e.id()]=null,this.childNameIndex_[Ht(e.name())]=null,this.childNameIndex_[Vt(e.name())]=null;var n=e.el();n&&n.parentNode===this.contentEl()&&this.contentEl().removeChild(e.el())}}},t.initChildren=function(){var t=this,i=this.options_.children;if(i){var n,r=this.options_,a=e.getComponent("Tech");(n=Array.isArray(i)?i:Object.keys(i)).concat(Object.keys(this.options_).filter((function(e){return!n.some((function(t){return"string"==typeof t?e===t:e===t.name}))}))).map((function(e){var n,r;return"string"==typeof e?r=i[n=e]||t.options_[n]||{}:(n=e.name,r=e),{name:n,opts:r}})).filter((function(t){var i=e.getComponent(t.opts.componentClass||Ht(t.name));return i&&!a.isTech(i)})).forEach((function(e){var i=e.name,n=e.opts;if(void 0!==r[i]&&(n=r[i]),!1!==n){!0===n&&(n={}),n.playerOptions=t.options_.playerOptions;var a=t.addChild(i,n);a&&(t[i]=a)}}))}},t.buildCSSClass=function(){return""},t.ready=function(e,t){if(void 0===t&&(t=!1),e)return this.isReady_?void(t?e.call(this):this.setTimeout(e,1)):(this.readyQueue_=this.readyQueue_||[],void this.readyQueue_.push(e))},t.triggerReady=function(){this.isReady_=!0,this.setTimeout((function(){var e=this.readyQueue_;this.readyQueue_=[],e&&e.length>0&&e.forEach((function(e){e.call(this)}),this),this.trigger("ready")}),1)},t.$=function(e,t){return tt(e,t||this.contentEl())},t.$$=function(e,t){return it(e,t||this.contentEl())},t.hasClass=function(e){return Ue(this.el_,e)},t.addClass=function(e){Oe(this.el_,e)},t.removeClass=function(e){Me(this.el_,e)},t.toggleClass=function(e,t){Fe(this.el_,e,t)},t.show=function(){this.removeClass("vjs-hidden")},t.hide=function(){this.addClass("vjs-hidden")},t.lockShowing=function(){this.addClass("vjs-lock-showing")},t.unlockShowing=function(){this.removeClass("vjs-lock-showing")},t.getAttribute=function(e){return je(this.el_,e)},t.setAttribute=function(e,t){Ve(this.el_,e,t)},t.removeAttribute=function(e){He(this.el_,e)},t.width=function(e,t){return this.dimension("width",e,t)},t.height=function(e,t){return this.dimension("height",e,t)},t.dimensions=function(e,t){this.width(e,!0),this.height(t)},t.dimension=function(e,t,i){if(void 0!==t)return null!==t&&t==t||(t=0),-1!==(""+t).indexOf("%")||-1!==(""+t).indexOf("px")?this.el_.style[e]=t:this.el_.style[e]="auto"===t?"":t+"px",void(i||this.trigger("componentresize"));if(!this.el_)return 0;var n=this.el_.style[e],r=n.indexOf("px");return-1!==r?parseInt(n.slice(0,r),10):parseInt(this.el_["offset"+Ht(e)],10)},t.currentDimension=function(e){var t=0;if("width"!==e&&"height"!==e)throw new Error("currentDimension only accepts width or height value");if(t=ie(this.el_,e),0===(t=parseFloat(t))||isNaN(t)){var i="offset"+Ht(e);t=this.el_[i]}return t},t.currentDimensions=function(){return{width:this.currentDimension("width"),height:this.currentDimension("height")}},t.currentWidth=function(){return this.currentDimension("width")},t.currentHeight=function(){return this.currentDimension("height")},t.focus=function(){this.el_.focus()},t.blur=function(){this.el_.blur()},t.handleKeyDown=function(e){this.player_&&(e.stopPropagation(),this.player_.handleKeyDown(e))},t.handleKeyPress=function(e){this.handleKeyDown(e)},t.emitTapEvents=function(){var e,t=0,i=null;this.on("touchstart",(function(n){1===n.touches.length&&(i={pageX:n.touches[0].pageX,pageY:n.touches[0].pageY},t=A.default.performance.now(),e=!0)})),this.on("touchmove",(function(t){if(t.touches.length>1)e=!1;else if(i){var n=t.touches[0].pageX-i.pageX,r=t.touches[0].pageY-i.pageY;Math.sqrt(n*n+r*r)>10&&(e=!1)}}));var n=function(){e=!1};this.on("touchleave",n),this.on("touchcancel",n),this.on("touchend",(function(n){(i=null,!0===e)&&(A.default.performance.now()-t<200&&(n.preventDefault(),this.trigger("tap")))}))},t.enableTouchActivity=function(){if(this.player()&&this.player().reportUserActivity){var e,t=At(this.player(),this.player().reportUserActivity);this.on("touchstart",(function(){t(),this.clearInterval(e),e=this.setInterval(t,250)}));var i=function(i){t(),this.clearInterval(e)};this.on("touchmove",t),this.on("touchend",i),this.on("touchcancel",i)}},t.setTimeout=function(e,t){var i,n=this;return e=At(this,e),this.clearTimersOnDispose_(),i=A.default.setTimeout((function(){n.setTimeoutIds_.has(i)&&n.setTimeoutIds_.delete(i),e()}),t),this.setTimeoutIds_.add(i),i},t.clearTimeout=function(e){return this.setTimeoutIds_.has(e)&&(this.setTimeoutIds_.delete(e),A.default.clearTimeout(e)),e},t.setInterval=function(e,t){e=At(this,e),this.clearTimersOnDispose_();var i=A.default.setInterval(e,t);return this.setIntervalIds_.add(i),i},t.clearInterval=function(e){return this.setIntervalIds_.has(e)&&(this.setIntervalIds_.delete(e),A.default.clearInterval(e)),e},t.requestAnimationFrame=function(e){var t,i=this;return this.supportsRaf_?(this.clearTimersOnDispose_(),e=At(this,e),t=A.default.requestAnimationFrame((function(){i.rafIds_.has(t)&&i.rafIds_.delete(t),e()})),this.rafIds_.add(t),t):this.setTimeout(e,1e3/60)},t.requestNamedAnimationFrame=function(e,t){var i=this;if(!this.namedRafs_.has(e)){this.clearTimersOnDispose_(),t=At(this,t);var n=this.requestAnimationFrame((function(){t(),i.namedRafs_.has(e)&&i.namedRafs_.delete(e)}));return this.namedRafs_.set(e,n),e}},t.cancelNamedAnimationFrame=function(e){this.namedRafs_.has(e)&&(this.cancelAnimationFrame(this.namedRafs_.get(e)),this.namedRafs_.delete(e))},t.cancelAnimationFrame=function(e){return this.supportsRaf_?(this.rafIds_.has(e)&&(this.rafIds_.delete(e),A.default.cancelAnimationFrame(e)),e):this.clearTimeout(e)},t.clearTimersOnDispose_=function(){var e=this;this.clearingTimersOnDispose_||(this.clearingTimersOnDispose_=!0,this.one("dispose",(function(){[["namedRafs_","cancelNamedAnimationFrame"],["rafIds_","cancelAnimationFrame"],["setTimeoutIds_","clearTimeout"],["setIntervalIds_","clearInterval"]].forEach((function(t){var i=t[0],n=t[1];e[i].forEach((function(t,i){return e[n](i)}))})),e.clearingTimersOnDispose_=!1})))},e.registerComponent=function(t,i){if("string"!=typeof t||!t)throw new Error('Illegal component name, "'+t+'"; must be a non-empty string.');var n,r=e.getComponent("Tech"),a=r&&r.isTech(i),s=e===i||e.prototype.isPrototypeOf(i.prototype);if(a||!s)throw n=a?"techs must be registered using Tech.registerTech()":"must be a Component subclass",new Error('Illegal component, "'+t+'"; '+n+".");t=Ht(t),e.components_||(e.components_={});var o=e.getComponent("Player");if("Player"===t&&o&&o.players){var u=o.players,l=Object.keys(u);if(u&&l.length>0&&l.map((function(e){return u[e]})).every(Boolean))throw new Error("Can not register Player component after player has been created.")}return e.components_[t]=i,e.components_[Vt(t)]=i,i},e.getComponent=function(t){if(t&&e.components_)return e.components_[t]},e}();function Xt(e,t,i,n){return function(e,t,i){if("number"!=typeof t||t<0||t>i)throw new Error("Failed to execute '"+e+"' on 'TimeRanges': The index provided ("+t+") is non-numeric or out of bounds (0-"+i+").")}(e,n,i.length-1),i[n][t]}function Qt(e){var t;return t=void 0===e||0===e.length?{length:0,start:function(){throw new Error("This TimeRanges object is empty")},end:function(){throw new Error("This TimeRanges object is empty")}}:{length:e.length,start:Xt.bind(null,"start",0,e),end:Xt.bind(null,"end",1,e)},A.default.Symbol&&A.default.Symbol.iterator&&(t[A.default.Symbol.iterator]=function(){return(e||[]).values()}),t}function $t(e,t){return Array.isArray(e)?Qt(e):void 0===e||void 0===t?Qt():Qt([[e,t]])}function Jt(e,t){var i,n,r=0;if(!t)return 0;e&&e.length||(e=$t(0,0));for(var a=0;at&&(n=t),r+=n-i;return r/t}function Zt(e){if(e instanceof Zt)return e;"number"==typeof e?this.code=e:"string"==typeof e?this.message=e:ee(e)&&("number"==typeof e.code&&(this.code=e.code),Z(this,e)),this.message||(this.message=Zt.defaultMessages[this.code]||"")}Kt.prototype.supportsRaf_="function"==typeof A.default.requestAnimationFrame&&"function"==typeof A.default.cancelAnimationFrame,Kt.registerComponent("Component",Kt),Zt.prototype.code=0,Zt.prototype.message="",Zt.prototype.status=null,Zt.errorTypes=["MEDIA_ERR_CUSTOM","MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED","MEDIA_ERR_ENCRYPTED"],Zt.defaultMessages={1:"You aborted the media playback",2:"A network error caused the media download to fail part-way.",3:"The media playback was aborted due to a corruption problem or because the media used features your browser did not support.",4:"The media could not be loaded, either because the server or network failed or because the format is not supported.",5:"The media is encrypted and we do not have the keys to decrypt it."};for(var ei=0;ei=0;n--)if(t[n].enabled){li(t,t[n]);break}return(i=e.call(this,t)||this).changing_=!1,i}P.default(t,e);var i=t.prototype;return i.addTrack=function(t){var i=this;t.enabled&&li(this,t),e.prototype.addTrack.call(this,t),t.addEventListener&&(t.enabledChange_=function(){i.changing_||(i.changing_=!0,li(i,t),i.changing_=!1,i.trigger("change"))},t.addEventListener("enabledchange",t.enabledChange_))},i.removeTrack=function(t){e.prototype.removeTrack.call(this,t),t.removeEventListener&&t.enabledChange_&&(t.removeEventListener("enabledchange",t.enabledChange_),t.enabledChange_=null)},t}(oi),hi=function(e,t){for(var i=0;i=0;n--)if(t[n].selected){hi(t,t[n]);break}return(i=e.call(this,t)||this).changing_=!1,Object.defineProperty(x.default(i),"selectedIndex",{get:function(){for(var e=0;e0&&(A.default.console&&A.default.console.groupCollapsed&&A.default.console.groupCollapsed("Text Track parsing errors for "+t.src),n.forEach((function(e){return K.error(e)})),A.default.console&&A.default.console.groupEnd&&A.default.console.groupEnd()),i.flush()},ki=function(e,t){var i={uri:e},n=wi(e);n&&(i.cors=n);var r="use-credentials"===t.tech_.crossOrigin();r&&(i.withCredentials=r),R.default(i,At(this,(function(e,i,n){if(e)return K.error(e,i);t.loaded_=!0,"function"!=typeof A.default.WebVTT?t.tech_&&t.tech_.any(["vttjsloaded","vttjserror"],(function(e){if("vttjserror"!==e.type)return Ai(n,t);K.error("vttjs failed to load, stopping trying to process "+t.src)})):Ai(n,t)})))},Ii=function(e){function t(t){var i;if(void 0===t&&(t={}),!t.tech)throw new Error("A tech was not provided.");var n=zt(t,{kind:vi[t.kind]||"subtitles",language:t.language||t.srclang||""}),r=yi[n.mode]||"disabled",a=n.default;"metadata"!==n.kind&&"chapters"!==n.kind||(r="hidden"),(i=e.call(this,n)||this).tech_=n.tech,i.cues_=[],i.activeCues_=[],i.preload_=!1!==i.tech_.preloadTextTracks;var s=new mi(i.cues_),o=new mi(i.activeCues_),u=!1,l=At(x.default(i),(function(){this.tech_.isReady_&&!this.tech_.isDisposed()&&(this.activeCues=this.activeCues,u&&(this.trigger("cuechange"),u=!1))}));return i.tech_.one("dispose",(function(){i.tech_.off("timeupdate",l)})),"disabled"!==r&&i.tech_.on("timeupdate",l),Object.defineProperties(x.default(i),{default:{get:function(){return a},set:function(){}},mode:{get:function(){return r},set:function(e){yi[e]&&r!==e&&(r=e,this.preload_||"disabled"===r||0!==this.cues.length||ki(this.src,this),this.tech_.off("timeupdate",l),"disabled"!==r&&this.tech_.on("timeupdate",l),this.trigger("modechange"))}},cues:{get:function(){return this.loaded_?s:null},set:function(){}},activeCues:{get:function(){if(!this.loaded_)return null;if(0===this.cues.length)return o;for(var e=this.tech_.currentTime(),t=[],i=0,n=this.cues.length;i=e||r.startTime===r.endTime&&r.startTime<=e&&r.startTime+.5>=e)&&t.push(r)}if(u=!1,t.length!==this.activeCues_.length)u=!0;else for(var a=0;a0)return void this.trigger("vttjsloaded");var t=k.default.createElement("script");t.src=this.options_["vtt.js"]||"https://vjs.zencdn.net/vttjs/0.14.1/vtt.min.js",t.onload=function(){e.trigger("vttjsloaded")},t.onerror=function(){e.trigger("vttjserror")},this.on("dispose",(function(){t.onload=null,t.onerror=null})),A.default.WebVTT=!0,this.el().parentNode.appendChild(t)}else this.ready(this.addWebVttScript_)},i.emulateTextTracks=function(){var e=this,t=this.textTracks(),i=this.remoteTextTracks(),n=function(e){return t.addTrack(e.track)},r=function(e){return t.removeTrack(e.track)};i.on("addtrack",n),i.on("removetrack",r),this.addWebVttScript_();var a=function(){return e.trigger("texttrackchange")},s=function(){a();for(var e=0;e=0;r--){var a=e[r];a[t]&&a[t](n,i)}}(e,i,o,s),o}var Vi={buffered:1,currentTime:1,duration:1,muted:1,played:1,paused:1,seekable:1,volume:1,ended:1},Hi={setCurrentTime:1,setMuted:1,setVolume:1},zi={play:1,pause:1};function Gi(e){return function(t,i){return t===Bi?Bi:i[e]?i[e](t):t}}var Wi={opus:"video/ogg",ogv:"video/ogg",mp4:"video/mp4",mov:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",m4a:"audio/mp4",mp3:"audio/mpeg",aac:"audio/aac",caf:"audio/x-caf",flac:"audio/flac",oga:"audio/ogg",wav:"audio/wav",m3u8:"application/x-mpegURL",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",png:"image/png",svg:"image/svg+xml",webp:"image/webp"},Yi=function(e){void 0===e&&(e="");var t=Ei(e);return Wi[t.toLowerCase()]||""};function qi(e){if(!e.type){var t=Yi(e.src);t&&(e.type=t)}return e}var Ki=function(e){function t(t,i,n){var r,a=zt({createEl:!1},i);if(r=e.call(this,t,a,n)||this,i.playerOptions.sources&&0!==i.playerOptions.sources.length)t.src(i.playerOptions.sources);else for(var s=0,o=i.playerOptions.techOrder;s0;!this.player_.tech(!0)||(ge||fe)&&t||this.player_.tech(!0).focus(),this.player_.paused()?ii(this.player_.play()):this.player_.pause()}},t}(Xi);Kt.registerComponent("PosterImage",Qi);var $i={monospace:"monospace",sansSerif:"sans-serif",serif:"serif",monospaceSansSerif:'"Andale Mono", "Lucida Console", monospace',monospaceSerif:'"Courier New", monospace',proportionalSansSerif:"sans-serif",proportionalSerif:"serif",casual:'"Comic Sans MS", Impact, fantasy',script:'"Monotype Corsiva", cursive',smallcaps:'"Andale Mono", "Lucida Console", monospace, sans-serif'};function Ji(e,t){var i;if(4===e.length)i=e[1]+e[1]+e[2]+e[2]+e[3]+e[3];else{if(7!==e.length)throw new Error("Invalid color code provided, "+e+"; must be formatted as e.g. #f0e or #f604e2.");i=e.slice(1)}return"rgba("+parseInt(i.slice(0,2),16)+","+parseInt(i.slice(2,4),16)+","+parseInt(i.slice(4,6),16)+","+t+")"}function Zi(e,t,i){try{e.style[t]=i}catch(e){return}}var en=function(e){function t(t,i,n){var r;r=e.call(this,t,i,n)||this;var a=function(e){return r.updateDisplay(e)};return t.on("loadstart",(function(e){return r.toggleDisplay(e)})),t.on("texttrackchange",a),t.on("loadedmetadata",(function(e){return r.preselectTrack(e)})),t.ready(At(x.default(r),(function(){if(t.tech_&&t.tech_.featuresNativeTextTracks)this.hide();else{t.on("fullscreenchange",a),t.on("playerresize",a),A.default.addEventListener("orientationchange",a),t.on("dispose",(function(){return A.default.removeEventListener("orientationchange",a)}));for(var e=this.options_.playerOptions.tracks||[],i=0;i0;return ii(t),void(!this.player_.tech(!0)||(ge||fe)&&i||this.player_.tech(!0).focus())}var n=this.player_.getChild("controlBar"),r=n&&n.getChild("playToggle");if(r){var a=function(){return r.focus()};ti(t)?t.then(a,(function(){})):this.setTimeout(a,1)}else this.player_.tech(!0).focus()},i.handleKeyDown=function(t){this.mouseused_=!1,e.prototype.handleKeyDown.call(this,t)},i.handleMouseDown=function(e){this.mouseused_=!0},t}(nn);rn.prototype.controlText_="Play Video",Kt.registerComponent("BigPlayButton",rn);var an=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).controlText(i&&i.controlText||n.localize("Close")),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-close-button "+e.prototype.buildCSSClass.call(this)},i.handleClick=function(e){this.trigger({type:"close",bubbles:!1})},i.handleKeyDown=function(t){D.default.isEventKey(t,"Esc")?(t.preventDefault(),t.stopPropagation(),this.trigger("click")):e.prototype.handleKeyDown.call(this,t)},t}(nn);Kt.registerComponent("CloseButton",an);var sn=function(e){function t(t,i){var n;return void 0===i&&(i={}),n=e.call(this,t,i)||this,i.replay=void 0===i.replay||i.replay,n.on(t,"play",(function(e){return n.handlePlay(e)})),n.on(t,"pause",(function(e){return n.handlePause(e)})),i.replay&&n.on(t,"ended",(function(e){return n.handleEnded(e)})),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-play-control "+e.prototype.buildCSSClass.call(this)},i.handleClick=function(e){this.player_.paused()?ii(this.player_.play()):this.player_.pause()},i.handleSeeked=function(e){this.removeClass("vjs-ended"),this.player_.paused()?this.handlePause(e):this.handlePlay(e)},i.handlePlay=function(e){this.removeClass("vjs-ended"),this.removeClass("vjs-paused"),this.addClass("vjs-playing"),this.controlText("Pause")},i.handlePause=function(e){this.removeClass("vjs-playing"),this.addClass("vjs-paused"),this.controlText("Play")},i.handleEnded=function(e){var t=this;this.removeClass("vjs-playing"),this.addClass("vjs-ended"),this.controlText("Replay"),this.one(this.player_,"seeked",(function(e){return t.handleSeeked(e)}))},t}(nn);sn.prototype.controlText_="Play",Kt.registerComponent("PlayToggle",sn);var on=function(e,t){e=e<0?0:e;var i=Math.floor(e%60),n=Math.floor(e/60%60),r=Math.floor(e/3600),a=Math.floor(t/60%60),s=Math.floor(t/3600);return(isNaN(e)||e===1/0)&&(r=n=i="-"),(r=r>0||s>0?r+":":"")+(n=((r||a>=10)&&n<10?"0"+n:n)+":")+(i=i<10?"0"+i:i)},un=on;function ln(e,t){return void 0===t&&(t=e),un(e,t)}var dn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,["timeupdate","ended"],(function(e){return n.updateContent(e)})),n.updateTextNode_(),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){var t=this.buildCSSClass(),i=e.prototype.createEl.call(this,"div",{className:t+" vjs-time-control vjs-control"}),n=Le("span",{className:"vjs-control-text",textContent:this.localize(this.labelText_)+" "},{role:"presentation"});return i.appendChild(n),this.contentEl_=Le("span",{className:t+"-display"},{"aria-live":"off",role:"presentation"}),i.appendChild(this.contentEl_),i},i.dispose=function(){this.contentEl_=null,this.textNode_=null,e.prototype.dispose.call(this)},i.updateTextNode_=function(e){var t=this;void 0===e&&(e=0),e=ln(e),this.formattedTime_!==e&&(this.formattedTime_=e,this.requestNamedAnimationFrame("TimeDisplay#updateTextNode_",(function(){if(t.contentEl_){var e=t.textNode_;e&&t.contentEl_.firstChild!==e&&(e=null,K.warn("TimeDisplay#updateTextnode_: Prevented replacement of text node element since it was no longer a child of this node. Appending a new node instead.")),t.textNode_=k.default.createTextNode(t.formattedTime_),t.textNode_&&(e?t.contentEl_.replaceChild(t.textNode_,e):t.contentEl_.appendChild(t.textNode_))}})))},i.updateContent=function(e){},t}(Kt);dn.prototype.labelText_="Time",dn.prototype.controlText_="Time",Kt.registerComponent("TimeDisplay",dn);var hn=function(e){function t(){return e.apply(this,arguments)||this}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-current-time"},i.updateContent=function(e){var t;t=this.player_.ended()?this.player_.duration():this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime(),this.updateTextNode_(t)},t}(dn);hn.prototype.labelText_="Current Time",hn.prototype.controlText_="Current Time",Kt.registerComponent("CurrentTimeDisplay",hn);var cn=function(e){function t(t,i){var n,r=function(e){return n.updateContent(e)};return(n=e.call(this,t,i)||this).on(t,"durationchange",r),n.on(t,"loadstart",r),n.on(t,"loadedmetadata",r),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-duration"},i.updateContent=function(e){var t=this.player_.duration();this.updateTextNode_(t)},t}(dn);cn.prototype.labelText_="Duration",cn.prototype.controlText_="Duration",Kt.registerComponent("DurationDisplay",cn);var fn=function(e){function t(){return e.apply(this,arguments)||this}return P.default(t,e),t.prototype.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-time-control vjs-time-divider"},{"aria-hidden":!0}),i=e.prototype.createEl.call(this,"div"),n=e.prototype.createEl.call(this,"span",{textContent:"/"});return i.appendChild(n),t.appendChild(i),t},t}(Kt);Kt.registerComponent("TimeDivider",fn);var pn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,"durationchange",(function(e){return n.updateContent(e)})),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-remaining-time"},i.createEl=function(){var t=e.prototype.createEl.call(this);return t.insertBefore(Le("span",{},{"aria-hidden":!0},"-"),this.contentEl_),t},i.updateContent=function(e){var t;"number"==typeof this.player_.duration()&&(t=this.player_.ended()?0:this.player_.remainingTimeDisplay?this.player_.remainingTimeDisplay():this.player_.remainingTime(),this.updateTextNode_(t))},t}(dn);pn.prototype.labelText_="Remaining Time",pn.prototype.controlText_="Remaining Time",Kt.registerComponent("RemainingTimeDisplay",pn);var mn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).updateShowing(),n.on(n.player(),"durationchange",(function(e){return n.updateShowing(e)})),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-live-control vjs-control"});return this.contentEl_=Le("div",{className:"vjs-live-display"},{"aria-live":"off"}),this.contentEl_.appendChild(Le("span",{className:"vjs-control-text",textContent:this.localize("Stream Type")+" "})),this.contentEl_.appendChild(k.default.createTextNode(this.localize("LIVE"))),t.appendChild(this.contentEl_),t},i.dispose=function(){this.contentEl_=null,e.prototype.dispose.call(this)},i.updateShowing=function(e){this.player().duration()===1/0?this.show():this.hide()},t}(Kt);Kt.registerComponent("LiveDisplay",mn);var gn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).updateLiveEdgeStatus(),n.player_.liveTracker&&(n.updateLiveEdgeStatusHandler_=function(e){return n.updateLiveEdgeStatus(e)},n.on(n.player_.liveTracker,"liveedgechange",n.updateLiveEdgeStatusHandler_)),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){var t=e.prototype.createEl.call(this,"button",{className:"vjs-seek-to-live-control vjs-control"});return this.textEl_=Le("span",{className:"vjs-seek-to-live-text",textContent:this.localize("LIVE")},{"aria-hidden":"true"}),t.appendChild(this.textEl_),t},i.updateLiveEdgeStatus=function(){!this.player_.liveTracker||this.player_.liveTracker.atLiveEdge()?(this.setAttribute("aria-disabled",!0),this.addClass("vjs-at-live-edge"),this.controlText("Seek to live, currently playing live")):(this.setAttribute("aria-disabled",!1),this.removeClass("vjs-at-live-edge"),this.controlText("Seek to live, currently behind live"))},i.handleClick=function(){this.player_.liveTracker.seekToLiveEdge()},i.dispose=function(){this.player_.liveTracker&&this.off(this.player_.liveTracker,"liveedgechange",this.updateLiveEdgeStatusHandler_),this.textEl_=null,e.prototype.dispose.call(this)},t}(nn);gn.prototype.controlText_="Seek to live, currently playing live",Kt.registerComponent("SeekToLive",gn);var _n=function(e,t,i){return e=Number(e),Math.min(i,Math.max(t,isNaN(e)?t:e))},vn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).handleMouseDown_=function(e){return n.handleMouseDown(e)},n.handleMouseUp_=function(e){return n.handleMouseUp(e)},n.handleKeyDown_=function(e){return n.handleKeyDown(e)},n.handleClick_=function(e){return n.handleClick(e)},n.handleMouseMove_=function(e){return n.handleMouseMove(e)},n.update_=function(e){return n.update(e)},n.bar=n.getChild(n.options_.barName),n.vertical(!!n.options_.vertical),n.enable(),n}P.default(t,e);var i=t.prototype;return i.enabled=function(){return this.enabled_},i.enable=function(){this.enabled()||(this.on("mousedown",this.handleMouseDown_),this.on("touchstart",this.handleMouseDown_),this.on("keydown",this.handleKeyDown_),this.on("click",this.handleClick_),this.on(this.player_,"controlsvisible",this.update),this.playerEvent&&this.on(this.player_,this.playerEvent,this.update),this.removeClass("disabled"),this.setAttribute("tabindex",0),this.enabled_=!0)},i.disable=function(){if(this.enabled()){var e=this.bar.el_.ownerDocument;this.off("mousedown",this.handleMouseDown_),this.off("touchstart",this.handleMouseDown_),this.off("keydown",this.handleKeyDown_),this.off("click",this.handleClick_),this.off(this.player_,"controlsvisible",this.update_),this.off(e,"mousemove",this.handleMouseMove_),this.off(e,"mouseup",this.handleMouseUp_),this.off(e,"touchmove",this.handleMouseMove_),this.off(e,"touchend",this.handleMouseUp_),this.removeAttribute("tabindex"),this.addClass("disabled"),this.playerEvent&&this.off(this.player_,this.playerEvent,this.update),this.enabled_=!1}},i.createEl=function(t,i,n){return void 0===i&&(i={}),void 0===n&&(n={}),i.className=i.className+" vjs-slider",i=Z({tabIndex:0},i),n=Z({role:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},n),e.prototype.createEl.call(this,t,i,n)},i.handleMouseDown=function(e){var t=this.bar.el_.ownerDocument;"mousedown"===e.type&&e.preventDefault(),"touchstart"!==e.type||pe||e.preventDefault(),ze(),this.addClass("vjs-sliding"),this.trigger("slideractive"),this.on(t,"mousemove",this.handleMouseMove_),this.on(t,"mouseup",this.handleMouseUp_),this.on(t,"touchmove",this.handleMouseMove_),this.on(t,"touchend",this.handleMouseUp_),this.handleMouseMove(e)},i.handleMouseMove=function(e){},i.handleMouseUp=function(){var e=this.bar.el_.ownerDocument;Ge(),this.removeClass("vjs-sliding"),this.trigger("sliderinactive"),this.off(e,"mousemove",this.handleMouseMove_),this.off(e,"mouseup",this.handleMouseUp_),this.off(e,"touchmove",this.handleMouseMove_),this.off(e,"touchend",this.handleMouseUp_),this.update()},i.update=function(){var e=this;if(this.el_&&this.bar){var t=this.getProgress();return t===this.progress_||(this.progress_=t,this.requestNamedAnimationFrame("Slider#update",(function(){var i=e.vertical()?"height":"width";e.bar.el().style[i]=(100*t).toFixed(2)+"%"}))),t}},i.getProgress=function(){return Number(_n(this.getPercent(),0,1).toFixed(4))},i.calculateDistance=function(e){var t=qe(this.el_,e);return this.vertical()?t.y:t.x},i.handleKeyDown=function(t){D.default.isEventKey(t,"Left")||D.default.isEventKey(t,"Down")?(t.preventDefault(),t.stopPropagation(),this.stepBack()):D.default.isEventKey(t,"Right")||D.default.isEventKey(t,"Up")?(t.preventDefault(),t.stopPropagation(),this.stepForward()):e.prototype.handleKeyDown.call(this,t)},i.handleClick=function(e){e.stopPropagation(),e.preventDefault()},i.vertical=function(e){if(void 0===e)return this.vertical_||!1;this.vertical_=!!e,this.vertical_?this.addClass("vjs-slider-vertical"):this.addClass("vjs-slider-horizontal")},t}(Kt);Kt.registerComponent("Slider",vn);var yn=function(e,t){return _n(e/t*100,0,100).toFixed(2)+"%"},bn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).partEls_=[],n.on(t,"progress",(function(e){return n.update(e)})),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-load-progress"}),i=Le("span",{className:"vjs-control-text"}),n=Le("span",{textContent:this.localize("Loaded")}),r=k.default.createTextNode(": ");return this.percentageEl_=Le("span",{className:"vjs-control-text-loaded-percentage",textContent:"0%"}),t.appendChild(i),i.appendChild(n),i.appendChild(r),i.appendChild(this.percentageEl_),t},i.dispose=function(){this.partEls_=null,this.percentageEl_=null,e.prototype.dispose.call(this)},i.update=function(e){var t=this;this.requestNamedAnimationFrame("LoadProgressBar#update",(function(){var e=t.player_.liveTracker,i=t.player_.buffered(),n=e&&e.isLive()?e.seekableEnd():t.player_.duration(),r=t.player_.bufferedEnd(),a=t.partEls_,s=yn(r,n);t.percent_!==s&&(t.el_.style.width=s,De(t.percentageEl_,s),t.percent_=s);for(var o=0;oi.length;h--)t.el_.removeChild(a[h-1]);a.length=i.length}))},t}(Kt);Kt.registerComponent("LoadProgressBar",bn);var Tn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(x.default(n),n.update),30),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-time-tooltip"},{"aria-hidden":"true"})},i.update=function(e,t,i){var n=Ye(this.el_),r=We(this.player_.el()),a=e.width*t;if(r&&n){var s=e.left-r.left+a,o=e.width-a+(r.right-e.right),u=n.width/2;sn.width&&(u=n.width),u=Math.round(u),this.el_.style.right="-"+u+"px",this.write(i)}},i.write=function(e){De(this.el_,e)},i.updateTime=function(e,t,i,n){var r=this;this.requestNamedAnimationFrame("TimeTooltip#updateTime",(function(){var a,s=r.player_.duration();if(r.player_.liveTracker&&r.player_.liveTracker.isLive()){var o=r.player_.liveTracker.liveWindow(),u=o-t*o;a=(u<1?"":"-")+ln(u,o)}else a=ln(i,s);r.update(e,t,a),n&&n()}))},t}(Kt);Kt.registerComponent("TimeTooltip",Tn);var Sn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(x.default(n),n.update),30),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-play-progress vjs-slider-bar"},{"aria-hidden":"true"})},i.update=function(e,t){var i=this.getChild("timeTooltip");if(i){var n=this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime();i.updateTime(e,t,n)}},t}(Kt);Sn.prototype.options_={children:[]},Se||le||Sn.prototype.options_.children.push("timeTooltip"),Kt.registerComponent("PlayProgressBar",Sn);var En=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(x.default(n),n.update),30),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-mouse-display"})},i.update=function(e,t){var i=this,n=t*this.player_.duration();this.getChild("timeTooltip").updateTime(e,t,n,(function(){i.el_.style.left=e.width*t+"px"}))},t}(Kt);En.prototype.options_={children:["timeTooltip"]},Kt.registerComponent("MouseTimeDisplay",En);var wn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).setEventHandlers_(),n}P.default(t,e);var i=t.prototype;return i.setEventHandlers_=function(){var e=this;this.update_=At(this,this.update),this.update=kt(this.update_,30),this.on(this.player_,["ended","durationchange","timeupdate"],this.update),this.player_.liveTracker&&this.on(this.player_.liveTracker,"liveedgechange",this.update),this.updateInterval=null,this.enableIntervalHandler_=function(t){return e.enableInterval_(t)},this.disableIntervalHandler_=function(t){return e.disableInterval_(t)},this.on(this.player_,["playing"],this.enableIntervalHandler_),this.on(this.player_,["ended","pause","waiting"],this.disableIntervalHandler_),"hidden"in k.default&&"visibilityState"in k.default&&this.on(k.default,"visibilitychange",this.toggleVisibility_)},i.toggleVisibility_=function(e){"hidden"===k.default.visibilityState?(this.cancelNamedAnimationFrame("SeekBar#update"),this.cancelNamedAnimationFrame("Slider#update"),this.disableInterval_(e)):(this.player_.ended()||this.player_.paused()||this.enableInterval_(),this.update())},i.enableInterval_=function(){this.updateInterval||(this.updateInterval=this.setInterval(this.update,30))},i.disableInterval_=function(e){this.player_.liveTracker&&this.player_.liveTracker.isLive()&&e&&"ended"!==e.type||this.updateInterval&&(this.clearInterval(this.updateInterval),this.updateInterval=null)},i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-progress-holder"},{"aria-label":this.localize("Progress Bar")})},i.update=function(t){var i=this;if("hidden"!==k.default.visibilityState){var n=e.prototype.update.call(this);return this.requestNamedAnimationFrame("SeekBar#update",(function(){var e=i.player_.ended()?i.player_.duration():i.getCurrentTime_(),t=i.player_.liveTracker,r=i.player_.duration();t&&t.isLive()&&(r=i.player_.liveTracker.liveCurrentTime()),i.percent_!==n&&(i.el_.setAttribute("aria-valuenow",(100*n).toFixed(2)),i.percent_=n),i.currentTime_===e&&i.duration_===r||(i.el_.setAttribute("aria-valuetext",i.localize("progress bar timing: currentTime={1} duration={2}",[ln(e,r),ln(r,r)],"{1} of {2}")),i.currentTime_=e,i.duration_=r),i.bar&&i.bar.update(We(i.el()),i.getProgress())})),n}},i.userSeek_=function(e){this.player_.liveTracker&&this.player_.liveTracker.isLive()&&this.player_.liveTracker.nextSeekedFromUser(),this.player_.currentTime(e)},i.getCurrentTime_=function(){return this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime()},i.getPercent=function(){var e,t=this.getCurrentTime_(),i=this.player_.liveTracker;return i&&i.isLive()?(e=(t-i.seekableStart())/i.liveWindow(),i.atLiveEdge()&&(e=1)):e=t/this.player_.duration(),e},i.handleMouseDown=function(t){Ze(t)&&(t.stopPropagation(),this.player_.scrubbing(!0),this.videoWasPlaying=!this.player_.paused(),this.player_.pause(),e.prototype.handleMouseDown.call(this,t))},i.handleMouseMove=function(e){if(Ze(e)){var t,i=this.calculateDistance(e),n=this.player_.liveTracker;if(n&&n.isLive()){if(i>=.99)return void n.seekToLiveEdge();var r=n.seekableStart(),a=n.liveCurrentTime();if((t=r+i*n.liveWindow())>=a&&(t=a),t<=r&&(t=r+.1),t===1/0)return}else(t=i*this.player_.duration())===this.player_.duration()&&(t-=.1);this.userSeek_(t)}},i.enable=function(){e.prototype.enable.call(this);var t=this.getChild("mouseTimeDisplay");t&&t.show()},i.disable=function(){e.prototype.disable.call(this);var t=this.getChild("mouseTimeDisplay");t&&t.hide()},i.handleMouseUp=function(t){e.prototype.handleMouseUp.call(this,t),t&&t.stopPropagation(),this.player_.scrubbing(!1),this.player_.trigger({type:"timeupdate",target:this,manuallyTriggered:!0}),this.videoWasPlaying?ii(this.player_.play()):this.update_()},i.stepForward=function(){this.userSeek_(this.player_.currentTime()+5)},i.stepBack=function(){this.userSeek_(this.player_.currentTime()-5)},i.handleAction=function(e){this.player_.paused()?this.player_.play():this.player_.pause()},i.handleKeyDown=function(t){var i=this.player_.liveTracker;if(D.default.isEventKey(t,"Space")||D.default.isEventKey(t,"Enter"))t.preventDefault(),t.stopPropagation(),this.handleAction(t);else if(D.default.isEventKey(t,"Home"))t.preventDefault(),t.stopPropagation(),this.userSeek_(0);else if(D.default.isEventKey(t,"End"))t.preventDefault(),t.stopPropagation(),i&&i.isLive()?this.userSeek_(i.liveCurrentTime()):this.userSeek_(this.player_.duration());else if(/^[0-9]$/.test(D.default(t))){t.preventDefault(),t.stopPropagation();var n=10*(D.default.codes[D.default(t)]-D.default.codes[0])/100;i&&i.isLive()?this.userSeek_(i.seekableStart()+i.liveWindow()*n):this.userSeek_(this.player_.duration()*n)}else D.default.isEventKey(t,"PgDn")?(t.preventDefault(),t.stopPropagation(),this.userSeek_(this.player_.currentTime()-60)):D.default.isEventKey(t,"PgUp")?(t.preventDefault(),t.stopPropagation(),this.userSeek_(this.player_.currentTime()+60)):e.prototype.handleKeyDown.call(this,t)},i.dispose=function(){this.disableInterval_(),this.off(this.player_,["ended","durationchange","timeupdate"],this.update),this.player_.liveTracker&&this.off(this.player_.liveTracker,"liveedgechange",this.update),this.off(this.player_,["playing"],this.enableIntervalHandler_),this.off(this.player_,["ended","pause","waiting"],this.disableIntervalHandler_),"hidden"in k.default&&"visibilityState"in k.default&&this.off(k.default,"visibilitychange",this.toggleVisibility_),e.prototype.dispose.call(this)},t}(vn);wn.prototype.options_={children:["loadProgressBar","playProgressBar"],barName:"playProgressBar"},Se||le||wn.prototype.options_.children.splice(1,0,"mouseTimeDisplay"),Kt.registerComponent("SeekBar",wn);var Cn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).handleMouseMove=kt(At(x.default(n),n.handleMouseMove),30),n.throttledHandleMouseSeek=kt(At(x.default(n),n.handleMouseSeek),30),n.handleMouseUpHandler_=function(e){return n.handleMouseUp(e)},n.handleMouseDownHandler_=function(e){return n.handleMouseDown(e)},n.enable(),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-progress-control vjs-control"})},i.handleMouseMove=function(e){var t=this.getChild("seekBar");if(t){var i=t.getChild("playProgressBar"),n=t.getChild("mouseTimeDisplay");if(i||n){var r=t.el(),a=Ye(r),s=qe(r,e).x;s=_n(s,0,1),n&&n.update(a,s),i&&i.update(a,t.getProgress())}}},i.handleMouseSeek=function(e){var t=this.getChild("seekBar");t&&t.handleMouseMove(e)},i.enabled=function(){return this.enabled_},i.disable=function(){if(this.children().forEach((function(e){return e.disable&&e.disable()})),this.enabled()&&(this.off(["mousedown","touchstart"],this.handleMouseDownHandler_),this.off(this.el_,"mousemove",this.handleMouseMove),this.removeListenersAddedOnMousedownAndTouchstart(),this.addClass("disabled"),this.enabled_=!1,this.player_.scrubbing())){var e=this.getChild("seekBar");this.player_.scrubbing(!1),e.videoWasPlaying&&ii(this.player_.play())}},i.enable=function(){this.children().forEach((function(e){return e.enable&&e.enable()})),this.enabled()||(this.on(["mousedown","touchstart"],this.handleMouseDownHandler_),this.on(this.el_,"mousemove",this.handleMouseMove),this.removeClass("disabled"),this.enabled_=!0)},i.removeListenersAddedOnMousedownAndTouchstart=function(){var e=this.el_.ownerDocument;this.off(e,"mousemove",this.throttledHandleMouseSeek),this.off(e,"touchmove",this.throttledHandleMouseSeek),this.off(e,"mouseup",this.handleMouseUpHandler_),this.off(e,"touchend",this.handleMouseUpHandler_)},i.handleMouseDown=function(e){var t=this.el_.ownerDocument,i=this.getChild("seekBar");i&&i.handleMouseDown(e),this.on(t,"mousemove",this.throttledHandleMouseSeek),this.on(t,"touchmove",this.throttledHandleMouseSeek),this.on(t,"mouseup",this.handleMouseUpHandler_),this.on(t,"touchend",this.handleMouseUpHandler_)},i.handleMouseUp=function(e){var t=this.getChild("seekBar");t&&t.handleMouseUp(e),this.removeListenersAddedOnMousedownAndTouchstart()},t}(Kt);Cn.prototype.options_={children:["seekBar"]},Kt.registerComponent("ProgressControl",Cn);var An=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,["enterpictureinpicture","leavepictureinpicture"],(function(e){return n.handlePictureInPictureChange(e)})),n.on(t,["disablepictureinpicturechanged","loadedmetadata"],(function(e){return n.handlePictureInPictureEnabledChange(e)})),n.disable(),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-picture-in-picture-control "+e.prototype.buildCSSClass.call(this)},i.handlePictureInPictureEnabledChange=function(){k.default.pictureInPictureEnabled&&!1===this.player_.disablePictureInPicture()?this.enable():this.disable()},i.handlePictureInPictureChange=function(e){this.player_.isInPictureInPicture()?this.controlText("Exit Picture-in-Picture"):this.controlText("Picture-in-Picture"),this.handlePictureInPictureEnabledChange()},i.handleClick=function(e){this.player_.isInPictureInPicture()?this.player_.exitPictureInPicture():this.player_.requestPictureInPicture()},t}(nn);An.prototype.controlText_="Picture-in-Picture",Kt.registerComponent("PictureInPictureToggle",An);var kn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,"fullscreenchange",(function(e){return n.handleFullscreenChange(e)})),!1===k.default[t.fsApi_.fullscreenEnabled]&&n.disable(),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-fullscreen-control "+e.prototype.buildCSSClass.call(this)},i.handleFullscreenChange=function(e){this.player_.isFullscreen()?this.controlText("Non-Fullscreen"):this.controlText("Fullscreen")},i.handleClick=function(e){this.player_.isFullscreen()?this.player_.exitFullscreen():this.player_.requestFullscreen()},t}(nn);kn.prototype.controlText_="Fullscreen",Kt.registerComponent("FullscreenToggle",kn);var In=function(e){function t(){return e.apply(this,arguments)||this}return P.default(t,e),t.prototype.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-volume-level"});return t.appendChild(e.prototype.createEl.call(this,"span",{className:"vjs-control-text"})),t},t}(Kt);Kt.registerComponent("VolumeLevel",In);var xn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(x.default(n),n.update),30),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-volume-tooltip"},{"aria-hidden":"true"})},i.update=function(e,t,i,n){if(!i){var r=We(this.el_),a=We(this.player_.el()),s=e.width*t;if(!a||!r)return;var o=e.left-a.left+s,u=e.width-s+(a.right-e.right),l=r.width/2;or.width&&(l=r.width),this.el_.style.right="-"+l+"px"}this.write(n+"%")},i.write=function(e){De(this.el_,e)},i.updateVolume=function(e,t,i,n,r){var a=this;this.requestNamedAnimationFrame("VolumeLevelTooltip#updateVolume",(function(){a.update(e,t,i,n.toFixed(0)),r&&r()}))},t}(Kt);Kt.registerComponent("VolumeLevelTooltip",xn);var Pn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(x.default(n),n.update),30),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-mouse-display"})},i.update=function(e,t,i){var n=this,r=100*t;this.getChild("volumeLevelTooltip").updateVolume(e,t,i,r,(function(){i?n.el_.style.bottom=e.height*t+"px":n.el_.style.left=e.width*t+"px"}))},t}(Kt);Pn.prototype.options_={children:["volumeLevelTooltip"]},Kt.registerComponent("MouseVolumeLevelDisplay",Pn);var Ln=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on("slideractive",(function(e){return n.updateLastVolume_(e)})),n.on(t,"volumechange",(function(e){return n.updateARIAAttributes(e)})),t.ready((function(){return n.updateARIAAttributes()})),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-volume-bar vjs-slider-bar"},{"aria-label":this.localize("Volume Level"),"aria-live":"polite"})},i.handleMouseDown=function(t){Ze(t)&&e.prototype.handleMouseDown.call(this,t)},i.handleMouseMove=function(e){var t=this.getChild("mouseVolumeLevelDisplay");if(t){var i=this.el(),n=We(i),r=this.vertical(),a=qe(i,e);a=r?a.y:a.x,a=_n(a,0,1),t.update(n,a,r)}Ze(e)&&(this.checkMuted(),this.player_.volume(this.calculateDistance(e)))},i.checkMuted=function(){this.player_.muted()&&this.player_.muted(!1)},i.getPercent=function(){return this.player_.muted()?0:this.player_.volume()},i.stepForward=function(){this.checkMuted(),this.player_.volume(this.player_.volume()+.1)},i.stepBack=function(){this.checkMuted(),this.player_.volume(this.player_.volume()-.1)},i.updateARIAAttributes=function(e){var t=this.player_.muted()?0:this.volumeAsPercentage_();this.el_.setAttribute("aria-valuenow",t),this.el_.setAttribute("aria-valuetext",t+"%")},i.volumeAsPercentage_=function(){return Math.round(100*this.player_.volume())},i.updateLastVolume_=function(){var e=this,t=this.player_.volume();this.one("sliderinactive",(function(){0===e.player_.volume()&&e.player_.lastVolume_(t)}))},t}(vn);Ln.prototype.options_={children:["volumeLevel"],barName:"volumeLevel"},Se||le||Ln.prototype.options_.children.splice(0,0,"mouseVolumeLevelDisplay"),Ln.prototype.playerEvent="volumechange",Kt.registerComponent("VolumeBar",Ln);var Dn=function(e){function t(t,i){var n;return void 0===i&&(i={}),i.vertical=i.vertical||!1,(void 0===i.volumeBar||te(i.volumeBar))&&(i.volumeBar=i.volumeBar||{},i.volumeBar.vertical=i.vertical),n=e.call(this,t,i)||this,function(e,t){t.tech_&&!t.tech_.featuresVolumeControl&&e.addClass("vjs-hidden"),e.on(t,"loadstart",(function(){t.tech_.featuresVolumeControl?e.removeClass("vjs-hidden"):e.addClass("vjs-hidden")}))}(x.default(n),t),n.throttledHandleMouseMove=kt(At(x.default(n),n.handleMouseMove),30),n.handleMouseUpHandler_=function(e){return n.handleMouseUp(e)},n.on("mousedown",(function(e){return n.handleMouseDown(e)})),n.on("touchstart",(function(e){return n.handleMouseDown(e)})),n.on("mousemove",(function(e){return n.handleMouseMove(e)})),n.on(n.volumeBar,["focus","slideractive"],(function(){n.volumeBar.addClass("vjs-slider-active"),n.addClass("vjs-slider-active"),n.trigger("slideractive")})),n.on(n.volumeBar,["blur","sliderinactive"],(function(){n.volumeBar.removeClass("vjs-slider-active"),n.removeClass("vjs-slider-active"),n.trigger("sliderinactive")})),n}P.default(t,e);var i=t.prototype;return i.createEl=function(){var t="vjs-volume-horizontal";return this.options_.vertical&&(t="vjs-volume-vertical"),e.prototype.createEl.call(this,"div",{className:"vjs-volume-control vjs-control "+t})},i.handleMouseDown=function(e){var t=this.el_.ownerDocument;this.on(t,"mousemove",this.throttledHandleMouseMove),this.on(t,"touchmove",this.throttledHandleMouseMove),this.on(t,"mouseup",this.handleMouseUpHandler_),this.on(t,"touchend",this.handleMouseUpHandler_)},i.handleMouseUp=function(e){var t=this.el_.ownerDocument;this.off(t,"mousemove",this.throttledHandleMouseMove),this.off(t,"touchmove",this.throttledHandleMouseMove),this.off(t,"mouseup",this.handleMouseUpHandler_),this.off(t,"touchend",this.handleMouseUpHandler_)},i.handleMouseMove=function(e){this.volumeBar.handleMouseMove(e)},t}(Kt);Dn.prototype.options_={children:["volumeBar"]},Kt.registerComponent("VolumeControl",Dn);var Rn=function(e){function t(t,i){var n;return n=e.call(this,t,i)||this,function(e,t){t.tech_&&!t.tech_.featuresMuteControl&&e.addClass("vjs-hidden"),e.on(t,"loadstart",(function(){t.tech_.featuresMuteControl?e.removeClass("vjs-hidden"):e.addClass("vjs-hidden")}))}(x.default(n),t),n.on(t,["loadstart","volumechange"],(function(e){return n.update(e)})),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-mute-control "+e.prototype.buildCSSClass.call(this)},i.handleClick=function(e){var t=this.player_.volume(),i=this.player_.lastVolume_();if(0===t){var n=i<.1?.1:i;this.player_.volume(n),this.player_.muted(!1)}else this.player_.muted(!this.player_.muted())},i.update=function(e){this.updateIcon_(),this.updateControlText_()},i.updateIcon_=function(){var e=this.player_.volume(),t=3;Se&&this.player_.tech_&&this.player_.tech_.el_&&this.player_.muted(this.player_.tech_.el_.muted),0===e||this.player_.muted()?t=0:e<.33?t=1:e<.67&&(t=2);for(var i=0;i<4;i++)Me(this.el_,"vjs-vol-"+i);Oe(this.el_,"vjs-vol-"+t)},i.updateControlText_=function(){var e=this.player_.muted()||0===this.player_.volume()?"Unmute":"Mute";this.controlText()!==e&&this.controlText(e)},t}(nn);Rn.prototype.controlText_="Mute",Kt.registerComponent("MuteToggle",Rn);var Un=function(e){function t(t,i){var n;return void 0===i&&(i={}),void 0!==i.inline?i.inline=i.inline:i.inline=!0,(void 0===i.volumeControl||te(i.volumeControl))&&(i.volumeControl=i.volumeControl||{},i.volumeControl.vertical=!i.inline),(n=e.call(this,t,i)||this).handleKeyPressHandler_=function(e){return n.handleKeyPress(e)},n.on(t,["loadstart"],(function(e){return n.volumePanelState_(e)})),n.on(n.muteToggle,"keyup",(function(e){return n.handleKeyPress(e)})),n.on(n.volumeControl,"keyup",(function(e){return n.handleVolumeControlKeyUp(e)})),n.on("keydown",(function(e){return n.handleKeyPress(e)})),n.on("mouseover",(function(e){return n.handleMouseOver(e)})),n.on("mouseout",(function(e){return n.handleMouseOut(e)})),n.on(n.volumeControl,["slideractive"],n.sliderActive_),n.on(n.volumeControl,["sliderinactive"],n.sliderInactive_),n}P.default(t,e);var i=t.prototype;return i.sliderActive_=function(){this.addClass("vjs-slider-active")},i.sliderInactive_=function(){this.removeClass("vjs-slider-active")},i.volumePanelState_=function(){this.volumeControl.hasClass("vjs-hidden")&&this.muteToggle.hasClass("vjs-hidden")&&this.addClass("vjs-hidden"),this.volumeControl.hasClass("vjs-hidden")&&!this.muteToggle.hasClass("vjs-hidden")&&this.addClass("vjs-mute-toggle-only")},i.createEl=function(){var t="vjs-volume-panel-horizontal";return this.options_.inline||(t="vjs-volume-panel-vertical"),e.prototype.createEl.call(this,"div",{className:"vjs-volume-panel vjs-control "+t})},i.dispose=function(){this.handleMouseOut(),e.prototype.dispose.call(this)},i.handleVolumeControlKeyUp=function(e){D.default.isEventKey(e,"Esc")&&this.muteToggle.focus()},i.handleMouseOver=function(e){this.addClass("vjs-hover"),yt(k.default,"keyup",this.handleKeyPressHandler_)},i.handleMouseOut=function(e){this.removeClass("vjs-hover"),bt(k.default,"keyup",this.handleKeyPressHandler_)},i.handleKeyPress=function(e){D.default.isEventKey(e,"Esc")&&this.handleMouseOut()},t}(Kt);Un.prototype.options_={children:["muteToggle","volumeControl"]},Kt.registerComponent("VolumePanel",Un);var On=function(e){function t(t,i){var n;return n=e.call(this,t,i)||this,i&&(n.menuButton_=i.menuButton),n.focusedChild_=-1,n.on("keydown",(function(e){return n.handleKeyDown(e)})),n.boundHandleBlur_=function(e){return n.handleBlur(e)},n.boundHandleTapClick_=function(e){return n.handleTapClick(e)},n}P.default(t,e);var i=t.prototype;return i.addEventListenerForItem=function(e){e instanceof Kt&&(this.on(e,"blur",this.boundHandleBlur_),this.on(e,["tap","click"],this.boundHandleTapClick_))},i.removeEventListenerForItem=function(e){e instanceof Kt&&(this.off(e,"blur",this.boundHandleBlur_),this.off(e,["tap","click"],this.boundHandleTapClick_))},i.removeChild=function(t){"string"==typeof t&&(t=this.getChild(t)),this.removeEventListenerForItem(t),e.prototype.removeChild.call(this,t)},i.addItem=function(e){var t=this.addChild(e);t&&this.addEventListenerForItem(t)},i.createEl=function(){var t=this.options_.contentElType||"ul";this.contentEl_=Le(t,{className:"vjs-menu-content"}),this.contentEl_.setAttribute("role","menu");var i=e.prototype.createEl.call(this,"div",{append:this.contentEl_,className:"vjs-menu"});return i.appendChild(this.contentEl_),yt(i,"click",(function(e){e.preventDefault(),e.stopImmediatePropagation()})),i},i.dispose=function(){this.contentEl_=null,this.boundHandleBlur_=null,this.boundHandleTapClick_=null,e.prototype.dispose.call(this)},i.handleBlur=function(e){var t=e.relatedTarget||k.default.activeElement;if(!this.children().some((function(e){return e.el()===t}))){var i=this.menuButton_;i&&i.buttonPressed_&&t!==i.el().firstChild&&i.unpressButton()}},i.handleTapClick=function(e){if(this.menuButton_){this.menuButton_.unpressButton();var t=this.children();if(!Array.isArray(t))return;var i=t.filter((function(t){return t.el()===e.target}))[0];if(!i)return;"CaptionSettingsMenuItem"!==i.name()&&this.menuButton_.focus()}},i.handleKeyDown=function(e){D.default.isEventKey(e,"Left")||D.default.isEventKey(e,"Down")?(e.preventDefault(),e.stopPropagation(),this.stepForward()):(D.default.isEventKey(e,"Right")||D.default.isEventKey(e,"Up"))&&(e.preventDefault(),e.stopPropagation(),this.stepBack())},i.stepForward=function(){var e=0;void 0!==this.focusedChild_&&(e=this.focusedChild_+1),this.focus(e)},i.stepBack=function(){var e=0;void 0!==this.focusedChild_&&(e=this.focusedChild_-1),this.focus(e)},i.focus=function(e){void 0===e&&(e=0);var t=this.children().slice();t.length&&t[0].hasClass("vjs-menu-title")&&t.shift(),t.length>0&&(e<0?e=0:e>=t.length&&(e=t.length-1),this.focusedChild_=e,t[e].el_.focus())},t}(Kt);Kt.registerComponent("Menu",On);var Mn=function(e){function t(t,i){var n;void 0===i&&(i={}),(n=e.call(this,t,i)||this).menuButton_=new nn(t,i),n.menuButton_.controlText(n.controlText_),n.menuButton_.el_.setAttribute("aria-haspopup","true");var r=nn.prototype.buildCSSClass();n.menuButton_.el_.className=n.buildCSSClass()+" "+r,n.menuButton_.removeClass("vjs-control"),n.addChild(n.menuButton_),n.update(),n.enabled_=!0;var a=function(e){return n.handleClick(e)};return n.handleMenuKeyUp_=function(e){return n.handleMenuKeyUp(e)},n.on(n.menuButton_,"tap",a),n.on(n.menuButton_,"click",a),n.on(n.menuButton_,"keydown",(function(e){return n.handleKeyDown(e)})),n.on(n.menuButton_,"mouseenter",(function(){n.addClass("vjs-hover"),n.menu.show(),yt(k.default,"keyup",n.handleMenuKeyUp_)})),n.on("mouseleave",(function(e){return n.handleMouseLeave(e)})),n.on("keydown",(function(e){return n.handleSubmenuKeyDown(e)})),n}P.default(t,e);var i=t.prototype;return i.update=function(){var e=this.createMenu();this.menu&&(this.menu.dispose(),this.removeChild(this.menu)),this.menu=e,this.addChild(e),this.buttonPressed_=!1,this.menuButton_.el_.setAttribute("aria-expanded","false"),this.items&&this.items.length<=this.hideThreshold_?this.hide():this.show()},i.createMenu=function(){var e=new On(this.player_,{menuButton:this});if(this.hideThreshold_=0,this.options_.title){var t=Le("li",{className:"vjs-menu-title",textContent:Ht(this.options_.title),tabIndex:-1}),i=new Kt(this.player_,{el:t});e.addItem(i)}if(this.items=this.createItems(),this.items)for(var n=0;n-1&&"showing"===a.mode){i=!1;break}}i!==this.isSelected_&&this.selected(i)},i.handleSelectedLanguageChange=function(e){for(var t=this.player().textTracks(),i=!0,n=0,r=t.length;n-1&&"showing"===a.mode){i=!1;break}}i&&(this.player_.cache_.selectedLanguage={enabled:!1})},t}(jn);Kt.registerComponent("OffTextTrackMenuItem",Vn);var Hn=function(e){function t(t,i){return void 0===i&&(i={}),i.tracks=t.textTracks(),e.call(this,t,i)||this}return P.default(t,e),t.prototype.createItems=function(e,t){var i;void 0===e&&(e=[]),void 0===t&&(t=jn),this.label_&&(i=this.label_+" off"),e.push(new Vn(this.player_,{kinds:this.kinds_,kind:this.kind_,label:i})),this.hideThreshold_+=1;var n=this.player_.textTracks();Array.isArray(this.kinds_)||(this.kinds_=[this.kind_]);for(var r=0;r-1){var s=new t(this.player_,{track:a,kinds:this.kinds_,kind:this.kind_,selectable:!0,multiSelectable:!1});s.addClass("vjs-"+a.kind+"-menu-item"),e.push(s)}}return e},t}(Fn);Kt.registerComponent("TextTrackButton",Hn);var zn=function(e){function t(t,i){var n,r=i.track,a=i.cue,s=t.currentTime();return i.selectable=!0,i.multiSelectable=!1,i.label=a.text,i.selected=a.startTime<=s&&s=0;t--){var i=e[t];if(i.kind===this.kind_)return i}},i.getMenuCaption=function(){return this.track_&&this.track_.label?this.track_.label:this.localize(Ht(this.kind_))},i.createMenu=function(){return this.options_.title=this.getMenuCaption(),e.prototype.createMenu.call(this)},i.createItems=function(){var e=[];if(!this.track_)return e;var t=this.track_.cues;if(!t)return e;for(var i=0,n=t.length;i-1&&(n.label_="captions"),n.menuButton_.controlText(Ht(n.label_)),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-subs-caps-button "+e.prototype.buildCSSClass.call(this)},i.buildWrapperCSSClass=function(){return"vjs-subs-caps-button "+e.prototype.buildWrapperCSSClass.call(this)},i.createItems=function(){var t=[];return this.player().tech_&&this.player().tech_.featuresNativeTextTracks||!this.player().getChild("textTrackSettings")||(t.push(new qn(this.player_,{kind:this.label_})),this.hideThreshold_+=1),t=e.prototype.createItems.call(this,t,Xn)},t}(Hn);Qn.prototype.kinds_=["captions","subtitles"],Qn.prototype.controlText_="Subtitles",Kt.registerComponent("SubsCapsButton",Qn);var $n=function(e){function t(t,i){var n,r=i.track,a=t.audioTracks();i.label=r.label||r.language||"Unknown",i.selected=r.enabled,(n=e.call(this,t,i)||this).track=r,n.addClass("vjs-"+r.kind+"-menu-item");var s=function(){for(var e=arguments.length,t=new Array(e),i=0;i=0;i--)t.push(new Zn(this.player(),{rate:e[i]+"x"}));return t},i.updateARIAAttributes=function(){this.el().setAttribute("aria-valuenow",this.player().playbackRate())},i.handleClick=function(e){for(var t=this.player().playbackRate(),i=this.playbackRates(),n=i[0],r=0;rt){n=i[r];break}this.player().playbackRate(n)},i.handlePlaybackRateschange=function(e){this.update()},i.playbackRates=function(){var e=this.player();return e.playbackRates&&e.playbackRates()||[]},i.playbackRateSupported=function(){return this.player().tech_&&this.player().tech_.featuresPlaybackRate&&this.playbackRates()&&this.playbackRates().length>0},i.updateVisibility=function(e){this.playbackRateSupported()?this.removeClass("vjs-hidden"):this.addClass("vjs-hidden")},i.updateLabel=function(e){this.playbackRateSupported()&&(this.labelEl_.textContent=this.player().playbackRate()+"x")},t}(Mn);er.prototype.controlText_="Playback Rate",Kt.registerComponent("PlaybackRateMenuButton",er);var tr=function(e){function t(){return e.apply(this,arguments)||this}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-spacer "+e.prototype.buildCSSClass.call(this)},i.createEl=function(t,i,n){return void 0===t&&(t="div"),void 0===i&&(i={}),void 0===n&&(n={}),i.className||(i.className=this.buildCSSClass()),e.prototype.createEl.call(this,t,i,n)},t}(Kt);Kt.registerComponent("Spacer",tr);var ir=function(e){function t(){return e.apply(this,arguments)||this}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-custom-control-spacer "+e.prototype.buildCSSClass.call(this)},i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:this.buildCSSClass(),textContent:" "})},t}(tr);Kt.registerComponent("CustomControlSpacer",ir);var nr=function(e){function t(){return e.apply(this,arguments)||this}return P.default(t,e),t.prototype.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-control-bar",dir:"ltr"})},t}(Kt);nr.prototype.options_={children:["playToggle","volumePanel","currentTimeDisplay","timeDivider","durationDisplay","progressControl","liveDisplay","seekToLive","remainingTimeDisplay","customControlSpacer","playbackRateMenuButton","chaptersButton","descriptionsButton","subsCapsButton","audioTrackButton","fullscreenToggle"]},"exitPictureInPicture"in k.default&&nr.prototype.options_.children.splice(nr.prototype.options_.children.length-1,0,"pictureInPictureToggle"),Kt.registerComponent("ControlBar",nr);var rr=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,"error",(function(e){return n.open(e)})),n}P.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-error-display "+e.prototype.buildCSSClass.call(this)},i.content=function(){var e=this.player().error();return e?this.localize(e.message):""},t}(si);rr.prototype.options_=I.default({},si.prototype.options_,{pauseOnOpen:!1,fillAlways:!0,temporary:!1,uncloseable:!0}),Kt.registerComponent("ErrorDisplay",rr);var ar=["#000","Black"],sr=["#00F","Blue"],or=["#0FF","Cyan"],ur=["#0F0","Green"],lr=["#F0F","Magenta"],dr=["#F00","Red"],hr=["#FFF","White"],cr=["#FF0","Yellow"],fr=["1","Opaque"],pr=["0.5","Semi-Transparent"],mr=["0","Transparent"],gr={backgroundColor:{selector:".vjs-bg-color > select",id:"captions-background-color-%s",label:"Color",options:[ar,hr,dr,ur,sr,cr,lr,or]},backgroundOpacity:{selector:".vjs-bg-opacity > select",id:"captions-background-opacity-%s",label:"Transparency",options:[fr,pr,mr]},color:{selector:".vjs-fg-color > select",id:"captions-foreground-color-%s",label:"Color",options:[hr,ar,dr,ur,sr,cr,lr,or]},edgeStyle:{selector:".vjs-edge-style > select",id:"%s",label:"Text Edge Style",options:[["none","None"],["raised","Raised"],["depressed","Depressed"],["uniform","Uniform"],["dropshadow","Dropshadow"]]},fontFamily:{selector:".vjs-font-family > select",id:"captions-font-family-%s",label:"Font Family",options:[["proportionalSansSerif","Proportional Sans-Serif"],["monospaceSansSerif","Monospace Sans-Serif"],["proportionalSerif","Proportional Serif"],["monospaceSerif","Monospace Serif"],["casual","Casual"],["script","Script"],["small-caps","Small Caps"]]},fontPercent:{selector:".vjs-font-percent > select",id:"captions-font-size-%s",label:"Font Size",options:[["0.50","50%"],["0.75","75%"],["1.00","100%"],["1.25","125%"],["1.50","150%"],["1.75","175%"],["2.00","200%"],["3.00","300%"],["4.00","400%"]],default:2,parser:function(e){return"1.00"===e?null:Number(e)}},textOpacity:{selector:".vjs-text-opacity > select",id:"captions-foreground-opacity-%s",label:"Transparency",options:[fr,pr]},windowColor:{selector:".vjs-window-color > select",id:"captions-window-color-%s",label:"Color"},windowOpacity:{selector:".vjs-window-opacity > select",id:"captions-window-opacity-%s",label:"Transparency",options:[mr,pr,fr]}};function _r(e,t){if(t&&(e=t(e)),e&&"none"!==e)return e}gr.windowColor.options=gr.backgroundColor.options;var vr=function(e){function t(t,i){var n;return i.temporary=!1,(n=e.call(this,t,i)||this).updateDisplay=n.updateDisplay.bind(x.default(n)),n.fill(),n.hasBeenOpened_=n.hasBeenFilled_=!0,n.endDialog=Le("p",{className:"vjs-control-text",textContent:n.localize("End of dialog window.")}),n.el().appendChild(n.endDialog),n.setDefaults(),void 0===i.persistTextTrackSettings&&(n.options_.persistTextTrackSettings=n.options_.playerOptions.persistTextTrackSettings),n.on(n.$(".vjs-done-button"),"click",(function(){n.saveSettings(),n.close()})),n.on(n.$(".vjs-default-button"),"click",(function(){n.setDefaults(),n.updateDisplay()})),J(gr,(function(e){n.on(n.$(e.selector),"change",n.updateDisplay)})),n.options_.persistTextTrackSettings&&n.restoreSettings(),n}P.default(t,e);var i=t.prototype;return i.dispose=function(){this.endDialog=null,e.prototype.dispose.call(this)},i.createElSelect_=function(e,t,i){var n=this;void 0===t&&(t=""),void 0===i&&(i="label");var r=gr[e],a=r.id.replace("%s",this.id_),s=[t,a].join(" ").trim();return["<"+i+' id="'+a+'" class="'+("label"===i?"vjs-label":"")+'">',this.localize(r.label),"",'").join("")},i.createElFgColor_=function(){var e="captions-text-legend-"+this.id_;return['
','',this.localize("Text"),"",this.createElSelect_("color",e),'',this.createElSelect_("textOpacity",e),"","
"].join("")},i.createElBgColor_=function(){var e="captions-background-"+this.id_;return['
','',this.localize("Background"),"",this.createElSelect_("backgroundColor",e),'',this.createElSelect_("backgroundOpacity",e),"","
"].join("")},i.createElWinColor_=function(){var e="captions-window-"+this.id_;return['
','',this.localize("Window"),"",this.createElSelect_("windowColor",e),'',this.createElSelect_("windowOpacity",e),"","
"].join("")},i.createElColors_=function(){return Le("div",{className:"vjs-track-settings-colors",innerHTML:[this.createElFgColor_(),this.createElBgColor_(),this.createElWinColor_()].join("")})},i.createElFont_=function(){return Le("div",{className:"vjs-track-settings-font",innerHTML:['
',this.createElSelect_("fontPercent","","legend"),"
",'
',this.createElSelect_("edgeStyle","","legend"),"
",'
',this.createElSelect_("fontFamily","","legend"),"
"].join("")})},i.createElControls_=function(){var e=this.localize("restore all settings to the default values");return Le("div",{className:"vjs-track-settings-controls",innerHTML:['",'"].join("")})},i.content=function(){return[this.createElColors_(),this.createElFont_(),this.createElControls_()]},i.label=function(){return this.localize("Caption Settings Dialog")},i.description=function(){return this.localize("Beginning of dialog window. Escape will cancel and close the window.")},i.buildCSSClass=function(){return e.prototype.buildCSSClass.call(this)+" vjs-text-track-settings"},i.getValues=function(){var e,t,i,n=this;return t=function(e,t,i){var r,a,s=(r=n.$(t.selector),a=t.parser,_r(r.options[r.options.selectedIndex].value,a));return void 0!==s&&(e[i]=s),e},void 0===(i={})&&(i=0),$(e=gr).reduce((function(i,n){return t(i,e[n],n)}),i)},i.setValues=function(e){var t=this;J(gr,(function(i,n){!function(e,t,i){if(t)for(var n=0;nthis.options_.liveTolerance;this.timeupdateSeen_&&n!==1/0||(a=!1),a!==this.behindLiveEdge_&&(this.behindLiveEdge_=a,this.trigger("liveedgechange"))}},i.handleDurationchange=function(){this.toggleTracking()},i.toggleTracking=function(){this.player_.duration()===1/0&&this.liveWindow()>=this.options_.trackingThreshold?(this.player_.options_.liveui&&this.player_.addClass("vjs-liveui"),this.startTracking()):(this.player_.removeClass("vjs-liveui"),this.stopTracking())},i.startTracking=function(){this.isTracking()||(this.timeupdateSeen_||(this.timeupdateSeen_=this.player_.hasStarted()),this.trackingInterval_=this.setInterval(this.trackLiveHandler_,30),this.trackLive_(),this.on(this.player_,["play","pause"],this.trackLiveHandler_),this.timeupdateSeen_?this.on(this.player_,"seeked",this.handleSeeked_):(this.one(this.player_,"play",this.handlePlay_),this.one(this.player_,"timeupdate",this.handleFirstTimeupdate_)))},i.handleFirstTimeupdate=function(){this.timeupdateSeen_=!0,this.on(this.player_,"seeked",this.handleSeeked_)},i.handleSeeked=function(){var e=Math.abs(this.liveCurrentTime()-this.player_.currentTime());this.seekedBehindLive_=this.nextSeekedFromUser_&&e>2,this.nextSeekedFromUser_=!1,this.trackLive_()},i.handlePlay=function(){this.one(this.player_,"timeupdate",this.seekToLiveEdge_)},i.reset_=function(){this.lastTime_=-1,this.pastSeekEnd_=0,this.lastSeekEnd_=-1,this.behindLiveEdge_=!0,this.timeupdateSeen_=!1,this.seekedBehindLive_=!1,this.nextSeekedFromUser_=!1,this.clearInterval(this.trackingInterval_),this.trackingInterval_=null,this.off(this.player_,["play","pause"],this.trackLiveHandler_),this.off(this.player_,"seeked",this.handleSeeked_),this.off(this.player_,"play",this.handlePlay_),this.off(this.player_,"timeupdate",this.handleFirstTimeupdate_),this.off(this.player_,"timeupdate",this.seekToLiveEdge_)},i.nextSeekedFromUser=function(){this.nextSeekedFromUser_=!0},i.stopTracking=function(){this.isTracking()&&(this.reset_(),this.trigger("liveedgechange"))},i.seekableEnd=function(){for(var e=this.player_.seekable(),t=[],i=e?e.length:0;i--;)t.push(e.end(i));return t.length?t.sort()[t.length-1]:1/0},i.seekableStart=function(){for(var e=this.player_.seekable(),t=[],i=e?e.length:0;i--;)t.push(e.start(i));return t.length?t.sort()[0]:0},i.liveWindow=function(){var e=this.liveCurrentTime();return e===1/0?0:e-this.seekableStart()},i.isLive=function(){return this.isTracking()},i.atLiveEdge=function(){return!this.behindLiveEdge()},i.liveCurrentTime=function(){return this.pastSeekEnd()+this.seekableEnd()},i.pastSeekEnd=function(){var e=this.seekableEnd();return-1!==this.lastSeekEnd_&&e!==this.lastSeekEnd_&&(this.pastSeekEnd_=0),this.lastSeekEnd_=e,this.pastSeekEnd_},i.behindLiveEdge=function(){return this.behindLiveEdge_},i.isTracking=function(){return"number"==typeof this.trackingInterval_},i.seekToLiveEdge=function(){this.seekedBehindLive_=!1,this.atLiveEdge()||(this.nextSeekedFromUser_=!1,this.player_.currentTime(this.liveCurrentTime()))},i.dispose=function(){this.off(k.default,"visibilitychange",this.handleVisibilityChange_),this.stopTracking(),e.prototype.dispose.call(this)},t}(Kt);Kt.registerComponent("LiveTracker",Tr);var Sr,Er=function(e){var t=e.el();if(t.hasAttribute("src"))return e.triggerSourceset(t.src),!0;var i=e.$$("source"),n=[],r="";if(!i.length)return!1;for(var a=0;a=2&&r.push("loadeddata"),e.readyState>=3&&r.push("canplay"),e.readyState>=4&&r.push("canplaythrough"),this.ready((function(){r.forEach((function(e){this.trigger(e)}),this)}))}},i.setScrubbing=function(e){this.isScrubbing_=e},i.scrubbing=function(){return this.isScrubbing_},i.setCurrentTime=function(e){try{this.isScrubbing_&&this.el_.fastSeek&&Ee?this.el_.fastSeek(e):this.el_.currentTime=e}catch(e){K(e,"Video is not ready. (Video.js)")}},i.duration=function(){var e=this;if(this.el_.duration===1/0&&le&&pe&&0===this.el_.currentTime){return this.on("timeupdate",(function t(){e.el_.currentTime>0&&(e.el_.duration===1/0&&e.trigger("durationchange"),e.off("timeupdate",t))})),NaN}return this.el_.duration||NaN},i.width=function(){return this.el_.offsetWidth},i.height=function(){return this.el_.offsetHeight},i.proxyWebkitFullscreen_=function(){var e=this;if("webkitDisplayingFullscreen"in this.el_){var t=function(){this.trigger("fullscreenchange",{isFullscreen:!1})},i=function(){"webkitPresentationMode"in this.el_&&"picture-in-picture"!==this.el_.webkitPresentationMode&&(this.one("webkitendfullscreen",t),this.trigger("fullscreenchange",{isFullscreen:!0,nativeIOSFullscreen:!0}))};this.on("webkitbeginfullscreen",i),this.on("dispose",(function(){e.off("webkitbeginfullscreen",i),e.off("webkitendfullscreen",t)}))}},i.supportsFullScreen=function(){if("function"==typeof this.el_.webkitEnterFullScreen){var e=A.default.navigator&&A.default.navigator.userAgent||"";if(/Android/.test(e)||!/Chrome|Mac OS X 10.5/.test(e))return!0}return!1},i.enterFullScreen=function(){var e=this.el_;if(e.paused&&e.networkState<=e.HAVE_METADATA)ii(this.el_.play()),this.setTimeout((function(){e.pause();try{e.webkitEnterFullScreen()}catch(e){this.trigger("fullscreenerror",e)}}),0);else try{e.webkitEnterFullScreen()}catch(e){this.trigger("fullscreenerror",e)}},i.exitFullScreen=function(){this.el_.webkitDisplayingFullscreen?this.el_.webkitExitFullScreen():this.trigger("fullscreenerror",new Error("The video is not fullscreen"))},i.requestPictureInPicture=function(){return this.el_.requestPictureInPicture()},i.src=function(e){if(void 0===e)return this.el_.src;this.setSrc(e)},i.reset=function(){t.resetMediaElement(this.el_)},i.currentSrc=function(){return this.currentSource_?this.currentSource_.src:this.el_.currentSrc},i.setControls=function(e){this.el_.controls=!!e},i.addTextTrack=function(t,i,n){return this.featuresNativeTextTracks?this.el_.addTextTrack(t,i,n):e.prototype.addTextTrack.call(this,t,i,n)},i.createRemoteTextTrack=function(t){if(!this.featuresNativeTextTracks)return e.prototype.createRemoteTextTrack.call(this,t);var i=k.default.createElement("track");return t.kind&&(i.kind=t.kind),t.label&&(i.label=t.label),(t.language||t.srclang)&&(i.srclang=t.language||t.srclang),t.default&&(i.default=t.default),t.id&&(i.id=t.id),t.src&&(i.src=t.src),i},i.addRemoteTextTrack=function(t,i){var n=e.prototype.addRemoteTextTrack.call(this,t,i);return this.featuresNativeTextTracks&&this.el().appendChild(n),n},i.removeRemoteTextTrack=function(t){if(e.prototype.removeRemoteTextTrack.call(this,t),this.featuresNativeTextTracks)for(var i=this.$$("track"),n=i.length;n--;)t!==i[n]&&t!==i[n].track||this.el().removeChild(i[n])},i.getVideoPlaybackQuality=function(){if("function"==typeof this.el().getVideoPlaybackQuality)return this.el().getVideoPlaybackQuality();var e={};return void 0!==this.el().webkitDroppedFrameCount&&void 0!==this.el().webkitDecodedFrameCount&&(e.droppedVideoFrames=this.el().webkitDroppedFrameCount,e.totalVideoFrames=this.el().webkitDecodedFrameCount),A.default.performance&&"function"==typeof A.default.performance.now?e.creationTime=A.default.performance.now():A.default.performance&&A.default.performance.timing&&"number"==typeof A.default.performance.timing.navigationStart&&(e.creationTime=A.default.Date.now()-A.default.performance.timing.navigationStart),e},t}(Oi);xr(Pr,"TEST_VID",(function(){if(ke()){var e=k.default.createElement("video"),t=k.default.createElement("track");return t.kind="captions",t.srclang="en",t.label="English",e.appendChild(t),e}})),Pr.isSupported=function(){try{Pr.TEST_VID.volume=.5}catch(e){return!1}return!(!Pr.TEST_VID||!Pr.TEST_VID.canPlayType)},Pr.canPlayType=function(e){return Pr.TEST_VID.canPlayType(e)},Pr.canPlaySource=function(e,t){return Pr.canPlayType(e.type)},Pr.canControlVolume=function(){try{var e=Pr.TEST_VID.volume;return Pr.TEST_VID.volume=e/2+.1,e!==Pr.TEST_VID.volume}catch(e){return!1}},Pr.canMuteVolume=function(){try{var e=Pr.TEST_VID.muted;return Pr.TEST_VID.muted=!e,Pr.TEST_VID.muted?Ve(Pr.TEST_VID,"muted","muted"):He(Pr.TEST_VID,"muted"),e!==Pr.TEST_VID.muted}catch(e){return!1}},Pr.canControlPlaybackRate=function(){if(le&&pe&&me<58)return!1;try{var e=Pr.TEST_VID.playbackRate;return Pr.TEST_VID.playbackRate=e/2+.1,e!==Pr.TEST_VID.playbackRate}catch(e){return!1}},Pr.canOverrideAttributes=function(){try{var e=function(){};Object.defineProperty(k.default.createElement("video"),"src",{get:e,set:e}),Object.defineProperty(k.default.createElement("audio"),"src",{get:e,set:e}),Object.defineProperty(k.default.createElement("video"),"innerHTML",{get:e,set:e}),Object.defineProperty(k.default.createElement("audio"),"innerHTML",{get:e,set:e})}catch(e){return!1}return!0},Pr.supportsNativeTextTracks=function(){return Ee||Se&&pe},Pr.supportsNativeVideoTracks=function(){return!(!Pr.TEST_VID||!Pr.TEST_VID.videoTracks)},Pr.supportsNativeAudioTracks=function(){return!(!Pr.TEST_VID||!Pr.TEST_VID.audioTracks)},Pr.Events=["loadstart","suspend","abort","error","emptied","stalled","loadedmetadata","loadeddata","canplay","canplaythrough","playing","waiting","seeking","seeked","ended","durationchange","timeupdate","progress","play","pause","ratechange","resize","volumechange"],[["featuresVolumeControl","canControlVolume"],["featuresMuteControl","canMuteVolume"],["featuresPlaybackRate","canControlPlaybackRate"],["featuresSourceset","canOverrideAttributes"],["featuresNativeTextTracks","supportsNativeTextTracks"],["featuresNativeVideoTracks","supportsNativeVideoTracks"],["featuresNativeAudioTracks","supportsNativeAudioTracks"]].forEach((function(e){var t=e[0],i=e[1];xr(Pr.prototype,t,(function(){return Pr[i]()}),!0)})),Pr.prototype.movingMediaElementInDOM=!Se,Pr.prototype.featuresFullscreenResize=!0,Pr.prototype.featuresProgressEvents=!0,Pr.prototype.featuresTimeupdateEvents=!0,Pr.patchCanPlayType=function(){de>=4&&!ce&&!pe&&(Sr=Pr.TEST_VID&&Pr.TEST_VID.constructor.prototype.canPlayType,Pr.TEST_VID.constructor.prototype.canPlayType=function(e){return e&&/^application\/(?:x-|vnd\.apple\.)mpegurl/i.test(e)?"maybe":Sr.call(this,e)})},Pr.unpatchCanPlayType=function(){var e=Pr.TEST_VID.constructor.prototype.canPlayType;return Sr&&(Pr.TEST_VID.constructor.prototype.canPlayType=Sr),e},Pr.patchCanPlayType(),Pr.disposeMediaElement=function(e){if(e){for(e.parentNode&&e.parentNode.removeChild(e);e.hasChildNodes();)e.removeChild(e.firstChild);e.removeAttribute("src"),"function"==typeof e.load&&function(){try{e.load()}catch(e){}}()}},Pr.resetMediaElement=function(e){if(e){for(var t=e.querySelectorAll("source"),i=t.length;i--;)e.removeChild(t[i]);e.removeAttribute("src"),"function"==typeof e.load&&function(){try{e.load()}catch(e){}}()}},["muted","defaultMuted","autoplay","controls","loop","playsinline"].forEach((function(e){Pr.prototype[e]=function(){return this.el_[e]||this.el_.hasAttribute(e)}})),["muted","defaultMuted","autoplay","loop","playsinline"].forEach((function(e){Pr.prototype["set"+Ht(e)]=function(t){this.el_[e]=t,t?this.el_.setAttribute(e,e):this.el_.removeAttribute(e)}})),["paused","currentTime","buffered","volume","poster","preload","error","seeking","seekable","ended","playbackRate","defaultPlaybackRate","disablePictureInPicture","played","networkState","readyState","videoWidth","videoHeight","crossOrigin"].forEach((function(e){Pr.prototype[e]=function(){return this.el_[e]}})),["volume","src","poster","preload","playbackRate","defaultPlaybackRate","disablePictureInPicture","crossOrigin"].forEach((function(e){Pr.prototype["set"+Ht(e)]=function(t){this.el_[e]=t}})),["pause","load","play"].forEach((function(e){Pr.prototype[e]=function(){return this.el_[e]()}})),Oi.withSourceHandlers(Pr),Pr.nativeSourceHandler={},Pr.nativeSourceHandler.canPlayType=function(e){try{return Pr.TEST_VID.canPlayType(e)}catch(e){return""}},Pr.nativeSourceHandler.canHandleSource=function(e,t){if(e.type)return Pr.nativeSourceHandler.canPlayType(e.type);if(e.src){var i=Ei(e.src);return Pr.nativeSourceHandler.canPlayType("video/"+i)}return""},Pr.nativeSourceHandler.handleSource=function(e,t,i){t.setSrc(e.src)},Pr.nativeSourceHandler.dispose=function(){},Pr.registerSourceHandler(Pr.nativeSourceHandler),Oi.registerTech("Html5",Pr);var Lr=["progress","abort","suspend","emptied","stalled","loadedmetadata","loadeddata","timeupdate","resize","volumechange","texttrackchange"],Dr={canplay:"CanPlay",canplaythrough:"CanPlayThrough",playing:"Playing",seeked:"Seeked"},Rr=["tiny","xsmall","small","medium","large","xlarge","huge"],Ur={};Rr.forEach((function(e){var t="x"===e.charAt(0)?"x-"+e.substring(1):e;Ur[e]="vjs-layout-"+t}));var Or={tiny:210,xsmall:320,small:425,medium:768,large:1440,xlarge:2560,huge:1/0},Mr=function(e){function t(i,n,r){var a;if(i.id=i.id||n.id||"vjs_video_"+ct(),(n=Z(t.getTagSettings(i),n)).initChildren=!1,n.createEl=!1,n.evented=!1,n.reportTouchActivity=!1,!n.language)if("function"==typeof i.closest){var s=i.closest("[lang]");s&&s.getAttribute&&(n.language=s.getAttribute("lang"))}else for(var o=i;o&&1===o.nodeType;){if(Ne(o).hasOwnProperty("lang")){n.language=o.getAttribute("lang");break}o=o.parentNode}if((a=e.call(this,null,n,r)||this).boundDocumentFullscreenChange_=function(e){return a.documentFullscreenChange_(e)},a.boundFullWindowOnEscKey_=function(e){return a.fullWindowOnEscKey(e)},a.boundUpdateStyleEl_=function(e){return a.updateStyleEl_(e)},a.boundApplyInitTime_=function(e){return a.applyInitTime_(e)},a.boundUpdateCurrentBreakpoint_=function(e){return a.updateCurrentBreakpoint_(e)},a.boundHandleTechClick_=function(e){return a.handleTechClick_(e)},a.boundHandleTechDoubleClick_=function(e){return a.handleTechDoubleClick_(e)},a.boundHandleTechTouchStart_=function(e){return a.handleTechTouchStart_(e)},a.boundHandleTechTouchMove_=function(e){return a.handleTechTouchMove_(e)},a.boundHandleTechTouchEnd_=function(e){return a.handleTechTouchEnd_(e)},a.boundHandleTechTap_=function(e){return a.handleTechTap_(e)},a.isFullscreen_=!1,a.log=X(a.id_),a.fsApi_=H,a.isPosterFromTech_=!1,a.queuedCallbacks_=[],a.isReady_=!1,a.hasStarted_=!1,a.userActive_=!1,a.debugEnabled_=!1,!a.options_||!a.options_.techOrder||!a.options_.techOrder.length)throw new Error("No techOrder specified. Did you overwrite videojs.options instead of just changing the properties you want to override?");if(a.tag=i,a.tagAttributes=i&&Ne(i),a.language(a.options_.language),n.languages){var u={};Object.getOwnPropertyNames(n.languages).forEach((function(e){u[e.toLowerCase()]=n.languages[e]})),a.languages_=u}else a.languages_=t.prototype.options_.languages;a.resetCache_(),a.poster_=n.poster||"",a.controls_=!!n.controls,i.controls=!1,i.removeAttribute("controls"),a.changingSrc_=!1,a.playCallbacks_=[],a.playTerminatedQueue_=[],i.hasAttribute("autoplay")?a.autoplay(!0):a.autoplay(a.options_.autoplay),n.plugins&&Object.keys(n.plugins).forEach((function(e){if("function"!=typeof a[e])throw new Error('plugin "'+e+'" does not exist')})),a.scrubbing_=!1,a.el_=a.createEl(),Bt(x.default(a),{eventBusKey:"el_"}),a.fsApi_.requestFullscreen&&(yt(k.default,a.fsApi_.fullscreenchange,a.boundDocumentFullscreenChange_),a.on(a.fsApi_.fullscreenchange,a.boundDocumentFullscreenChange_)),a.fluid_&&a.on(["playerreset","resize"],a.boundUpdateStyleEl_);var l=zt(a.options_);n.plugins&&Object.keys(n.plugins).forEach((function(e){a[e](n.plugins[e])})),n.debug&&a.debug(!0),a.options_.playerOptions=l,a.middleware_=[],a.playbackRates(n.playbackRates),a.initChildren(),a.isAudio("audio"===i.nodeName.toLowerCase()),a.controls()?a.addClass("vjs-controls-enabled"):a.addClass("vjs-controls-disabled"),a.el_.setAttribute("role","region"),a.isAudio()?a.el_.setAttribute("aria-label",a.localize("Audio Player")):a.el_.setAttribute("aria-label",a.localize("Video Player")),a.isAudio()&&a.addClass("vjs-audio"),a.flexNotSupported_()&&a.addClass("vjs-no-flex"),ye&&a.addClass("vjs-touch-enabled"),Se||a.addClass("vjs-workinghover"),t.players[a.id_]=x.default(a);var d="7.15.4".split(".")[0];return a.addClass("vjs-v"+d),a.userActive(!0),a.reportUserActivity(),a.one("play",(function(e){return a.listenForUserActivity_(e)})),a.on("stageclick",(function(e){return a.handleStageClick_(e)})),a.on("keydown",(function(e){return a.handleKeyDown(e)})),a.on("languagechange",(function(e){return a.handleLanguagechange(e)})),a.breakpoints(a.options_.breakpoints),a.responsive(a.options_.responsive),a}P.default(t,e);var i=t.prototype;return i.dispose=function(){var i=this;this.trigger("dispose"),this.off("dispose"),bt(k.default,this.fsApi_.fullscreenchange,this.boundDocumentFullscreenChange_),bt(k.default,"keydown",this.boundFullWindowOnEscKey_),this.styleEl_&&this.styleEl_.parentNode&&(this.styleEl_.parentNode.removeChild(this.styleEl_),this.styleEl_=null),t.players[this.id_]=null,this.tag&&this.tag.player&&(this.tag.player=null),this.el_&&this.el_.player&&(this.el_.player=null),this.tech_&&(this.tech_.dispose(),this.isPosterFromTech_=!1,this.poster_=""),this.playerElIngest_&&(this.playerElIngest_=null),this.tag&&(this.tag=null),Fi[this.id()]=null,Ui.names.forEach((function(e){var t=Ui[e],n=i[t.getterName]();n&&n.off&&n.off()})),e.prototype.dispose.call(this)},i.createEl=function(){var t,i=this.tag,n=this.playerElIngest_=i.parentNode&&i.parentNode.hasAttribute&&i.parentNode.hasAttribute("data-vjs-player"),r="video-js"===this.tag.tagName.toLowerCase();n?t=this.el_=i.parentNode:r||(t=this.el_=e.prototype.createEl.call(this,"div"));var a=Ne(i);if(r){for(t=this.el_=i,i=this.tag=k.default.createElement("video");t.children.length;)i.appendChild(t.firstChild);Ue(t,"video-js")||Oe(t,"video-js"),t.appendChild(i),n=this.playerElIngest_=t,Object.keys(t).forEach((function(e){try{i[e]=t[e]}catch(e){}}))}if(i.setAttribute("tabindex","-1"),a.tabindex="-1",(ge||pe&&ve)&&(i.setAttribute("role","application"),a.role="application"),i.removeAttribute("width"),i.removeAttribute("height"),"width"in a&&delete a.width,"height"in a&&delete a.height,Object.getOwnPropertyNames(a).forEach((function(e){r&&"class"===e||t.setAttribute(e,a[e]),r&&i.setAttribute(e,a[e])})),i.playerId=i.id,i.id+="_html5_api",i.className="vjs-tech",i.player=t.player=this,this.addClass("vjs-paused"),!0!==A.default.VIDEOJS_NO_DYNAMIC_STYLE){this.styleEl_=lt("vjs-styles-dimensions");var s=tt(".vjs-styles-defaults"),o=tt("head");o.insertBefore(this.styleEl_,s?s.nextSibling:o.firstChild)}this.fill_=!1,this.fluid_=!1,this.width(this.options_.width),this.height(this.options_.height),this.fill(this.options_.fill),this.fluid(this.options_.fluid),this.aspectRatio(this.options_.aspectRatio),this.crossOrigin(this.options_.crossOrigin||this.options_.crossorigin);for(var u=i.getElementsByTagName("a"),l=0;l0?this.videoWidth()+":"+this.videoHeight():"16:9").split(":"),r=n[1]/n[0];e=void 0!==this.width_?this.width_:void 0!==this.height_?this.height_/r:this.videoWidth()||300,t=void 0!==this.height_?this.height_:e*r,i=/^[^a-zA-Z]/.test(this.id())?"dimensions-"+this.id():this.id()+"-dimensions",this.addClass(i),dt(this.styleEl_,"\n ."+i+" {\n width: "+e+"px;\n height: "+t+"px;\n }\n\n ."+i+".vjs-fluid {\n padding-top: "+100*r+"%;\n }\n ")}else{var a="number"==typeof this.width_?this.width_:this.options_.width,s="number"==typeof this.height_?this.height_:this.options_.height,o=this.tech_&&this.tech_.el();o&&(a>=0&&(o.width=a),s>=0&&(o.height=s))}},i.loadTech_=function(e,t){var i=this;this.tech_&&this.unloadTech_();var n=Ht(e),r=e.charAt(0).toLowerCase()+e.slice(1);"Html5"!==n&&this.tag&&(Oi.getTech("Html5").disposeMediaElement(this.tag),this.tag.player=null,this.tag=null),this.techName_=n,this.isReady_=!1;var a=this.autoplay();("string"==typeof this.autoplay()||!0===this.autoplay()&&this.options_.normalizeAutoplay)&&(a=!1);var s={source:t,autoplay:a,nativeControlsForTouch:this.options_.nativeControlsForTouch,playerId:this.id(),techId:this.id()+"_"+r+"_api",playsinline:this.options_.playsinline,preload:this.options_.preload,loop:this.options_.loop,disablePictureInPicture:this.options_.disablePictureInPicture,muted:this.options_.muted,poster:this.poster(),language:this.language(),playerElIngest:this.playerElIngest_||!1,"vtt.js":this.options_["vtt.js"],canOverridePoster:!!this.options_.techCanOverridePoster,enableSourceset:this.options_.enableSourceset,Promise:this.options_.Promise};Ui.names.forEach((function(e){var t=Ui[e];s[t.getterName]=i[t.privateName]})),Z(s,this.options_[n]),Z(s,this.options_[r]),Z(s,this.options_[e.toLowerCase()]),this.tag&&(s.tag=this.tag),t&&t.src===this.cache_.src&&this.cache_.currentTime>0&&(s.startTime=this.cache_.currentTime);var o=Oi.getTech(e);if(!o)throw new Error("No Tech named '"+n+"' exists! '"+n+"' should be registered using videojs.registerTech()'");this.tech_=new o(s),this.tech_.ready(At(this,this.handleTechReady_),!0),ai(this.textTracksJson_||[],this.tech_),Lr.forEach((function(e){i.on(i.tech_,e,(function(t){return i["handleTech"+Ht(e)+"_"](t)}))})),Object.keys(Dr).forEach((function(e){i.on(i.tech_,e,(function(t){0===i.tech_.playbackRate()&&i.tech_.seeking()?i.queuedCallbacks_.push({callback:i["handleTech"+Dr[e]+"_"].bind(i),event:t}):i["handleTech"+Dr[e]+"_"](t)}))})),this.on(this.tech_,"loadstart",(function(e){return i.handleTechLoadStart_(e)})),this.on(this.tech_,"sourceset",(function(e){return i.handleTechSourceset_(e)})),this.on(this.tech_,"waiting",(function(e){return i.handleTechWaiting_(e)})),this.on(this.tech_,"ended",(function(e){return i.handleTechEnded_(e)})),this.on(this.tech_,"seeking",(function(e){return i.handleTechSeeking_(e)})),this.on(this.tech_,"play",(function(e){return i.handleTechPlay_(e)})),this.on(this.tech_,"firstplay",(function(e){return i.handleTechFirstPlay_(e)})),this.on(this.tech_,"pause",(function(e){return i.handleTechPause_(e)})),this.on(this.tech_,"durationchange",(function(e){return i.handleTechDurationChange_(e)})),this.on(this.tech_,"fullscreenchange",(function(e,t){return i.handleTechFullscreenChange_(e,t)})),this.on(this.tech_,"fullscreenerror",(function(e,t){return i.handleTechFullscreenError_(e,t)})),this.on(this.tech_,"enterpictureinpicture",(function(e){return i.handleTechEnterPictureInPicture_(e)})),this.on(this.tech_,"leavepictureinpicture",(function(e){return i.handleTechLeavePictureInPicture_(e)})),this.on(this.tech_,"error",(function(e){return i.handleTechError_(e)})),this.on(this.tech_,"posterchange",(function(e){return i.handleTechPosterChange_(e)})),this.on(this.tech_,"textdata",(function(e){return i.handleTechTextData_(e)})),this.on(this.tech_,"ratechange",(function(e){return i.handleTechRateChange_(e)})),this.on(this.tech_,"loadedmetadata",this.boundUpdateStyleEl_),this.usingNativeControls(this.techGet_("controls")),this.controls()&&!this.usingNativeControls()&&this.addTechControlsListeners_(),this.tech_.el().parentNode===this.el()||"Html5"===n&&this.tag||Re(this.tech_.el(),this.el()),this.tag&&(this.tag.player=null,this.tag=null)},i.unloadTech_=function(){var e=this;Ui.names.forEach((function(t){var i=Ui[t];e[i.privateName]=e[i.getterName]()})),this.textTracksJson_=ri(this.tech_),this.isReady_=!1,this.tech_.dispose(),this.tech_=!1,this.isPosterFromTech_&&(this.poster_="",this.trigger("posterchange")),this.isPosterFromTech_=!1},i.tech=function(e){return void 0===e&&K.warn("Using the tech directly can be dangerous. I hope you know what you're doing.\nSee https://github.com/videojs/video.js/issues/2617 for more info.\n"),this.tech_},i.addTechControlsListeners_=function(){this.removeTechControlsListeners_(),this.on(this.tech_,"click",this.boundHandleTechClick_),this.on(this.tech_,"dblclick",this.boundHandleTechDoubleClick_),this.on(this.tech_,"touchstart",this.boundHandleTechTouchStart_),this.on(this.tech_,"touchmove",this.boundHandleTechTouchMove_),this.on(this.tech_,"touchend",this.boundHandleTechTouchEnd_),this.on(this.tech_,"tap",this.boundHandleTechTap_)},i.removeTechControlsListeners_=function(){this.off(this.tech_,"tap",this.boundHandleTechTap_),this.off(this.tech_,"touchstart",this.boundHandleTechTouchStart_),this.off(this.tech_,"touchmove",this.boundHandleTechTouchMove_),this.off(this.tech_,"touchend",this.boundHandleTechTouchEnd_),this.off(this.tech_,"click",this.boundHandleTechClick_),this.off(this.tech_,"dblclick",this.boundHandleTechDoubleClick_)},i.handleTechReady_=function(){this.triggerReady(),this.cache_.volume&&this.techCall_("setVolume",this.cache_.volume),this.handleTechPosterChange_(),this.handleTechDurationChange_()},i.handleTechLoadStart_=function(){this.removeClass("vjs-ended"),this.removeClass("vjs-seeking"),this.error(null),this.handleTechDurationChange_(),this.paused()?(this.hasStarted(!1),this.trigger("loadstart")):(this.trigger("loadstart"),this.trigger("firstplay")),this.manualAutoplay_(!0===this.autoplay()&&this.options_.normalizeAutoplay?"play":this.autoplay())},i.manualAutoplay_=function(e){var t=this;if(this.tech_&&"string"==typeof e){var i,n=function(){var e=t.muted();t.muted(!0);var i=function(){t.muted(e)};t.playTerminatedQueue_.push(i);var n=t.play();if(ti(n))return n.catch((function(e){throw i(),new Error("Rejection at manualAutoplay. Restoring muted value. "+(e||""))}))};if("any"!==e||this.muted()?i="muted"!==e||this.muted()?this.play():n():ti(i=this.play())&&(i=i.catch(n)),ti(i))return i.then((function(){t.trigger({type:"autoplay-success",autoplay:e})})).catch((function(){t.trigger({type:"autoplay-failure",autoplay:e})}))}},i.updateSourceCaches_=function(e){void 0===e&&(e="");var t=e,i="";"string"!=typeof t&&(t=e.src,i=e.type),this.cache_.source=this.cache_.source||{},this.cache_.sources=this.cache_.sources||[],t&&!i&&(i=function(e,t){if(!t)return"";if(e.cache_.source.src===t&&e.cache_.source.type)return e.cache_.source.type;var i=e.cache_.sources.filter((function(e){return e.src===t}));if(i.length)return i[0].type;for(var n=e.$$("source"),r=0;r0&&0===this.cache_.lastPlaybackRate&&(this.queuedCallbacks_.forEach((function(e){return e.callback(e.event)})),this.queuedCallbacks_=[]),this.cache_.lastPlaybackRate=this.tech_.playbackRate(),this.trigger("ratechange")},i.handleTechWaiting_=function(){var e=this;this.addClass("vjs-waiting"),this.trigger("waiting");var t=this.currentTime();this.on("timeupdate",(function i(){t!==e.currentTime()&&(e.removeClass("vjs-waiting"),e.off("timeupdate",i))}))},i.handleTechCanPlay_=function(){this.removeClass("vjs-waiting"),this.trigger("canplay")},i.handleTechCanPlayThrough_=function(){this.removeClass("vjs-waiting"),this.trigger("canplaythrough")},i.handleTechPlaying_=function(){this.removeClass("vjs-waiting"),this.trigger("playing")},i.handleTechSeeking_=function(){this.addClass("vjs-seeking"),this.trigger("seeking")},i.handleTechSeeked_=function(){this.removeClass("vjs-seeking"),this.removeClass("vjs-ended"),this.trigger("seeked")},i.handleTechFirstPlay_=function(){this.options_.starttime&&(K.warn("Passing the `starttime` option to the player will be deprecated in 6.0"),this.currentTime(this.options_.starttime)),this.addClass("vjs-has-started"),this.trigger("firstplay")},i.handleTechPause_=function(){this.removeClass("vjs-playing"),this.addClass("vjs-paused"),this.trigger("pause")},i.handleTechEnded_=function(){this.addClass("vjs-ended"),this.removeClass("vjs-waiting"),this.options_.loop?(this.currentTime(0),this.play()):this.paused()||this.pause(),this.trigger("ended")},i.handleTechDurationChange_=function(){this.duration(this.techGet_("duration"))},i.handleTechClick_=function(e){this.controls_&&(this.paused()?ii(this.play()):this.pause())},i.handleTechDoubleClick_=function(e){this.controls_&&(Array.prototype.some.call(this.$$(".vjs-control-bar, .vjs-modal-dialog"),(function(t){return t.contains(e.target)}))||void 0!==this.options_&&void 0!==this.options_.userActions&&void 0!==this.options_.userActions.doubleClick&&!1===this.options_.userActions.doubleClick||(void 0!==this.options_&&void 0!==this.options_.userActions&&"function"==typeof this.options_.userActions.doubleClick?this.options_.userActions.doubleClick.call(this,e):this.isFullscreen()?this.exitFullscreen():this.requestFullscreen()))},i.handleTechTap_=function(){this.userActive(!this.userActive())},i.handleTechTouchStart_=function(){this.userWasActive=this.userActive()},i.handleTechTouchMove_=function(){this.userWasActive&&this.reportUserActivity()},i.handleTechTouchEnd_=function(e){e.cancelable&&e.preventDefault()},i.handleStageClick_=function(){this.reportUserActivity()},i.toggleFullscreenClass_=function(){this.isFullscreen()?this.addClass("vjs-fullscreen"):this.removeClass("vjs-fullscreen")},i.documentFullscreenChange_=function(e){var t=e.target.player;if(!t||t===this){var i=this.el(),n=k.default[this.fsApi_.fullscreenElement]===i;!n&&i.matches?n=i.matches(":"+this.fsApi_.fullscreen):!n&&i.msMatchesSelector&&(n=i.msMatchesSelector(":"+this.fsApi_.fullscreen)),this.isFullscreen(n)}},i.handleTechFullscreenChange_=function(e,t){t&&(t.nativeIOSFullscreen&&this.toggleClass("vjs-ios-native-fs"),this.isFullscreen(t.isFullscreen))},i.handleTechFullscreenError_=function(e,t){this.trigger("fullscreenerror",t)},i.togglePictureInPictureClass_=function(){this.isInPictureInPicture()?this.addClass("vjs-picture-in-picture"):this.removeClass("vjs-picture-in-picture")},i.handleTechEnterPictureInPicture_=function(e){this.isInPictureInPicture(!0)},i.handleTechLeavePictureInPicture_=function(e){this.isInPictureInPicture(!1)},i.handleTechError_=function(){var e=this.tech_.error();this.error(e)},i.handleTechTextData_=function(){var e=null;arguments.length>1&&(e=arguments[1]),this.trigger("textdata",e)},i.getCache=function(){return this.cache_},i.resetCache_=function(){this.cache_={currentTime:0,initTime:0,inactivityTimeout:this.options_.inactivityTimeout,duration:NaN,lastVolume:1,lastPlaybackRate:this.defaultPlaybackRate(),media:null,src:"",source:{},sources:[],playbackRates:[],volume:1}},i.techCall_=function(e,t){this.ready((function(){if(e in Hi)return function(e,t,i,n){return t[i](e.reduce(Gi(i),n))}(this.middleware_,this.tech_,e,t);if(e in zi)return ji(this.middleware_,this.tech_,e,t);try{this.tech_&&this.tech_[e](t)}catch(e){throw K(e),e}}),!0)},i.techGet_=function(e){if(this.tech_&&this.tech_.isReady_){if(e in Vi)return function(e,t,i){return e.reduceRight(Gi(i),t[i]())}(this.middleware_,this.tech_,e);if(e in zi)return ji(this.middleware_,this.tech_,e);try{return this.tech_[e]()}catch(t){if(void 0===this.tech_[e])throw K("Video.js: "+e+" method not defined for "+this.techName_+" playback technology.",t),t;if("TypeError"===t.name)throw K("Video.js: "+e+" unavailable on "+this.techName_+" playback technology element.",t),this.tech_.isReady_=!1,t;throw K(t),t}}},i.play=function(){var e=this,t=this.options_.Promise||A.default.Promise;return t?new t((function(t){e.play_(t)})):this.play_()},i.play_=function(e){var t=this;void 0===e&&(e=ii),this.playCallbacks_.push(e);var i=Boolean(!this.changingSrc_&&(this.src()||this.currentSrc()));if(this.waitToPlay_&&(this.off(["ready","loadstart"],this.waitToPlay_),this.waitToPlay_=null),!this.isReady_||!i)return this.waitToPlay_=function(e){t.play_()},this.one(["ready","loadstart"],this.waitToPlay_),void(i||!Ee&&!Se||this.load());var n=this.techGet_("play");null===n?this.runPlayTerminatedQueue_():this.runPlayCallbacks_(n)},i.runPlayTerminatedQueue_=function(){var e=this.playTerminatedQueue_.slice(0);this.playTerminatedQueue_=[],e.forEach((function(e){e()}))},i.runPlayCallbacks_=function(e){var t=this.playCallbacks_.slice(0);this.playCallbacks_=[],this.playTerminatedQueue_=[],t.forEach((function(t){t(e)}))},i.pause=function(){this.techCall_("pause")},i.paused=function(){return!1!==this.techGet_("paused")},i.played=function(){return this.techGet_("played")||$t(0,0)},i.scrubbing=function(e){if(void 0===e)return this.scrubbing_;this.scrubbing_=!!e,this.techCall_("setScrubbing",this.scrubbing_),e?this.addClass("vjs-scrubbing"):this.removeClass("vjs-scrubbing")},i.currentTime=function(e){return void 0!==e?(e<0&&(e=0),this.isReady_&&!this.changingSrc_&&this.tech_&&this.tech_.isReady_?(this.techCall_("setCurrentTime",e),void(this.cache_.initTime=0)):(this.cache_.initTime=e,this.off("canplay",this.boundApplyInitTime_),void this.one("canplay",this.boundApplyInitTime_))):(this.cache_.currentTime=this.techGet_("currentTime")||0,this.cache_.currentTime)},i.applyInitTime_=function(){this.currentTime(this.cache_.initTime)},i.duration=function(e){if(void 0===e)return void 0!==this.cache_.duration?this.cache_.duration:NaN;(e=parseFloat(e))<0&&(e=1/0),e!==this.cache_.duration&&(this.cache_.duration=e,e===1/0?this.addClass("vjs-live"):this.removeClass("vjs-live"),isNaN(e)||this.trigger("durationchange"))},i.remainingTime=function(){return this.duration()-this.currentTime()},i.remainingTimeDisplay=function(){return Math.floor(this.duration())-Math.floor(this.currentTime())},i.buffered=function(){var e=this.techGet_("buffered");return e&&e.length||(e=$t(0,0)),e},i.bufferedPercent=function(){return Jt(this.buffered(),this.duration())},i.bufferedEnd=function(){var e=this.buffered(),t=this.duration(),i=e.end(e.length-1);return i>t&&(i=t),i},i.volume=function(e){var t;return void 0!==e?(t=Math.max(0,Math.min(1,parseFloat(e))),this.cache_.volume=t,this.techCall_("setVolume",t),void(t>0&&this.lastVolume_(t))):(t=parseFloat(this.techGet_("volume")),isNaN(t)?1:t)},i.muted=function(e){if(void 0===e)return this.techGet_("muted")||!1;this.techCall_("setMuted",e)},i.defaultMuted=function(e){return void 0!==e?this.techCall_("setDefaultMuted",e):this.techGet_("defaultMuted")||!1},i.lastVolume_=function(e){if(void 0===e||0===e)return this.cache_.lastVolume;this.cache_.lastVolume=e},i.supportsFullScreen=function(){return this.techGet_("supportsFullScreen")||!1},i.isFullscreen=function(e){if(void 0!==e){var t=this.isFullscreen_;return this.isFullscreen_=Boolean(e),this.isFullscreen_!==t&&this.fsApi_.prefixed&&this.trigger("fullscreenchange"),void this.toggleFullscreenClass_()}return this.isFullscreen_},i.requestFullscreen=function(e){var t=this.options_.Promise||A.default.Promise;if(t){var i=this;return new t((function(t,n){function r(){i.off("fullscreenerror",s),i.off("fullscreenchange",a)}function a(){r(),t()}function s(e,t){r(),n(t)}i.one("fullscreenchange",a),i.one("fullscreenerror",s);var o=i.requestFullscreenHelper_(e);o&&(o.then(r,r),o.then(t,n))}))}return this.requestFullscreenHelper_()},i.requestFullscreenHelper_=function(e){var t,i=this;if(this.fsApi_.prefixed||(t=this.options_.fullscreen&&this.options_.fullscreen.options||{},void 0!==e&&(t=e)),this.fsApi_.requestFullscreen){var n=this.el_[this.fsApi_.requestFullscreen](t);return n&&n.then((function(){return i.isFullscreen(!0)}),(function(){return i.isFullscreen(!1)})),n}this.tech_.supportsFullScreen()&&!0==!this.options_.preferFullWindow?this.techCall_("enterFullScreen"):this.enterFullWindow()},i.exitFullscreen=function(){var e=this.options_.Promise||A.default.Promise;if(e){var t=this;return new e((function(e,i){function n(){t.off("fullscreenerror",a),t.off("fullscreenchange",r)}function r(){n(),e()}function a(e,t){n(),i(t)}t.one("fullscreenchange",r),t.one("fullscreenerror",a);var s=t.exitFullscreenHelper_();s&&(s.then(n,n),s.then(e,i))}))}return this.exitFullscreenHelper_()},i.exitFullscreenHelper_=function(){var e=this;if(this.fsApi_.requestFullscreen){var t=k.default[this.fsApi_.exitFullscreen]();return t&&ii(t.then((function(){return e.isFullscreen(!1)}))),t}this.tech_.supportsFullScreen()&&!0==!this.options_.preferFullWindow?this.techCall_("exitFullScreen"):this.exitFullWindow()},i.enterFullWindow=function(){this.isFullscreen(!0),this.isFullWindow=!0,this.docOrigOverflow=k.default.documentElement.style.overflow,yt(k.default,"keydown",this.boundFullWindowOnEscKey_),k.default.documentElement.style.overflow="hidden",Oe(k.default.body,"vjs-full-window"),this.trigger("enterFullWindow")},i.fullWindowOnEscKey=function(e){D.default.isEventKey(e,"Esc")&&!0===this.isFullscreen()&&(this.isFullWindow?this.exitFullWindow():this.exitFullscreen())},i.exitFullWindow=function(){this.isFullscreen(!1),this.isFullWindow=!1,bt(k.default,"keydown",this.boundFullWindowOnEscKey_),k.default.documentElement.style.overflow=this.docOrigOverflow,Me(k.default.body,"vjs-full-window"),this.trigger("exitFullWindow")},i.disablePictureInPicture=function(e){if(void 0===e)return this.techGet_("disablePictureInPicture");this.techCall_("setDisablePictureInPicture",e),this.options_.disablePictureInPicture=e,this.trigger("disablepictureinpicturechanged")},i.isInPictureInPicture=function(e){return void 0!==e?(this.isInPictureInPicture_=!!e,void this.togglePictureInPictureClass_()):!!this.isInPictureInPicture_},i.requestPictureInPicture=function(){if("pictureInPictureEnabled"in k.default&&!1===this.disablePictureInPicture())return this.techGet_("requestPictureInPicture")},i.exitPictureInPicture=function(){if("pictureInPictureEnabled"in k.default)return k.default.exitPictureInPicture()},i.handleKeyDown=function(e){var t=this.options_.userActions;if(t&&t.hotkeys){(function(e){var t=e.tagName.toLowerCase();if(e.isContentEditable)return!0;if("input"===t)return-1===["button","checkbox","hidden","radio","reset","submit"].indexOf(e.type);return-1!==["textarea"].indexOf(t)})(this.el_.ownerDocument.activeElement)||("function"==typeof t.hotkeys?t.hotkeys.call(this,e):this.handleHotkeys(e))}},i.handleHotkeys=function(e){var t=this.options_.userActions?this.options_.userActions.hotkeys:{},i=t.fullscreenKey,n=void 0===i?function(e){return D.default.isEventKey(e,"f")}:i,r=t.muteKey,a=void 0===r?function(e){return D.default.isEventKey(e,"m")}:r,s=t.playPauseKey,o=void 0===s?function(e){return D.default.isEventKey(e,"k")||D.default.isEventKey(e,"Space")}:s;if(n.call(this,e)){e.preventDefault(),e.stopPropagation();var u=Kt.getComponent("FullscreenToggle");!1!==k.default[this.fsApi_.fullscreenEnabled]&&u.prototype.handleClick.call(this,e)}else if(a.call(this,e)){e.preventDefault(),e.stopPropagation(),Kt.getComponent("MuteToggle").prototype.handleClick.call(this,e)}else if(o.call(this,e)){e.preventDefault(),e.stopPropagation(),Kt.getComponent("PlayToggle").prototype.handleClick.call(this,e)}},i.canPlayType=function(e){for(var t,i=0,n=this.options_.techOrder;i1?i.handleSrc_(n.slice(1)):(i.changingSrc_=!1,i.setTimeout((function(){this.error({code:4,message:this.localize(this.options_.notSupportedMessage)})}),0),void i.triggerReady());a=r,s=i.tech_,a.forEach((function(e){return e.setTech&&e.setTech(s)}))})),this.options_.retryOnError&&n.length>1){var r=function(){i.error(null),i.handleSrc_(n.slice(1),!0)},a=function(){i.off("error",r)};this.one("error",r),this.one("playing",a),this.resetRetryOnError_=function(){i.off("error",r),i.off("playing",a)}}}else this.setTimeout((function(){this.error({code:4,message:this.localize(this.options_.notSupportedMessage)})}),0)},i.src=function(e){return this.handleSrc_(e,!1)},i.src_=function(e){var t,i,n=this,r=this.selectSource([e]);return!r||(t=r.tech,i=this.techName_,Ht(t)!==Ht(i)?(this.changingSrc_=!0,this.loadTech_(r.tech,r.source),this.tech_.ready((function(){n.changingSrc_=!1})),!1):(this.ready((function(){this.tech_.constructor.prototype.hasOwnProperty("setSource")?this.techCall_("setSource",e):this.techCall_("src",e.src),this.changingSrc_=!1}),!0),!1))},i.load=function(){this.techCall_("load")},i.reset=function(){var e=this,t=this.options_.Promise||A.default.Promise;this.paused()||!t?this.doReset_():ii(this.play().then((function(){return e.doReset_()})))},i.doReset_=function(){this.tech_&&this.tech_.clearTracks("text"),this.resetCache_(),this.poster(""),this.loadTech_(this.options_.techOrder[0],null),this.techCall_("reset"),this.resetControlBarUI_(),Pt(this)&&this.trigger("playerreset")},i.resetControlBarUI_=function(){this.resetProgressBar_(),this.resetPlaybackRate_(),this.resetVolumeBar_()},i.resetProgressBar_=function(){this.currentTime(0);var e=this.controlBar,t=e.durationDisplay,i=e.remainingTimeDisplay;t&&t.updateContent(),i&&i.updateContent()},i.resetPlaybackRate_=function(){this.playbackRate(this.defaultPlaybackRate()),this.handleTechRateChange_()},i.resetVolumeBar_=function(){this.volume(1),this.trigger("volumechange")},i.currentSources=function(){var e=this.currentSource(),t=[];return 0!==Object.keys(e).length&&t.push(e),this.cache_.sources||t},i.currentSource=function(){return this.cache_.source||{}},i.currentSrc=function(){return this.currentSource()&&this.currentSource().src||""},i.currentType=function(){return this.currentSource()&&this.currentSource().type||""},i.preload=function(e){return void 0!==e?(this.techCall_("setPreload",e),void(this.options_.preload=e)):this.techGet_("preload")},i.autoplay=function(e){if(void 0===e)return this.options_.autoplay||!1;var t;"string"==typeof e&&/(any|play|muted)/.test(e)||!0===e&&this.options_.normalizeAutoplay?(this.options_.autoplay=e,this.manualAutoplay_("string"==typeof e?e:"play"),t=!1):this.options_.autoplay=!!e,t=void 0===t?this.options_.autoplay:t,this.tech_&&this.techCall_("setAutoplay",t)},i.playsinline=function(e){return void 0!==e?(this.techCall_("setPlaysinline",e),this.options_.playsinline=e,this):this.techGet_("playsinline")},i.loop=function(e){return void 0!==e?(this.techCall_("setLoop",e),void(this.options_.loop=e)):this.techGet_("loop")},i.poster=function(e){if(void 0===e)return this.poster_;e||(e=""),e!==this.poster_&&(this.poster_=e,this.techCall_("setPoster",e),this.isPosterFromTech_=!1,this.trigger("posterchange"))},i.handleTechPosterChange_=function(){if((!this.poster_||this.options_.techCanOverridePoster)&&this.tech_&&this.tech_.poster){var e=this.tech_.poster()||"";e!==this.poster_&&(this.poster_=e,this.isPosterFromTech_=!0,this.trigger("posterchange"))}},i.controls=function(e){if(void 0===e)return!!this.controls_;e=!!e,this.controls_!==e&&(this.controls_=e,this.usingNativeControls()&&this.techCall_("setControls",e),this.controls_?(this.removeClass("vjs-controls-disabled"),this.addClass("vjs-controls-enabled"),this.trigger("controlsenabled"),this.usingNativeControls()||this.addTechControlsListeners_()):(this.removeClass("vjs-controls-enabled"),this.addClass("vjs-controls-disabled"),this.trigger("controlsdisabled"),this.usingNativeControls()||this.removeTechControlsListeners_()))},i.usingNativeControls=function(e){if(void 0===e)return!!this.usingNativeControls_;e=!!e,this.usingNativeControls_!==e&&(this.usingNativeControls_=e,this.usingNativeControls_?(this.addClass("vjs-using-native-controls"),this.trigger("usingnativecontrols")):(this.removeClass("vjs-using-native-controls"),this.trigger("usingcustomcontrols")))},i.error=function(e){var t=this;if(void 0===e)return this.error_||null;if(j("beforeerror").forEach((function(i){var n=i(t,e);ee(n)&&!Array.isArray(n)||"string"==typeof n||"number"==typeof n||null===n?e=n:t.log.error("please return a value that MediaError expects in beforeerror hooks")})),this.options_.suppressNotSupportedError&&e&&4===e.code){var i=function(){this.error(e)};return this.options_.suppressNotSupportedError=!1,this.any(["click","touchstart"],i),void this.one("loadstart",(function(){this.off(["click","touchstart"],i)}))}if(null===e)return this.error_=e,this.removeClass("vjs-error"),void(this.errorDisplay&&this.errorDisplay.close());this.error_=new Zt(e),this.addClass("vjs-error"),K.error("(CODE:"+this.error_.code+" "+Zt.errorTypes[this.error_.code]+")",this.error_.message,this.error_),this.trigger("error"),j("error").forEach((function(e){return e(t,t.error_)}))},i.reportUserActivity=function(e){this.userActivity_=!0},i.userActive=function(e){if(void 0===e)return this.userActive_;if((e=!!e)!==this.userActive_){if(this.userActive_=e,this.userActive_)return this.userActivity_=!0,this.removeClass("vjs-user-inactive"),this.addClass("vjs-user-active"),void this.trigger("useractive");this.tech_&&this.tech_.one("mousemove",(function(e){e.stopPropagation(),e.preventDefault()})),this.userActivity_=!1,this.removeClass("vjs-user-active"),this.addClass("vjs-user-inactive"),this.trigger("userinactive")}},i.listenForUserActivity_=function(){var e,t,i,n=At(this,this.reportUserActivity),r=function(t){n(),this.clearInterval(e)};this.on("mousedown",(function(){n(),this.clearInterval(e),e=this.setInterval(n,250)})),this.on("mousemove",(function(e){e.screenX===t&&e.screenY===i||(t=e.screenX,i=e.screenY,n())})),this.on("mouseup",r),this.on("mouseleave",r);var a,s=this.getChild("controlBar");!s||Se||le||(s.on("mouseenter",(function(e){0!==this.player().options_.inactivityTimeout&&(this.player().cache_.inactivityTimeout=this.player().options_.inactivityTimeout),this.player().options_.inactivityTimeout=0})),s.on("mouseleave",(function(e){this.player().options_.inactivityTimeout=this.player().cache_.inactivityTimeout}))),this.on("keydown",n),this.on("keyup",n),this.setInterval((function(){if(this.userActivity_){this.userActivity_=!1,this.userActive(!0),this.clearTimeout(a);var e=this.options_.inactivityTimeout;e<=0||(a=this.setTimeout((function(){this.userActivity_||this.userActive(!1)}),e))}}),250)},i.playbackRate=function(e){if(void 0===e)return this.tech_&&this.tech_.featuresPlaybackRate?this.cache_.lastPlaybackRate||this.techGet_("playbackRate"):1;this.techCall_("setPlaybackRate",e)},i.defaultPlaybackRate=function(e){return void 0!==e?this.techCall_("setDefaultPlaybackRate",e):this.tech_&&this.tech_.featuresPlaybackRate?this.techGet_("defaultPlaybackRate"):1},i.isAudio=function(e){if(void 0===e)return!!this.isAudio_;this.isAudio_=!!e},i.addTextTrack=function(e,t,i){if(this.tech_)return this.tech_.addTextTrack(e,t,i)},i.addRemoteTextTrack=function(e,t){if(this.tech_)return this.tech_.addRemoteTextTrack(e,t)},i.removeRemoteTextTrack=function(e){void 0===e&&(e={});var t=e.track;if(t||(t=e),this.tech_)return this.tech_.removeRemoteTextTrack(t)},i.getVideoPlaybackQuality=function(){return this.techGet_("getVideoPlaybackQuality")},i.videoWidth=function(){return this.tech_&&this.tech_.videoWidth&&this.tech_.videoWidth()||0},i.videoHeight=function(){return this.tech_&&this.tech_.videoHeight&&this.tech_.videoHeight()||0},i.language=function(e){if(void 0===e)return this.language_;this.language_!==String(e).toLowerCase()&&(this.language_=String(e).toLowerCase(),Pt(this)&&this.trigger("languagechange"))},i.languages=function(){return zt(t.prototype.options_.languages,this.languages_)},i.toJSON=function(){var e=zt(this.options_),t=e.tracks;e.tracks=[];for(var i=0;i"):function(){}},Jr=function(e,t){var i,n=[];if(e&&e.length)for(i=0;i=t}))},ea=function(e,t){return Jr(e,(function(e){return e-1/30>=t}))},ta=function(e){var t=[];if(!e||!e.length)return"";for(var i=0;i "+e.end(i));return t.join(", ")},ia=function(e){for(var t=[],i=0;i0;return i&&t.serverControl&&t.serverControl.partHoldBack?t.serverControl.partHoldBack:i&&t.partTargetDuration?3*t.partTargetDuration:t.serverControl&&t.serverControl.holdBack?t.serverControl.holdBack:t.targetDuration?3*t.targetDuration:0},la=function(e,t,i){if(void 0===t&&(t=e.mediaSequence+e.segments.length),tr){var s=[r,n];n=s[0],r=s[1]}if(n<0){for(var o=n;oDate.now()},pa=function(e){return e.excludeUntil&&e.excludeUntil===1/0},ma=function(e){var t=fa(e);return!e.disabled&&!t},ga=function(e,t){return t.attributes&&t.attributes[e]},_a=function(e,t){if(1===e.playlists.length)return!0;var i=t.attributes.BANDWIDTH||Number.MAX_VALUE;return 0===e.playlists.filter((function(e){return!!ma(e)&&(e.attributes.BANDWIDTH||0)0)for(var c=l-1;c>=0;c--){var f=u[c];if(o+=f.duration,s){if(o<0)continue}else if(o+1/30<=0)continue;return{partIndex:f.partIndex,segmentIndex:f.segmentIndex,startTime:a-ha({defaultDuration:t.targetDuration,durationList:u,startIndex:l,endIndex:c})}}return{partIndex:u[0]&&u[0].partIndex||null,segmentIndex:u[0]&&u[0].segmentIndex||0,startTime:i}}if(l<0){for(var p=l;p<0;p++)if((o-=t.targetDuration)<0)return{partIndex:u[0]&&u[0].partIndex||null,segmentIndex:u[0]&&u[0].segmentIndex||0,startTime:i};l=0}for(var m=l;m0)continue}else if(o-1/30>=0)continue;return{partIndex:g.partIndex,segmentIndex:g.segmentIndex,startTime:a+ha({defaultDuration:t.targetDuration,durationList:u,startIndex:l,endIndex:m})}}return{segmentIndex:u[u.length-1].segmentIndex,partIndex:u[u.length-1].partIndex,startTime:i}},isEnabled:ma,isDisabled:function(e){return e.disabled},isBlacklisted:fa,isIncompatible:pa,playlistEnd:ca,isAes:function(e){for(var t=0;t-1&&s!==a.length-1&&i.push("_HLS_part="+s),(s>-1||a.length)&&r--}i.unshift("_HLS_msn="+r)}return t.serverControl&&t.serverControl.canSkipUntil&&i.unshift("_HLS_skip="+(t.serverControl.canSkipDateranges?"v2":"YES")),i.forEach((function(t,i){e+=""+(0===i?"?":"&")+t})),e}(i,t)),this.state="HAVE_CURRENT_METADATA",this.request=this.vhs_.xhr({uri:i,withCredentials:this.withCredentials},(function(t,i){if(e.request)return t?e.playlistRequestError(e.request,e.media(),"HAVE_METADATA"):void e.haveMetadata({playlistString:e.request.responseText,url:e.media().uri,id:e.media().id})}))}},i.playlistRequestError=function(e,t,i){var n=t.uri,r=t.id;this.request=null,i&&(this.state=i),this.error={playlist:this.master.playlists[r],status:e.status,message:"HLS playlist request error at URL: "+n+".",responseText:e.responseText,code:e.status>=500?4:2},this.trigger("error")},i.parseManifest_=function(e){var t=this,i=e.url;return function(e){var t=e.onwarn,i=e.oninfo,n=e.manifestString,r=e.customTagParsers,a=void 0===r?[]:r,s=e.customTagMappers,o=void 0===s?[]:s,u=e.experimentalLLHLS,l=new m.Parser;t&&l.on("warn",t),i&&l.on("info",i),a.forEach((function(e){return l.addParser(e)})),o.forEach((function(e){return l.addTagMapper(e)})),l.push(n),l.end();var d=l.manifest;if(u||(["preloadSegment","skip","serverControl","renditionReports","partInf","partTargetDuration"].forEach((function(e){d.hasOwnProperty(e)&&delete d[e]})),d.segments&&d.segments.forEach((function(e){["parts","preloadHints"].forEach((function(t){e.hasOwnProperty(t)&&delete e[t]}))}))),!d.targetDuration){var h=10;d.segments&&d.segments.length&&(h=d.segments.reduce((function(e,t){return Math.max(e,t.duration)}),0)),t&&t("manifest has no targetDuration defaulting to "+h),d.targetDuration=h}var c=sa(d);if(c.length&&!d.partTargetDuration){var f=c.reduce((function(e,t){return Math.max(e,t.duration)}),0);t&&(t("manifest has no partTargetDuration defaulting to "+f),Sa.error("LL-HLS manifest has parts but lacks required #EXT-X-PART-INF:PART-TARGET value. See https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis-09#section-4.4.3.7. Playback is not guaranteed.")),d.partTargetDuration=f}return d}({onwarn:function(e){var n=e.message;return t.logger_("m3u8-parser warn for "+i+": "+n)},oninfo:function(e){var n=e.message;return t.logger_("m3u8-parser info for "+i+": "+n)},manifestString:e.manifestString,customTagParsers:this.customTagParsers,customTagMappers:this.customTagMappers,experimentalLLHLS:this.experimentalLLHLS})},i.haveMetadata=function(e){var t=e.playlistString,i=e.playlistObject,n=e.url,r=e.id;this.request=null,this.state="HAVE_METADATA";var a=i||this.parseManifest_({url:n,manifestString:t});a.lastRequest=Date.now(),Ca({playlist:a,uri:n,id:r});var s=Ra(this.master,a);this.targetDuration=a.partTargetDuration||a.targetDuration,s?(this.master=s,this.media_=this.master.playlists[r]):this.trigger("playlistunchanged"),this.updateMediaUpdateTimeout_(Ua(this.media(),!!s)),this.trigger("loadedplaylist")},i.dispose=function(){this.trigger("dispose"),this.stopRequest(),A.default.clearTimeout(this.mediaUpdateTimeout),A.default.clearTimeout(this.finalRenditionTimeout),this.off()},i.stopRequest=function(){if(this.request){var e=this.request;this.request=null,e.onreadystatechange=null,e.abort()}},i.media=function(e,t){var i=this;if(!e)return this.media_;if("HAVE_NOTHING"===this.state)throw new Error("Cannot switch media playlist from "+this.state);if("string"==typeof e){if(!this.master.playlists[e])throw new Error("Unknown playlist URI: "+e);e=this.master.playlists[e]}if(A.default.clearTimeout(this.finalRenditionTimeout),t){var n=(e.partTargetDuration||e.targetDuration)/2*1e3||5e3;this.finalRenditionTimeout=A.default.setTimeout(this.media.bind(this,e,!1),n)}else{var r=this.state,a=!this.media_||e.id!==this.media_.id,s=this.master.playlists[e.id];if(s&&s.endList||e.endList&&e.segments.length)return this.request&&(this.request.onreadystatechange=null,this.request.abort(),this.request=null),this.state="HAVE_METADATA",this.media_=e,void(a&&(this.trigger("mediachanging"),"HAVE_MASTER"===r?this.trigger("loadedmetadata"):this.trigger("mediachange")));if(this.updateMediaUpdateTimeout_(Ua(e,!0)),a){if(this.state="SWITCHING_MEDIA",this.request){if(e.resolvedUri===this.request.url)return;this.request.onreadystatechange=null,this.request.abort(),this.request=null}this.media_&&this.trigger("mediachanging"),this.request=this.vhs_.xhr({uri:e.resolvedUri,withCredentials:this.withCredentials},(function(t,n){if(i.request){if(e.lastRequest=Date.now(),e.resolvedUri=Qr(i.handleManifestRedirects,e.resolvedUri,n),t)return i.playlistRequestError(i.request,e,r);i.haveMetadata({playlistString:n.responseText,url:e.uri,id:e.id}),"HAVE_MASTER"===r?i.trigger("loadedmetadata"):i.trigger("mediachange")}}))}}},i.pause=function(){this.mediaUpdateTimeout&&(A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null),this.stopRequest(),"HAVE_NOTHING"===this.state&&(this.started=!1),"SWITCHING_MEDIA"===this.state?this.media_?this.state="HAVE_METADATA":this.state="HAVE_MASTER":"HAVE_CURRENT_METADATA"===this.state&&(this.state="HAVE_METADATA")},i.load=function(e){var t=this;this.mediaUpdateTimeout&&(A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null);var i=this.media();if(e){var n=i?(i.partTargetDuration||i.targetDuration)/2*1e3:5e3;this.mediaUpdateTimeout=A.default.setTimeout((function(){t.mediaUpdateTimeout=null,t.load()}),n)}else this.started?i&&!i.endList?this.trigger("mediaupdatetimeout"):this.trigger("loadedplaylist"):this.start()},i.updateMediaUpdateTimeout_=function(e){var t=this;this.mediaUpdateTimeout&&(A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null),this.media()&&!this.media().endList&&(this.mediaUpdateTimeout=A.default.setTimeout((function(){t.mediaUpdateTimeout=null,t.trigger("mediaupdatetimeout"),t.updateMediaUpdateTimeout_(e)}),e))},i.start=function(){var e=this;if(this.started=!0,"object"==typeof this.src)return this.src.uri||(this.src.uri=A.default.location.href),this.src.resolvedUri=this.src.uri,void setTimeout((function(){e.setupInitialPlaylist(e.src)}),0);this.request=this.vhs_.xhr({uri:this.src,withCredentials:this.withCredentials},(function(t,i){if(e.request){if(e.request=null,t)return e.error={status:i.status,message:"HLS playlist request error at URL: "+e.src+".",responseText:i.responseText,code:2},"HAVE_NOTHING"===e.state&&(e.started=!1),e.trigger("error");e.src=Qr(e.handleManifestRedirects,e.src,i);var n=e.parseManifest_({manifestString:i.responseText,url:e.src});e.setupInitialPlaylist(n)}}))},i.srcUri=function(){return"string"==typeof this.src?this.src:this.src.uri},i.setupInitialPlaylist=function(e){if(this.state="HAVE_MASTER",e.playlists)return this.master=e,Aa(this.master,this.srcUri()),e.playlists.forEach((function(e){e.segments=La(e),e.segments.forEach((function(t){Pa(t,e.resolvedUri)}))})),this.trigger("loadedplaylist"),void(this.request||this.media(this.master.playlists[0]));var t=this.srcUri()||A.default.location.href;this.master=function(e,t){var i=Ea(0,t),n={mediaGroups:{AUDIO:{},VIDEO:{},"CLOSED-CAPTIONS":{},SUBTITLES:{}},uri:A.default.location.href,resolvedUri:A.default.location.href,playlists:[{uri:t,id:i,resolvedUri:t,attributes:{}}]};return n.playlists[i]=n.playlists[0],n.playlists[t]=n.playlists[0],n}(0,t),this.haveMetadata({playlistObject:e,url:t,id:this.master.playlists[0].id}),this.trigger("loadedmetadata")},t}(Ia),Ma=Yr.xhr,Fa=Yr.mergeOptions,Ba=function(e,t,i,n){var r="arraybuffer"===e.responseType?e.response:e.responseText;!t&&r&&(e.responseTime=Date.now(),e.roundTripTime=e.responseTime-e.requestTime,e.bytesReceived=r.byteLength||r.length,e.bandwidth||(e.bandwidth=Math.floor(e.bytesReceived/e.roundTripTime*8*1e3))),i.headers&&(e.responseHeaders=i.headers),t&&"ETIMEDOUT"===t.code&&(e.timedout=!0),t||e.aborted||200===i.statusCode||206===i.statusCode||0===i.statusCode||(t=new Error("XHR Failed with a response of: "+(e&&(r||e.responseText)))),n(t,e)},Na=function(){var e=function e(t,i){t=Fa({timeout:45e3},t);var n=e.beforeRequest||Yr.Vhs.xhr.beforeRequest;if(n&&"function"==typeof n){var r=n(t);r&&(t=r)}var a=(!0===Yr.Vhs.xhr.original?Ma:Yr.Vhs.xhr)(t,(function(e,t){return Ba(a,e,t,i)})),s=a.abort;return a.abort=function(){return a.aborted=!0,s.apply(a,arguments)},a.uri=t.uri,a.requestTime=Date.now(),a};return e.original=!0,e},ja=function(e){var t,i,n={};return e.byterange&&(n.Range=(t=e.byterange,i=t.offset+t.length-1,"bytes="+t.offset+"-"+i)),n},Va=function(e,t){return e.start(t)+"-"+e.end(t)},Ha=function(e,t){var i=e.toString(16);return"00".substring(0,2-i.length)+i+(t%2?" ":"")},za=function(e){return e>=32&&e<126?String.fromCharCode(e):"."},Ga=function(e){var t={};return Object.keys(e).forEach((function(i){var n=e[i];ArrayBuffer.isView(n)?t[i]={bytes:n.buffer,byteOffset:n.byteOffset,byteLength:n.byteLength}:t[i]=n})),t},Wa=function(e){var t=e.byterange||{length:1/0,offset:0};return[t.length,t.offset,e.resolvedUri].join(",")},Ya=function(e){return e.resolvedUri},qa=function(e){for(var t=Array.prototype.slice.call(e),i="",n=0;nn){if(e>n+.25*a.duration)return null;i=a}return{segment:i,estimatedStart:i.videoTimingInfo?i.videoTimingInfo.transmuxedPresentationStart:n-i.duration,type:i.videoTimingInfo?"accurate":"estimate"}}(n,t);if(!a)return r({message:"valid programTime was not found"});if("estimate"===a.type)return r({message:"Accurate programTime could not be determined. Please seek to e.seekTime and try again",seekTime:a.estimatedStart});var s={mediaSeconds:n},o=function(e,t){if(!t.dateTimeObject)return null;var i=t.videoTimingInfo.transmuxerPrependedSeconds,n=e-(t.videoTimingInfo.transmuxedPresentationStart+i);return new Date(t.dateTimeObject.getTime()+1e3*n)}(n,a.segment);return o&&(s.programDateTime=o.toISOString()),r(null,s)},Qa=function e(t){var i=t.programTime,n=t.playlist,r=t.retryCount,a=void 0===r?2:r,s=t.seekTo,o=t.pauseAfterSeek,u=void 0===o||o,l=t.tech,d=t.callback;if(!d)throw new Error("seekToProgramTime: callback must be provided");if(void 0===i||!n||!s)return d({message:"seekToProgramTime: programTime, seekTo and playlist must be provided"});if(!n.endList&&!l.hasStarted_)return d({message:"player must be playing a live stream to start buffering"});if(!function(e){if(!e.segments||0===e.segments.length)return!1;for(var t=0;tnew Date(o.getTime()+1e3*u)?null:(i>o&&(n=s),{segment:n,estimatedStart:n.videoTimingInfo?n.videoTimingInfo.transmuxedPresentationStart:Ta.duration(t,t.mediaSequence+t.segments.indexOf(n)),type:n.videoTimingInfo?"accurate":"estimate"})}(i,n);if(!h)return d({message:i+" was not found in the stream"});var c=h.segment,f=function(e,t){var i,n;try{i=new Date(e),n=new Date(t)}catch(e){}var r=i.getTime();return(n.getTime()-r)/1e3}(c.dateTimeObject,i);if("estimate"===h.type)return 0===a?d({message:i+" is not buffered yet. Try again"}):(s(h.estimatedStart+f),void l.one("seeked",(function(){e({programTime:i,playlist:n,retryCount:a-1,seekTo:s,pauseAfterSeek:u,tech:l,callback:d})})));var p=c.start+f;l.one("seeked",(function(){return d(null,l.currentTime())})),u&&l.pause(),s(p)},$a=function(e,t){if(4===e.readyState)return t()},Ja=Yr.EventTarget,Za=Yr.mergeOptions,es=function(e,t){if(!Da(e,t))return!1;if(e.sidx&&t.sidx&&(e.sidx.offset!==t.sidx.offset||e.sidx.length!==t.sidx.length))return!1;if(!e.sidx&&t.sidx||e.sidx&&!t.sidx)return!1;if(e.segments&&!t.segments||!e.segments&&t.segments)return!1;if(!e.segments&&!t.segments)return!0;for(var i=0;i=d+l)return s(t,{response:o.subarray(l,l+d),status:i.status,uri:i.uri});n.request=n.vhs_.xhr({uri:a,responseType:"arraybuffer",headers:ja({byterange:e.sidx.byterange})},s)}))}else this.mediaRequest_=A.default.setTimeout((function(){return i(!1)}),0)},i.dispose=function(){this.trigger("dispose"),this.stopRequest(),this.loadedPlaylists_={},A.default.clearTimeout(this.minimumUpdatePeriodTimeout_),A.default.clearTimeout(this.mediaRequest_),A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null,this.mediaRequest_=null,this.minimumUpdatePeriodTimeout_=null,this.masterPlaylistLoader_.createMupOnMedia_&&(this.off("loadedmetadata",this.masterPlaylistLoader_.createMupOnMedia_),this.masterPlaylistLoader_.createMupOnMedia_=null),this.off()},i.hasPendingRequest=function(){return this.request||this.mediaRequest_},i.stopRequest=function(){if(this.request){var e=this.request;this.request=null,e.onreadystatechange=null,e.abort()}},i.media=function(e){var t=this;if(!e)return this.media_;if("HAVE_NOTHING"===this.state)throw new Error("Cannot switch media playlist from "+this.state);var i=this.state;if("string"==typeof e){if(!this.masterPlaylistLoader_.master.playlists[e])throw new Error("Unknown playlist URI: "+e);e=this.masterPlaylistLoader_.master.playlists[e]}var n=!this.media_||e.id!==this.media_.id;if(n&&this.loadedPlaylists_[e.id]&&this.loadedPlaylists_[e.id].endList)return this.state="HAVE_METADATA",this.media_=e,void(n&&(this.trigger("mediachanging"),this.trigger("mediachange")));n&&(this.media_&&this.trigger("mediachanging"),this.addSidxSegments_(e,i,(function(n){t.haveMetadata({startingState:i,playlist:e})})))},i.haveMetadata=function(e){var t=e.startingState,i=e.playlist;this.state="HAVE_METADATA",this.loadedPlaylists_[i.id]=i,this.mediaRequest_=null,this.refreshMedia_(i.id),"HAVE_MASTER"===t?this.trigger("loadedmetadata"):this.trigger("mediachange")},i.pause=function(){this.masterPlaylistLoader_.createMupOnMedia_&&(this.off("loadedmetadata",this.masterPlaylistLoader_.createMupOnMedia_),this.masterPlaylistLoader_.createMupOnMedia_=null),this.stopRequest(),A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null,this.isMaster_&&(A.default.clearTimeout(this.masterPlaylistLoader_.minimumUpdatePeriodTimeout_),this.masterPlaylistLoader_.minimumUpdatePeriodTimeout_=null),"HAVE_NOTHING"===this.state&&(this.started=!1)},i.load=function(e){var t=this;A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null;var i=this.media();if(e){var n=i?i.targetDuration/2*1e3:5e3;this.mediaUpdateTimeout=A.default.setTimeout((function(){return t.load()}),n)}else this.started?i&&!i.endList?(this.isMaster_&&!this.minimumUpdatePeriodTimeout_&&(this.trigger("minimumUpdatePeriod"),this.updateMinimumUpdatePeriodTimeout_()),this.trigger("mediaupdatetimeout")):this.trigger("loadedplaylist"):this.start()},i.start=function(){var e=this;this.started=!0,this.isMaster_?this.requestMaster_((function(t,i){e.haveMaster_(),e.hasPendingRequest()||e.media_||e.media(e.masterPlaylistLoader_.master.playlists[0])})):this.mediaRequest_=A.default.setTimeout((function(){return e.haveMaster_()}),0)},i.requestMaster_=function(e){var t=this;this.request=this.vhs_.xhr({uri:this.masterPlaylistLoader_.srcUrl,withCredentials:this.withCredentials},(function(i,n){if(!t.requestErrored_(i,n)){var r=n.responseText!==t.masterPlaylistLoader_.masterXml_;return t.masterPlaylistLoader_.masterXml_=n.responseText,n.responseHeaders&&n.responseHeaders.date?t.masterLoaded_=Date.parse(n.responseHeaders.date):t.masterLoaded_=Date.now(),t.masterPlaylistLoader_.srcUrl=Qr(t.handleManifestRedirects,t.masterPlaylistLoader_.srcUrl,n),r?(t.handleMaster_(),void t.syncClientServerClock_((function(){return e(n,r)}))):e(n,r)}"HAVE_NOTHING"===t.state&&(t.started=!1)}))},i.syncClientServerClock_=function(e){var t=this,i=v.parseUTCTiming(this.masterPlaylistLoader_.masterXml_);return null===i?(this.masterPlaylistLoader_.clientOffset_=this.masterLoaded_-Date.now(),e()):"DIRECT"===i.method?(this.masterPlaylistLoader_.clientOffset_=i.value-Date.now(),e()):void(this.request=this.vhs_.xhr({uri:Xr(this.masterPlaylistLoader_.srcUrl,i.value),method:i.method,withCredentials:this.withCredentials},(function(n,r){if(t.request){if(n)return t.masterPlaylistLoader_.clientOffset_=t.masterLoaded_-Date.now(),e();var a;a="HEAD"===i.method?r.responseHeaders&&r.responseHeaders.date?Date.parse(r.responseHeaders.date):t.masterLoaded_:Date.parse(r.responseText),t.masterPlaylistLoader_.clientOffset_=a-Date.now(),e()}})))},i.haveMaster_=function(){this.state="HAVE_MASTER",this.isMaster_?this.trigger("loadedplaylist"):this.media_||this.media(this.childPlaylist_)},i.handleMaster_=function(){this.mediaRequest_=null;var e,t,i,n,r,a,s=(e={masterXml:this.masterPlaylistLoader_.masterXml_,srcUrl:this.masterPlaylistLoader_.srcUrl,clientOffset:this.masterPlaylistLoader_.clientOffset_,sidxMapping:this.masterPlaylistLoader_.sidxMapping_},t=e.masterXml,i=e.srcUrl,n=e.clientOffset,r=e.sidxMapping,a=v.parse(t,{manifestUri:i,clientOffset:n,sidxMapping:r}),Aa(a,i),a),o=this.masterPlaylistLoader_.master;o&&(s=function(e,t,i){for(var n=!0,r=Za(e,{duration:t.duration,minimumUpdatePeriod:t.minimumUpdatePeriod}),a=0;a-1)},this.trigger=function(t){var i,n,r,a;if(i=e[t])if(2===arguments.length)for(r=i.length,n=0;n>>1,e.samplingfrequencyindex<<7|e.channelcount<<3,6,1,2]))},m=function(e){return t(S.hdlr,I[e])},p=function(e){var i=new Uint8Array([0,0,0,0,0,0,0,2,0,0,0,3,0,1,95,144,e.duration>>>24&255,e.duration>>>16&255,e.duration>>>8&255,255&e.duration,85,196,0,0]);return e.samplerate&&(i[12]=e.samplerate>>>24&255,i[13]=e.samplerate>>>16&255,i[14]=e.samplerate>>>8&255,i[15]=255&e.samplerate),t(S.mdhd,i)},f=function(e){return t(S.mdia,p(e),m(e.type),s(e))},a=function(e){return t(S.mfhd,new Uint8Array([0,0,0,0,(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e]))},s=function(e){return t(S.minf,"video"===e.type?t(S.vmhd,x):t(S.smhd,P),i(),_(e))},o=function(e,i){for(var n=[],r=i.length;r--;)n[r]=y(i[r]);return t.apply(null,[S.moof,a(e)].concat(n))},u=function(e){for(var i=e.length,n=[];i--;)n[i]=h(e[i]);return t.apply(null,[S.moov,d(4294967295)].concat(n).concat(l(e)))},l=function(e){for(var i=e.length,n=[];i--;)n[i]=b(e[i]);return t.apply(null,[S.mvex].concat(n))},d=function(e){var i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,2,0,1,95,144,(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return t(S.mvhd,i)},g=function(e){var i,n,r=e.samples||[],a=new Uint8Array(4+r.length);for(n=0;n>>8),s.push(255&r[i].byteLength),s=s.concat(Array.prototype.slice.call(r[i]));for(i=0;i>>8),o.push(255&a[i].byteLength),o=o.concat(Array.prototype.slice.call(a[i]));if(n=[S.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,(65280&e.width)>>8,255&e.width,(65280&e.height)>>8,255&e.height,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]),t(S.avcC,new Uint8Array([1,e.profileIdc,e.profileCompatibility,e.levelIdc,255].concat([r.length],s,[a.length],o))),t(S.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192]))],e.sarRatio){var u=e.sarRatio[0],l=e.sarRatio[1];n.push(t(S.pasp,new Uint8Array([(4278190080&u)>>24,(16711680&u)>>16,(65280&u)>>8,255&u,(4278190080&l)>>24,(16711680&l)>>16,(65280&l)>>8,255&l])))}return t.apply(null,n)},F=function(e){return t(S.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,(65280&e.channelcount)>>8,255&e.channelcount,(65280&e.samplesize)>>8,255&e.samplesize,0,0,0,0,(65280&e.samplerate)>>8,255&e.samplerate,0,0]),n(e))},c=function(e){var i=new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,(4278190080&e.id)>>24,(16711680&e.id)>>16,(65280&e.id)>>8,255&e.id,0,0,0,0,(4278190080&e.duration)>>24,(16711680&e.duration)>>16,(65280&e.duration)>>8,255&e.duration,0,0,0,0,0,0,0,0,0,0,0,0,1,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,(65280&e.width)>>8,255&e.width,0,0,(65280&e.height)>>8,255&e.height,0,0]);return t(S.tkhd,i)},y=function(e){var i,n,r,a,s,o;return i=t(S.tfhd,new Uint8Array([0,0,0,58,(4278190080&e.id)>>24,(16711680&e.id)>>16,(65280&e.id)>>8,255&e.id,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0])),s=Math.floor(e.baseMediaDecodeTime/(H+1)),o=Math.floor(e.baseMediaDecodeTime%(H+1)),n=t(S.tfdt,new Uint8Array([1,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s,o>>>24&255,o>>>16&255,o>>>8&255,255&o])),92,"audio"===e.type?(r=T(e,92),t(S.traf,i,n,r)):(a=g(e),r=T(e,a.length+92),t(S.traf,i,n,r,a))},h=function(e){return e.duration=e.duration||4294967295,t(S.trak,c(e),f(e))},b=function(e){var i=new Uint8Array([0,0,0,0,(4278190080&e.id)>>24,(16711680&e.id)>>16,(65280&e.id)>>8,255&e.id,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return"video"!==e.type&&(i[i.length-1]=0),t(S.trex,i)},j=function(e,t){var i=0,n=0,r=0,a=0;return e.length&&(void 0!==e[0].duration&&(i=1),void 0!==e[0].size&&(n=2),void 0!==e[0].flags&&(r=4),void 0!==e[0].compositionTimeOffset&&(a=8)),[0,0,i|n|r|a,1,(4278190080&e.length)>>>24,(16711680&e.length)>>>16,(65280&e.length)>>>8,255&e.length,(4278190080&t)>>>24,(16711680&t)>>>16,(65280&t)>>>8,255&t]},N=function(e,i){var n,r,a,s,o,u;for(i+=20+16*(s=e.samples||[]).length,a=j(s,i),(r=new Uint8Array(a.length+16*s.length)).set(a),n=a.length,u=0;u>>24,r[n++]=(16711680&o.duration)>>>16,r[n++]=(65280&o.duration)>>>8,r[n++]=255&o.duration,r[n++]=(4278190080&o.size)>>>24,r[n++]=(16711680&o.size)>>>16,r[n++]=(65280&o.size)>>>8,r[n++]=255&o.size,r[n++]=o.flags.isLeading<<2|o.flags.dependsOn,r[n++]=o.flags.isDependedOn<<6|o.flags.hasRedundancy<<4|o.flags.paddingValue<<1|o.flags.isNonSyncSample,r[n++]=61440&o.flags.degradationPriority,r[n++]=15&o.flags.degradationPriority,r[n++]=(4278190080&o.compositionTimeOffset)>>>24,r[n++]=(16711680&o.compositionTimeOffset)>>>16,r[n++]=(65280&o.compositionTimeOffset)>>>8,r[n++]=255&o.compositionTimeOffset;return t(S.trun,r)},B=function(e,i){var n,r,a,s,o,u;for(i+=20+8*(s=e.samples||[]).length,a=j(s,i),(n=new Uint8Array(a.length+8*s.length)).set(a),r=a.length,u=0;u>>24,n[r++]=(16711680&o.duration)>>>16,n[r++]=(65280&o.duration)>>>8,n[r++]=255&o.duration,n[r++]=(4278190080&o.size)>>>24,n[r++]=(16711680&o.size)>>>16,n[r++]=(65280&o.size)>>>8,n[r++]=255&o.size;return t(S.trun,n)},T=function(e,t){return"audio"===e.type?B(e,t):N(e,t)};r=function(){return t(S.ftyp,E,w,E,C)};var z,G,W,Y,q,K,X,Q,$=function(e){return t(S.mdat,e)},J=o,Z=function(e){var t,i=r(),n=u(e);return(t=new Uint8Array(i.byteLength+n.byteLength)).set(i),t.set(n,i.byteLength),t},ee=function(e,t){var i={size:0,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0,degradationPriority:0,isNonSyncSample:1}};return i.dataOffset=t,i.compositionTimeOffset=e.pts-e.dts,i.duration=e.duration,i.size=4*e.length,i.size+=e.byteLength,e.keyFrame&&(i.flags.dependsOn=2,i.flags.isNonSyncSample=0),i},te=function(e){var t,i,n=[],r=[];for(r.byteLength=0,r.nalCount=0,r.duration=0,n.byteLength=0,t=0;t1&&(t=e.shift(),e.byteLength-=t.byteLength,e.nalCount-=t.nalCount,e[0][0].dts=t.dts,e[0][0].pts=t.pts,e[0][0].duration+=t.duration),e},re=function(e,t){var i,n,r,a,s,o=t||0,u=[];for(i=0;ide/2))){for((s=le()[e.samplerate])||(s=t[0].data),o=0;o=i?e:(t.minSegmentDts=1/0,e.filter((function(e){return e.dts>=i&&(t.minSegmentDts=Math.min(t.minSegmentDts,e.dts),t.minSegmentPts=t.minSegmentDts,!0)})))},ve=function(e){var t,i,n=[];for(t=0;t=this.virtualRowCount&&"function"==typeof this.beforeRowOverflow&&this.beforeRowOverflow(e),this.rows.length>0&&(this.rows.push(""),this.rowIdx++);this.rows.length>this.virtualRowCount;)this.rows.shift(),this.rowIdx--},De.prototype.isEmpty=function(){return 0===this.rows.length||1===this.rows.length&&""===this.rows[0]},De.prototype.addText=function(e){this.rows[this.rowIdx]+=e},De.prototype.backspace=function(){if(!this.isEmpty()){var e=this.rows[this.rowIdx];this.rows[this.rowIdx]=e.substr(0,e.length-1)}};var Re=function(e){this.serviceNum=e,this.text="",this.currentWindow=new De(-1),this.windows=[]};Re.prototype.init=function(e,t){this.startPts=e;for(var i=0;i<8;i++)this.windows[i]=new De(i),"function"==typeof t&&(this.windows[i].beforeRowOverflow=t)},Re.prototype.setCurrentWindow=function(e){this.currentWindow=this.windows[e]};var Ue=function e(){e.prototype.init.call(this);var t=this;this.current708Packet=null,this.services={},this.push=function(e){3===e.type?(t.new708Packet(),t.add708Bytes(e)):(null===t.current708Packet&&t.new708Packet(),t.add708Bytes(e))}};Ue.prototype=new V,Ue.prototype.new708Packet=function(){null!==this.current708Packet&&this.push708Packet(),this.current708Packet={data:[],ptsVals:[]}},Ue.prototype.add708Bytes=function(e){var t=e.ccData,i=t>>>8,n=255&t;this.current708Packet.ptsVals.push(e.pts),this.current708Packet.data.push(i),this.current708Packet.data.push(n)},Ue.prototype.push708Packet=function(){var e=this.current708Packet,t=e.data,i=null,n=null,r=0,a=t[r++];for(e.seq=a>>6,e.sizeCode=63&a;r>5)&&n>0&&(i=a=t[r++]),this.pushServiceBlock(i,r,n),n>0&&(r+=n-1)},Ue.prototype.pushServiceBlock=function(e,t,i){var n,r=t,a=this.current708Packet.data,s=this.services[e];for(s||(s=this.initService(e,r));r>5,a.rowLock=(16&n)>>4,a.columnLock=(8&n)>>3,a.priority=7&n,n=i[++e],a.relativePositioning=(128&n)>>7,a.anchorVertical=127&n,n=i[++e],a.anchorHorizontal=n,n=i[++e],a.anchorPoint=(240&n)>>4,a.rowCount=15&n,n=i[++e],a.columnCount=63&n,n=i[++e],a.windowStyle=(56&n)>>3,a.penStyle=7&n,a.virtualRowCount=a.rowCount+1,e},Ue.prototype.setWindowAttributes=function(e,t){var i=this.current708Packet.data,n=i[e],r=t.currentWindow.winAttr;return n=i[++e],r.fillOpacity=(192&n)>>6,r.fillRed=(48&n)>>4,r.fillGreen=(12&n)>>2,r.fillBlue=3&n,n=i[++e],r.borderType=(192&n)>>6,r.borderRed=(48&n)>>4,r.borderGreen=(12&n)>>2,r.borderBlue=3&n,n=i[++e],r.borderType+=(128&n)>>5,r.wordWrap=(64&n)>>6,r.printDirection=(48&n)>>4,r.scrollDirection=(12&n)>>2,r.justify=3&n,n=i[++e],r.effectSpeed=(240&n)>>4,r.effectDirection=(12&n)>>2,r.displayEffect=3&n,e},Ue.prototype.flushDisplayed=function(e,t){for(var i=[],n=0;n<8;n++)t.windows[n].visible&&!t.windows[n].isEmpty()&&i.push(t.windows[n].getText());t.endPts=e,t.text=i.join("\n\n"),this.pushCaption(t),t.startPts=e},Ue.prototype.pushCaption=function(e){""!==e.text&&(this.trigger("data",{startPts:e.startPts,endPts:e.endPts,text:e.text,stream:"cc708_"+e.serviceNum}),e.text="",e.startPts=e.endPts)},Ue.prototype.displayWindows=function(e,t){var i=this.current708Packet.data[++e],n=this.getPts(e);this.flushDisplayed(n,t);for(var r=0;r<8;r++)i&1<>4,r.offset=(12&n)>>2,r.penSize=3&n,n=i[++e],r.italics=(128&n)>>7,r.underline=(64&n)>>6,r.edgeType=(56&n)>>3,r.fontStyle=7&n,e},Ue.prototype.setPenColor=function(e,t){var i=this.current708Packet.data,n=i[e],r=t.currentWindow.penColor;return n=i[++e],r.fgOpacity=(192&n)>>6,r.fgRed=(48&n)>>4,r.fgGreen=(12&n)>>2,r.fgBlue=3&n,n=i[++e],r.bgOpacity=(192&n)>>6,r.bgRed=(48&n)>>4,r.bgGreen=(12&n)>>2,r.bgBlue=3&n,n=i[++e],r.edgeRed=(48&n)>>4,r.edgeGreen=(12&n)>>2,r.edgeBlue=3&n,e},Ue.prototype.setPenLocation=function(e,t){var i=this.current708Packet.data,n=i[e],r=t.currentWindow.penLoc;return t.currentWindow.pendingNewLine=!0,n=i[++e],r.row=15&n,n=i[++e],r.column=63&n,e},Ue.prototype.reset=function(e,t){var i=this.getPts(e);return this.flushDisplayed(i,t),this.initService(t.serviceNum,e)};var Oe={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,304:174,305:176,306:189,307:191,308:8482,309:162,310:163,311:9834,312:224,313:160,314:232,315:226,316:234,317:238,318:244,319:251,544:193,545:201,546:211,547:218,548:220,549:252,550:8216,551:161,552:42,553:39,554:8212,555:169,556:8480,557:8226,558:8220,559:8221,560:192,561:194,562:199,563:200,564:202,565:203,566:235,567:206,568:207,569:239,570:212,571:217,572:249,573:219,574:171,575:187,800:195,801:227,802:205,803:204,804:236,805:210,806:242,807:213,808:245,809:123,810:125,811:92,812:94,813:95,814:124,815:126,816:196,817:228,818:214,819:246,820:223,821:165,822:164,823:9474,824:197,825:229,826:216,827:248,828:9484,829:9488,830:9492,831:9496},Me=function(e){return null===e?"":(e=Oe[e]||e,String.fromCharCode(e))},Fe=[4352,4384,4608,4640,5376,5408,5632,5664,5888,5920,4096,4864,4896,5120,5152],Be=function(){for(var e=[],t=15;t--;)e.push("");return e},Ne=function e(t,i){e.prototype.init.call(this),this.field_=t||0,this.dataChannel_=i||0,this.name_="CC"+(1+(this.field_<<1|this.dataChannel_)),this.setConstants(),this.reset(),this.push=function(e){var t,i,n,r,a;if((t=32639&e.ccData)!==this.lastControlCode_){if(4096==(61440&t)?this.lastControlCode_=t:t!==this.PADDING_&&(this.lastControlCode_=null),n=t>>>8,r=255&t,t!==this.PADDING_)if(t===this.RESUME_CAPTION_LOADING_)this.mode_="popOn";else if(t===this.END_OF_CAPTION_)this.mode_="popOn",this.clearFormatting(e.pts),this.flushDisplayed(e.pts),i=this.displayed_,this.displayed_=this.nonDisplayed_,this.nonDisplayed_=i,this.startPts_=e.pts;else if(t===this.ROLL_UP_2_ROWS_)this.rollUpRows_=2,this.setRollUp(e.pts);else if(t===this.ROLL_UP_3_ROWS_)this.rollUpRows_=3,this.setRollUp(e.pts);else if(t===this.ROLL_UP_4_ROWS_)this.rollUpRows_=4,this.setRollUp(e.pts);else if(t===this.CARRIAGE_RETURN_)this.clearFormatting(e.pts),this.flushDisplayed(e.pts),this.shiftRowsUp_(),this.startPts_=e.pts;else if(t===this.BACKSPACE_)"popOn"===this.mode_?this.nonDisplayed_[this.row_]=this.nonDisplayed_[this.row_].slice(0,-1):this.displayed_[this.row_]=this.displayed_[this.row_].slice(0,-1);else if(t===this.ERASE_DISPLAYED_MEMORY_)this.flushDisplayed(e.pts),this.displayed_=Be();else if(t===this.ERASE_NON_DISPLAYED_MEMORY_)this.nonDisplayed_=Be();else if(t===this.RESUME_DIRECT_CAPTIONING_)"paintOn"!==this.mode_&&(this.flushDisplayed(e.pts),this.displayed_=Be()),this.mode_="paintOn",this.startPts_=e.pts;else if(this.isSpecialCharacter(n,r))a=Me((n=(3&n)<<8)|r),this[this.mode_](e.pts,a),this.column_++;else if(this.isExtCharacter(n,r))"popOn"===this.mode_?this.nonDisplayed_[this.row_]=this.nonDisplayed_[this.row_].slice(0,-1):this.displayed_[this.row_]=this.displayed_[this.row_].slice(0,-1),a=Me((n=(3&n)<<8)|r),this[this.mode_](e.pts,a),this.column_++;else if(this.isMidRowCode(n,r))this.clearFormatting(e.pts),this[this.mode_](e.pts," "),this.column_++,14==(14&r)&&this.addFormatting(e.pts,["i"]),1==(1&r)&&this.addFormatting(e.pts,["u"]);else if(this.isOffsetControlCode(n,r))this.column_+=3&r;else if(this.isPAC(n,r)){var s=Fe.indexOf(7968&t);"rollUp"===this.mode_&&(s-this.rollUpRows_+1<0&&(s=this.rollUpRows_-1),this.setRollUp(e.pts,s)),s!==this.row_&&(this.clearFormatting(e.pts),this.row_=s),1&r&&-1===this.formatting_.indexOf("u")&&this.addFormatting(e.pts,["u"]),16==(16&t)&&(this.column_=4*((14&t)>>1)),this.isColorPAC(r)&&14==(14&r)&&this.addFormatting(e.pts,["i"])}else this.isNormalChar(n)&&(0===r&&(r=null),a=Me(n),a+=Me(r),this[this.mode_](e.pts,a),this.column_+=a.length)}else this.lastControlCode_=null}};Ne.prototype=new V,Ne.prototype.flushDisplayed=function(e){var t=this.displayed_.map((function(e,t){try{return e.trim()}catch(e){return this.trigger("log",{level:"warn",message:"Skipping a malformed 608 caption at index "+t+"."}),""}}),this).join("\n").replace(/^\n+|\n+$/g,"");t.length&&this.trigger("data",{startPts:this.startPts_,endPts:e,text:t,stream:this.name_})},Ne.prototype.reset=function(){this.mode_="popOn",this.topRow_=0,this.startPts_=0,this.displayed_=Be(),this.nonDisplayed_=Be(),this.lastControlCode_=null,this.column_=0,this.row_=14,this.rollUpRows_=2,this.formatting_=[]},Ne.prototype.setConstants=function(){0===this.dataChannel_?(this.BASE_=16,this.EXT_=17,this.CONTROL_=(20|this.field_)<<8,this.OFFSET_=23):1===this.dataChannel_&&(this.BASE_=24,this.EXT_=25,this.CONTROL_=(28|this.field_)<<8,this.OFFSET_=31),this.PADDING_=0,this.RESUME_CAPTION_LOADING_=32|this.CONTROL_,this.END_OF_CAPTION_=47|this.CONTROL_,this.ROLL_UP_2_ROWS_=37|this.CONTROL_,this.ROLL_UP_3_ROWS_=38|this.CONTROL_,this.ROLL_UP_4_ROWS_=39|this.CONTROL_,this.CARRIAGE_RETURN_=45|this.CONTROL_,this.RESUME_DIRECT_CAPTIONING_=41|this.CONTROL_,this.BACKSPACE_=33|this.CONTROL_,this.ERASE_DISPLAYED_MEMORY_=44|this.CONTROL_,this.ERASE_NON_DISPLAYED_MEMORY_=46|this.CONTROL_},Ne.prototype.isSpecialCharacter=function(e,t){return e===this.EXT_&&t>=48&&t<=63},Ne.prototype.isExtCharacter=function(e,t){return(e===this.EXT_+1||e===this.EXT_+2)&&t>=32&&t<=63},Ne.prototype.isMidRowCode=function(e,t){return e===this.EXT_&&t>=32&&t<=47},Ne.prototype.isOffsetControlCode=function(e,t){return e===this.OFFSET_&&t>=33&&t<=35},Ne.prototype.isPAC=function(e,t){return e>=this.BASE_&&e=64&&t<=127},Ne.prototype.isColorPAC=function(e){return e>=64&&e<=79||e>=96&&e<=127},Ne.prototype.isNormalChar=function(e){return e>=32&&e<=127},Ne.prototype.setRollUp=function(e,t){if("rollUp"!==this.mode_&&(this.row_=14,this.mode_="rollUp",this.flushDisplayed(e),this.nonDisplayed_=Be(),this.displayed_=Be()),void 0!==t&&t!==this.row_)for(var i=0;i"}),"");this[this.mode_](e,i)},Ne.prototype.clearFormatting=function(e){if(this.formatting_.length){var t=this.formatting_.reverse().reduce((function(e,t){return e+""}),"");this.formatting_=[],this[this.mode_](e,t)}},Ne.prototype.popOn=function(e,t){var i=this.nonDisplayed_[this.row_];i+=t,this.nonDisplayed_[this.row_]=i},Ne.prototype.rollUp=function(e,t){var i=this.displayed_[this.row_];i+=t,this.displayed_[this.row_]=i},Ne.prototype.shiftRowsUp_=function(){var e;for(e=0;et&&(i=-1);Math.abs(t-e)>4294967296;)e+=8589934592*i;return e},ze=function e(t){var i,n;e.prototype.init.call(this),this.type_=t||"shared",this.push=function(e){"shared"!==this.type_&&e.type!==this.type_||(void 0===n&&(n=e.dts),e.dts=He(e.dts,n),e.pts=He(e.pts,n),i=e.dts,this.trigger("data",e))},this.flush=function(){n=i,this.trigger("done")},this.endTimeline=function(){this.flush(),this.trigger("endedtimeline")},this.discontinuity=function(){n=void 0,i=void 0},this.reset=function(){this.discontinuity(),this.trigger("reset")}};ze.prototype=new V;var Ge,We=ze,Ye=He,qe=function(e,t,i){var n,r="";for(n=t;n>>2;d*=4,d+=3&l[7],o.timeStamp=d,void 0===t.pts&&void 0===t.dts&&(t.pts=o.timeStamp,t.dts=o.timeStamp),this.trigger("timestamp",o)}t.frames.push(o),i+=10,i+=s}while(i>>4>1&&(n+=t[n]+1),0===i.pid)i.type="pat",e(t.subarray(n),i),this.trigger("data",i);else if(i.pid===this.pmtPid)for(i.type="pmt",e(t.subarray(n),i),this.trigger("data",i);this.packetsWaitingForPmt.length;)this.processPes_.apply(this,this.packetsWaitingForPmt.shift());else void 0===this.programMapTable?this.packetsWaitingForPmt.push([t,n,i]):this.processPes_(t,n,i)},this.processPes_=function(e,t,i){i.pid===this.programMapTable.video?i.streamType=Ve.H264_STREAM_TYPE:i.pid===this.programMapTable.audio?i.streamType=Ve.ADTS_STREAM_TYPE:i.streamType=this.programMapTable["timed-metadata"][i.pid],i.type="pes",i.data=e.subarray(t),this.trigger("data",i)}}).prototype=new V,Je.STREAM_TYPES={h264:27,adts:15},(Ze=function(){var e,t=this,i=!1,n={data:[],size:0},r={data:[],size:0},a={data:[],size:0},s=function(e,i,n){var r,a,s=new Uint8Array(e.size),o={type:i},u=0,l=0;if(e.data.length&&!(e.size<9)){for(o.trackId=e.data[0].pid,u=0;u>>3,h.pts*=4,h.pts+=(6&d[13])>>>1,h.dts=h.pts,64&c&&(h.dts=(14&d[14])<<27|(255&d[15])<<20|(254&d[16])<<12|(255&d[17])<<5|(254&d[18])>>>3,h.dts*=4,h.dts+=(6&d[18])>>>1)),h.data=d.subarray(9+d[8])),r="video"===i||o.packetLength<=e.size,(n||r)&&(e.size=0,e.data.length=0),r&&t.trigger("data",o)}};Ze.prototype.init.call(this),this.push=function(o){({pat:function(){},pes:function(){var e,t;switch(o.streamType){case Ve.H264_STREAM_TYPE:e=n,t="video";break;case Ve.ADTS_STREAM_TYPE:e=r,t="audio";break;case Ve.METADATA_STREAM_TYPE:e=a,t="timed-metadata";break;default:return}o.payloadUnitStartIndicator&&s(e,t,!0),e.data.push(o),e.size+=o.data.byteLength},pmt:function(){var n={type:"metadata",tracks:[]};null!==(e=o.programMapTable).video&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.video,codec:"avc",type:"video"}),null!==e.audio&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.audio,codec:"adts",type:"audio"}),i=!0,t.trigger("data",n)}})[o.type]()},this.reset=function(){n.size=0,n.data.length=0,r.size=0,r.data.length=0,this.trigger("reset")},this.flushStreams_=function(){s(n,"video"),s(r,"audio"),s(a,"timed-metadata")},this.flush=function(){if(!i&&e){var n={type:"metadata",tracks:[]};null!==e.video&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.video,codec:"avc",type:"video"}),null!==e.audio&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.audio,codec:"adts",type:"audio"}),t.trigger("data",n)}i=!1,this.flushStreams_(),this.trigger("done")}}).prototype=new V;var it={PAT_PID:0,MP2T_PACKET_LENGTH:188,TransportPacketStream:$e,TransportParseStream:Je,ElementaryStream:Ze,TimestampRolloverStream:tt,CaptionStream:je.CaptionStream,Cea608Stream:je.Cea608Stream,Cea708Stream:je.Cea708Stream,MetadataStream:et};for(var nt in Ve)Ve.hasOwnProperty(nt)&&(it[nt]=Ve[nt]);var rt,at=it,st=de,ot=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];(rt=function(e){var t,i=0;rt.prototype.init.call(this),this.skipWarn_=function(e,t){this.trigger("log",{level:"warn",message:"adts skiping bytes "+e+" to "+t+" in frame "+i+" outside syncword"})},this.push=function(n){var r,a,s,o,u,l=0;if(e||(i=0),"audio"===n.type){var d;for(t&&t.length?(s=t,(t=new Uint8Array(s.byteLength+n.data.byteLength)).set(s),t.set(n.data,s.byteLength)):t=n.data;l+7>5,u=(o=1024*(1+(3&t[l+6])))*st/ot[(60&t[l+2])>>>2],t.byteLength-l>>6&3),channelcount:(1&t[l+2])<<2|(192&t[l+3])>>>6,samplerate:ot[(60&t[l+2])>>>2],samplingfrequencyindex:(60&t[l+2])>>>2,samplesize:16,data:t.subarray(l+7+a,l+r)}),i++,l+=r}else"number"!=typeof d&&(d=l),l++;"number"==typeof d&&(this.skipWarn_(d,l),d=null),t=t.subarray(l)}},this.flush=function(){i=0,this.trigger("done")},this.reset=function(){t=void 0,this.trigger("reset")},this.endTimeline=function(){t=void 0,this.trigger("endedtimeline")}}).prototype=new V;var ut,lt,dt,ht=rt,ct=function(e){var t=e.byteLength,i=0,n=0;this.length=function(){return 8*t},this.bitsAvailable=function(){return 8*t+n},this.loadWord=function(){var r=e.byteLength-t,a=new Uint8Array(4),s=Math.min(4,t);if(0===s)throw new Error("no bytes available");a.set(e.subarray(r,r+s)),i=new DataView(a.buffer).getUint32(0),n=8*s,t-=s},this.skipBits=function(e){var r;n>e?(i<<=e,n-=e):(e-=n,e-=8*(r=Math.floor(e/8)),t-=r,this.loadWord(),i<<=e,n-=e)},this.readBits=function(e){var r=Math.min(n,e),a=i>>>32-r;return(n-=r)>0?i<<=r:t>0&&this.loadWord(),(r=e-r)>0?a<>>e))return i<<=e,n-=e,e;return this.loadWord(),e+this.skipLeadingZeros()},this.skipUnsignedExpGolomb=function(){this.skipBits(1+this.skipLeadingZeros())},this.skipExpGolomb=function(){this.skipBits(1+this.skipLeadingZeros())},this.readUnsignedExpGolomb=function(){var e=this.skipLeadingZeros();return this.readBits(e+1)-1},this.readExpGolomb=function(){var e=this.readUnsignedExpGolomb();return 1&e?1+e>>>1:-1*(e>>>1)},this.readBoolean=function(){return 1===this.readBits(1)},this.readUnsignedByte=function(){return this.readBits(8)},this.loadWord()};(lt=function(){var e,t,i=0;lt.prototype.init.call(this),this.push=function(n){var r;t?((r=new Uint8Array(t.byteLength+n.data.byteLength)).set(t),r.set(n.data,t.byteLength),t=r):t=n.data;for(var a=t.byteLength;i3&&this.trigger("data",t.subarray(i+3)),t=null,i=0,this.trigger("done")},this.endTimeline=function(){this.flush(),this.trigger("endedtimeline")}}).prototype=new V,dt={100:!0,110:!0,122:!0,244:!0,44:!0,83:!0,86:!0,118:!0,128:!0,138:!0,139:!0,134:!0},(ut=function(){var e,t,i,n,r,a,s,o=new lt;ut.prototype.init.call(this),e=this,this.push=function(e){"video"===e.type&&(t=e.trackId,i=e.pts,n=e.dts,o.push(e))},o.on("data",(function(s){var o={trackId:t,pts:i,dts:n,data:s,nalUnitTypeCode:31&s[0]};switch(o.nalUnitTypeCode){case 5:o.nalUnitType="slice_layer_without_partitioning_rbsp_idr";break;case 6:o.nalUnitType="sei_rbsp",o.escapedRBSP=r(s.subarray(1));break;case 7:o.nalUnitType="seq_parameter_set_rbsp",o.escapedRBSP=r(s.subarray(1)),o.config=a(o.escapedRBSP);break;case 8:o.nalUnitType="pic_parameter_set_rbsp";break;case 9:o.nalUnitType="access_unit_delimiter_rbsp"}e.trigger("data",o)})),o.on("done",(function(){e.trigger("done")})),o.on("partialdone",(function(){e.trigger("partialdone")})),o.on("reset",(function(){e.trigger("reset")})),o.on("endedtimeline",(function(){e.trigger("endedtimeline")})),this.flush=function(){o.flush()},this.partialFlush=function(){o.partialFlush()},this.reset=function(){o.reset()},this.endTimeline=function(){o.endTimeline()},s=function(e,t){var i,n=8,r=8;for(i=0;i=0?i:0,(16&e[t+5])>>4?i+20:i+10},_t=function(e){return e[0]<<21|e[1]<<14|e[2]<<7|e[3]},vt={isLikelyAacData:function(e){var t=function e(t,i){return t.length-i<10||t[i]!=="I".charCodeAt(0)||t[i+1]!=="D".charCodeAt(0)||t[i+2]!=="3".charCodeAt(0)?i:e(t,i+=gt(t,i))}(e,0);return e.length>=t+2&&255==(255&e[t])&&240==(240&e[t+1])&&16==(22&e[t+1])},parseId3TagSize:gt,parseAdtsSize:function(e,t){var i=(224&e[t+5])>>5,n=e[t+4]<<3;return 6144&e[t+3]|n|i},parseType:function(e,t){return e[t]==="I".charCodeAt(0)&&e[t+1]==="D".charCodeAt(0)&&e[t+2]==="3".charCodeAt(0)?"timed-metadata":!0&e[t]&&240==(240&e[t+1])?"audio":null},parseSampleRate:function(e){for(var t=0;t+5>>2];t++}return null},parseAacTimestamp:function(e){var t,i,n;t=10,64&e[5]&&(t+=4,t+=_t(e.subarray(10,14)));do{if((i=_t(e.subarray(t+4,t+8)))<1)return null;if("PRIV"===String.fromCharCode(e[t],e[t+1],e[t+2],e[t+3])){n=e.subarray(t+10,t+i+10);for(var r=0;r>>2;return s*=4,s+=3&a[7]}break}}t+=10,t+=i}while(t=3;)if(e[u]!=="I".charCodeAt(0)||e[u+1]!=="D".charCodeAt(0)||e[u+2]!=="3".charCodeAt(0))if(255!=(255&e[u])||240!=(240&e[u+1]))u++;else{if(e.length-u<7)break;if(u+(o=vt.parseAdtsSize(e,u))>e.length)break;a={type:"audio",data:e.subarray(u,u+o),pts:t,dts:t},this.trigger("data",a),u+=o}else{if(e.length-u<10)break;if(u+(o=vt.parseId3TagSize(e,u))>e.length)break;r={type:"timed-metadata",data:e.subarray(u,u+o)},this.trigger("data",r),u+=o}n=e.length-u,e=n>0?e.subarray(u):new Uint8Array},this.reset=function(){e=new Uint8Array,this.trigger("reset")},this.endTimeline=function(){e=new Uint8Array,this.trigger("endedtimeline")}}).prototype=new V;var yt,bt,Tt,St,Et=ft,wt=["audioobjecttype","channelcount","samplerate","samplingfrequencyindex","samplesize"],Ct=["width","height","profileIdc","levelIdc","profileCompatibility","sarRatio"],At=pt.H264Stream,kt=vt.isLikelyAacData,It=de,xt=function(e,t){var i;if(e.length!==t.length)return!1;for(i=0;i=-1e4&&i<=45e3&&(!n||o>i)&&(n=a,o=i));return n?n.gop:null},this.alignGopsAtStart_=function(e){var t,i,n,r,a,o,u,l;for(a=e.byteLength,o=e.nalCount,u=e.duration,t=i=0;tn.pts?t++:(i++,a-=r.byteLength,o-=r.nalCount,u-=r.duration);return 0===i?e:i===e.length?null:((l=e.slice(i)).byteLength=a,l.duration=u,l.nalCount=o,l.pts=l[0].pts,l.dts=l[0].dts,l)},this.alignGopsAtEnd_=function(e){var t,i,n,r,a,o,u;for(t=s.length-1,i=e.length-1,a=null,o=!1;t>=0&&i>=0;){if(n=s[t],r=e[i],n.pts===r.pts){o=!0;break}n.pts>r.pts?t--:(t===s.length-1&&(a=i),i--)}if(!o&&null===a)return null;if(0===(u=o?i:a))return e;var l=e.slice(u),d=l.reduce((function(e,t){return e.byteLength+=t.byteLength,e.duration+=t.duration,e.nalCount+=t.nalCount,e}),{byteLength:0,duration:0,nalCount:0});return l.byteLength=d.byteLength,l.duration=d.duration,l.nalCount=d.nalCount,l.pts=l[0].pts,l.dts=l[0].dts,l},this.alignGopsWith=function(e){s=e}}).prototype=new V,(St=function(e,t){this.numberOfTracks=0,this.metadataStream=t,void 0!==(e=e||{}).remux?this.remuxTracks=!!e.remux:this.remuxTracks=!0,"boolean"==typeof e.keepOriginalTimestamps?this.keepOriginalTimestamps=e.keepOriginalTimestamps:this.keepOriginalTimestamps=!1,this.pendingTracks=[],this.videoTrack=null,this.pendingBoxes=[],this.pendingCaptions=[],this.pendingMetadata=[],this.pendingBytes=0,this.emittedTracks=0,St.prototype.init.call(this),this.push=function(e){return e.text?this.pendingCaptions.push(e):e.frames?this.pendingMetadata.push(e):(this.pendingTracks.push(e.track),this.pendingBytes+=e.boxes.byteLength,"video"===e.track.type&&(this.videoTrack=e.track,this.pendingBoxes.push(e.boxes)),void("audio"===e.track.type&&(this.audioTrack=e.track,this.pendingBoxes.unshift(e.boxes))))}}).prototype=new V,St.prototype.flush=function(e){var t,i,n,r,a=0,s={captions:[],captionStreams:{},metadata:[],info:{}},o=0;if(this.pendingTracks.length=this.numberOfTracks&&(this.trigger("done"),this.emittedTracks=0))}if(this.videoTrack?(o=this.videoTrack.timelineStartInfo.pts,Ct.forEach((function(e){s.info[e]=this.videoTrack[e]}),this)):this.audioTrack&&(o=this.audioTrack.timelineStartInfo.pts,wt.forEach((function(e){s.info[e]=this.audioTrack[e]}),this)),this.videoTrack||this.audioTrack){for(1===this.pendingTracks.length?s.type=this.pendingTracks[0].type:s.type="combined",this.emittedTracks+=this.pendingTracks.length,n=Z(this.pendingTracks),s.initSegment=new Uint8Array(n.byteLength),s.initSegment.set(n),s.data=new Uint8Array(this.pendingBytes),r=0;r=this.numberOfTracks&&(this.trigger("done"),this.emittedTracks=0)},St.prototype.setRemux=function(e){this.remuxTracks=e},(Tt=function(e){var t,i,n=this,r=!0;Tt.prototype.init.call(this),e=e||{},this.baseMediaDecodeTime=e.baseMediaDecodeTime||0,this.transmuxPipeline_={},this.setupAacPipeline=function(){var r={};this.transmuxPipeline_=r,r.type="aac",r.metadataStream=new at.MetadataStream,r.aacStream=new Et,r.audioTimestampRolloverStream=new at.TimestampRolloverStream("audio"),r.timedMetadataTimestampRolloverStream=new at.TimestampRolloverStream("timed-metadata"),r.adtsStream=new ht,r.coalesceStream=new St(e,r.metadataStream),r.headOfPipeline=r.aacStream,r.aacStream.pipe(r.audioTimestampRolloverStream).pipe(r.adtsStream),r.aacStream.pipe(r.timedMetadataTimestampRolloverStream).pipe(r.metadataStream).pipe(r.coalesceStream),r.metadataStream.on("timestamp",(function(e){r.aacStream.setTimestamp(e.timeStamp)})),r.aacStream.on("data",(function(a){"timed-metadata"!==a.type&&"audio"!==a.type||r.audioSegmentStream||(i=i||{timelineStartInfo:{baseMediaDecodeTime:n.baseMediaDecodeTime},codec:"adts",type:"audio"},r.coalesceStream.numberOfTracks++,r.audioSegmentStream=new bt(i,e),r.audioSegmentStream.on("log",n.getLogTrigger_("audioSegmentStream")),r.audioSegmentStream.on("timingInfo",n.trigger.bind(n,"audioTimingInfo")),r.adtsStream.pipe(r.audioSegmentStream).pipe(r.coalesceStream),n.trigger("trackinfo",{hasAudio:!!i,hasVideo:!!t}))})),r.coalesceStream.on("data",this.trigger.bind(this,"data")),r.coalesceStream.on("done",this.trigger.bind(this,"done"))},this.setupTsPipeline=function(){var r={};this.transmuxPipeline_=r,r.type="ts",r.metadataStream=new at.MetadataStream,r.packetStream=new at.TransportPacketStream,r.parseStream=new at.TransportParseStream,r.elementaryStream=new at.ElementaryStream,r.timestampRolloverStream=new at.TimestampRolloverStream,r.adtsStream=new ht,r.h264Stream=new At,r.captionStream=new at.CaptionStream(e),r.coalesceStream=new St(e,r.metadataStream),r.headOfPipeline=r.packetStream,r.packetStream.pipe(r.parseStream).pipe(r.elementaryStream).pipe(r.timestampRolloverStream),r.timestampRolloverStream.pipe(r.h264Stream),r.timestampRolloverStream.pipe(r.adtsStream),r.timestampRolloverStream.pipe(r.metadataStream).pipe(r.coalesceStream),r.h264Stream.pipe(r.captionStream).pipe(r.coalesceStream),r.elementaryStream.on("data",(function(a){var s;if("metadata"===a.type){for(s=a.tracks.length;s--;)t||"video"!==a.tracks[s].type?i||"audio"!==a.tracks[s].type||((i=a.tracks[s]).timelineStartInfo.baseMediaDecodeTime=n.baseMediaDecodeTime):(t=a.tracks[s]).timelineStartInfo.baseMediaDecodeTime=n.baseMediaDecodeTime;t&&!r.videoSegmentStream&&(r.coalesceStream.numberOfTracks++,r.videoSegmentStream=new yt(t,e),r.videoSegmentStream.on("log",n.getLogTrigger_("videoSegmentStream")),r.videoSegmentStream.on("timelineStartInfo",(function(t){i&&!e.keepOriginalTimestamps&&(i.timelineStartInfo=t,r.audioSegmentStream.setEarliestDts(t.dts-n.baseMediaDecodeTime))})),r.videoSegmentStream.on("processedGopsInfo",n.trigger.bind(n,"gopInfo")),r.videoSegmentStream.on("segmentTimingInfo",n.trigger.bind(n,"videoSegmentTimingInfo")),r.videoSegmentStream.on("baseMediaDecodeTime",(function(e){i&&r.audioSegmentStream.setVideoBaseMediaDecodeTime(e)})),r.videoSegmentStream.on("timingInfo",n.trigger.bind(n,"videoTimingInfo")),r.h264Stream.pipe(r.videoSegmentStream).pipe(r.coalesceStream)),i&&!r.audioSegmentStream&&(r.coalesceStream.numberOfTracks++,r.audioSegmentStream=new bt(i,e),r.audioSegmentStream.on("log",n.getLogTrigger_("audioSegmentStream")),r.audioSegmentStream.on("timingInfo",n.trigger.bind(n,"audioTimingInfo")),r.audioSegmentStream.on("segmentTimingInfo",n.trigger.bind(n,"audioSegmentTimingInfo")),r.adtsStream.pipe(r.audioSegmentStream).pipe(r.coalesceStream)),n.trigger("trackinfo",{hasAudio:!!i,hasVideo:!!t})}})),r.coalesceStream.on("data",this.trigger.bind(this,"data")),r.coalesceStream.on("id3Frame",(function(e){e.dispatchType=r.metadataStream.dispatchType,n.trigger("id3Frame",e)})),r.coalesceStream.on("caption",this.trigger.bind(this,"caption")),r.coalesceStream.on("done",this.trigger.bind(this,"done"))},this.setBaseMediaDecodeTime=function(n){var r=this.transmuxPipeline_;e.keepOriginalTimestamps||(this.baseMediaDecodeTime=n),i&&(i.timelineStartInfo.dts=void 0,i.timelineStartInfo.pts=void 0,Te(i),r.audioTimestampRolloverStream&&r.audioTimestampRolloverStream.discontinuity()),t&&(r.videoSegmentStream&&(r.videoSegmentStream.gopCache_=[]),t.timelineStartInfo.dts=void 0,t.timelineStartInfo.pts=void 0,Te(t),r.captionStream.reset()),r.timestampRolloverStream&&r.timestampRolloverStream.discontinuity()},this.setAudioAppendStart=function(e){i&&this.transmuxPipeline_.audioSegmentStream.setAudioAppendStart(e)},this.setRemux=function(t){var i=this.transmuxPipeline_;e.remux=t,i&&i.coalesceStream&&i.coalesceStream.setRemux(t)},this.alignGopsWith=function(e){t&&this.transmuxPipeline_.videoSegmentStream&&this.transmuxPipeline_.videoSegmentStream.alignGopsWith(e)},this.getLogTrigger_=function(e){var t=this;return function(i){i.stream=e,t.trigger("log",i)}},this.push=function(e){if(r){var t=kt(e);if(t&&"aac"!==this.transmuxPipeline_.type?this.setupAacPipeline():t||"ts"===this.transmuxPipeline_.type||this.setupTsPipeline(),this.transmuxPipeline_)for(var i=Object.keys(this.transmuxPipeline_),n=0;n>>0},Mt=function(e){var t="";return t+=String.fromCharCode(e[0]),t+=String.fromCharCode(e[1]),t+=String.fromCharCode(e[2]),t+=String.fromCharCode(e[3])},Ft=Ot,Bt=function e(t,i){var n,r,a,s,o,u=[];if(!i.length)return null;for(n=0;n1?n+r:t.byteLength,a===i[0]&&(1===i.length?u.push(t.subarray(n+8,s)):(o=e(t.subarray(n+8,s),i.slice(1))).length&&(u=u.concat(o))),n=s;return u},Nt=Ot,jt=function(e){var t={version:e[0],flags:new Uint8Array(e.subarray(1,4)),baseMediaDecodeTime:Nt(e[4]<<24|e[5]<<16|e[6]<<8|e[7])};return 1===t.version&&(t.baseMediaDecodeTime*=Math.pow(2,32),t.baseMediaDecodeTime+=Nt(e[8]<<24|e[9]<<16|e[10]<<8|e[11])),t},Vt=function(e){return{isLeading:(12&e[0])>>>2,dependsOn:3&e[0],isDependedOn:(192&e[1])>>>6,hasRedundancy:(48&e[1])>>>4,paddingValue:(14&e[1])>>>1,isNonSyncSample:1&e[1],degradationPriority:e[2]<<8|e[3]}},Ht=function(e){var t,i={version:e[0],flags:new Uint8Array(e.subarray(1,4)),samples:[]},n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=1&i.flags[2],a=4&i.flags[2],s=1&i.flags[1],o=2&i.flags[1],u=4&i.flags[1],l=8&i.flags[1],d=n.getUint32(4),h=8;for(r&&(i.dataOffset=n.getInt32(h),h+=4),a&&d&&(t={flags:Vt(e.subarray(h,h+4))},h+=4,s&&(t.duration=n.getUint32(h),h+=4),o&&(t.size=n.getUint32(h),h+=4),l&&(1===i.version?t.compositionTimeOffset=n.getInt32(h):t.compositionTimeOffset=n.getUint32(h),h+=4),i.samples.push(t),d--);d--;)t={},s&&(t.duration=n.getUint32(h),h+=4),o&&(t.size=n.getUint32(h),h+=4),u&&(t.flags=Vt(e.subarray(h,h+4)),h+=4),l&&(1===i.version?t.compositionTimeOffset=n.getInt32(h):t.compositionTimeOffset=n.getUint32(h),h+=4),i.samples.push(t);return i},zt=function(e){var t,i=new DataView(e.buffer,e.byteOffset,e.byteLength),n={version:e[0],flags:new Uint8Array(e.subarray(1,4)),trackId:i.getUint32(4)},r=1&n.flags[2],a=2&n.flags[2],s=8&n.flags[2],o=16&n.flags[2],u=32&n.flags[2],l=65536&n.flags[0],d=131072&n.flags[0];return t=8,r&&(t+=4,n.baseDataOffset=i.getUint32(12),t+=4),a&&(n.sampleDescriptionIndex=i.getUint32(t),t+=4),s&&(n.defaultSampleDuration=i.getUint32(t),t+=4),o&&(n.defaultSampleSize=i.getUint32(t),t+=4),u&&(n.defaultSampleFlags=i.getUint32(t)),l&&(n.durationIsEmpty=!0),!r&&d&&(n.baseDataOffsetIsMoof=!0),n},Gt=ke,Wt=je.CaptionStream,Yt=function(e,t){for(var i=e,n=0;n0?jt(l[0]).baseMediaDecodeTime:0,h=Bt(a,["trun"]);t===u&&h.length>0&&(i=function(e,t,i){var n,r,a,s,o=new DataView(e.buffer,e.byteOffset,e.byteLength),u={logs:[],seiNals:[]};for(r=0;r+40;){var u=t.shift();this.parse(u,a,s)}return(o=function(e,t,i){if(null===t)return null;var n=qt(e,t)[t]||{};return{seiNals:n.seiNals,logs:n.logs,timescale:i}}(e,i,n))&&o.logs&&(r.logs=r.logs.concat(o.logs)),null!==o&&o.seiNals?(this.pushNals(o.seiNals),this.flushStream(),r):r.logs.length?{logs:r.logs,captions:[],captionStreams:[]}:null},this.pushNals=function(t){if(!this.isInitialized()||!t||0===t.length)return null;t.forEach((function(t){e.push(t)}))},this.flushStream=function(){if(!this.isInitialized())return null;a?e.partialFlush():e.flush()},this.clearParsedCaptions=function(){r.captions=[],r.captionStreams={},r.logs=[]},this.resetCaptionStream=function(){if(!this.isInitialized())return null;e.reset()},this.clearAllCaptions=function(){this.clearParsedCaptions(),this.resetCaptionStream()},this.reset=function(){t=[],i=null,n=null,r?this.clearParsedCaptions():r={captions:[],captionStreams:{},logs:[]},this.resetCaptionStream()},this.reset()},Xt=Ot,Qt=function(e){return("00"+e.toString(16)).slice(-2)};Lt=function(e,t){var i,n,r;return i=Bt(t,["moof","traf"]),n=[].concat.apply([],i.map((function(t){return Bt(t,["tfhd"]).map((function(i){var n,r,a;return n=Xt(i[4]<<24|i[5]<<16|i[6]<<8|i[7]),r=e[n]||9e4,(a="number"!=typeof(a=Bt(t,["tfdt"]).map((function(e){var t,i;return t=e[0],i=Xt(e[4]<<24|e[5]<<16|e[6]<<8|e[7]),1===t&&(i*=Math.pow(2,32),i+=Xt(e[8]<<24|e[9]<<16|e[10]<<8|e[11])),i}))[0])||isNaN(a)?1/0:a)/r}))}))),r=Math.min.apply(null,n),isFinite(r)?r:0},Dt=function(e){var t=Bt(e,["moov","trak"]),i=[];return t.forEach((function(e){var t,n,r={},a=Bt(e,["tkhd"])[0];a&&(n=(t=new DataView(a.buffer,a.byteOffset,a.byteLength)).getUint8(0),r.id=0===n?t.getUint32(12):t.getUint32(20));var s=Bt(e,["mdia","hdlr"])[0];if(s){var o=Mt(s.subarray(8,12));r.type="vide"===o?"video":"soun"===o?"audio":o}var u=Bt(e,["mdia","minf","stbl","stsd"])[0];if(u){var l=u.subarray(8);r.codec=Mt(l.subarray(4,8));var d,h=Bt(l,[r.codec])[0];h&&(/^[a-z]vc[1-9]$/i.test(r.codec)?(d=h.subarray(78),"avcC"===Mt(d.subarray(4,8))&&d.length>11?(r.codec+=".",r.codec+=Qt(d[9]),r.codec+=Qt(d[10]),r.codec+=Qt(d[11])):r.codec="avc1.4d400d"):/^mp4[a,v]$/i.test(r.codec)?(d=h.subarray(28),"esds"===Mt(d.subarray(4,8))&&d.length>20&&0!==d[19]?(r.codec+="."+Qt(d[19]),r.codec+="."+Qt(d[20]>>>2&63).replace(/^0/,"")):r.codec="mp4a.40.2"):r.codec=r.codec.toLowerCase())}var c=Bt(e,["mdia","mdhd"])[0];c&&(r.timescale=Rt(c)),i.push(r)})),i};var $t=Lt,Jt=Dt,Zt=(Rt=function(e){var t=0===e[0]?12:20;return Xt(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])},function(e){var t=31&e[1];return t<<=8,t|=e[2]}),ei=function(e){return!!(64&e[1])},ti=function(e){var t=0;return(48&e[3])>>>4>1&&(t+=e[4]+1),t},ii=function(e){switch(e){case 5:return"slice_layer_without_partitioning_rbsp_idr";case 6:return"sei_rbsp";case 7:return"seq_parameter_set_rbsp";case 8:return"pic_parameter_set_rbsp";case 9:return"access_unit_delimiter_rbsp";default:return null}},ni={parseType:function(e,t){var i=Zt(e);return 0===i?"pat":i===t?"pmt":t?"pes":null},parsePat:function(e){var t=ei(e),i=4+ti(e);return t&&(i+=e[i]+1),(31&e[i+10])<<8|e[i+11]},parsePmt:function(e){var t={},i=ei(e),n=4+ti(e);if(i&&(n+=e[n]+1),1&e[n+5]){var r;r=3+((15&e[n+1])<<8|e[n+2])-4;for(var a=12+((15&e[n+10])<<8|e[n+11]);a=e.byteLength)return null;var i,n=null;return 192&(i=e[t+7])&&((n={}).pts=(14&e[t+9])<<27|(255&e[t+10])<<20|(254&e[t+11])<<12|(255&e[t+12])<<5|(254&e[t+13])>>>3,n.pts*=4,n.pts+=(6&e[t+13])>>>1,n.dts=n.pts,64&i&&(n.dts=(14&e[t+14])<<27|(255&e[t+15])<<20|(254&e[t+16])<<12|(255&e[t+17])<<5|(254&e[t+18])>>>3,n.dts*=4,n.dts+=(6&e[t+18])>>>1)),n},videoPacketContainsKeyFrame:function(e){for(var t=4+ti(e),i=e.subarray(t),n=0,r=0,a=!1;r3&&"slice_layer_without_partitioning_rbsp_idr"===ii(31&i[r+3])&&(a=!0),a}},ri=Ye,ai={};ai.ts=ni,ai.aac=vt;var si=de,oi=function(e,t,i){for(var n,r,a,s,o=0,u=188,l=!1;u<=e.byteLength;)if(71!==e[o]||71!==e[u]&&u!==e.byteLength)o++,u++;else{switch(n=e.subarray(o,u),ai.ts.parseType(n,t.pid)){case"pes":r=ai.ts.parsePesType(n,t.table),a=ai.ts.parsePayloadUnitStartIndicator(n),"audio"===r&&a&&(s=ai.ts.parsePesTime(n))&&(s.type="audio",i.audio.push(s),l=!0)}if(l)break;o+=188,u+=188}for(o=(u=e.byteLength)-188,l=!1;o>=0;)if(71!==e[o]||71!==e[u]&&u!==e.byteLength)o--,u--;else{switch(n=e.subarray(o,u),ai.ts.parseType(n,t.pid)){case"pes":r=ai.ts.parsePesType(n,t.table),a=ai.ts.parsePayloadUnitStartIndicator(n),"audio"===r&&a&&(s=ai.ts.parsePesTime(n))&&(s.type="audio",i.audio.push(s),l=!0)}if(l)break;o-=188,u-=188}},ui=function(e,t,i){for(var n,r,a,s,o,u,l,d=0,h=188,c=!1,f={data:[],size:0};h=0;)if(71!==e[d]||71!==e[h])d--,h--;else{switch(n=e.subarray(d,h),ai.ts.parseType(n,t.pid)){case"pes":r=ai.ts.parsePesType(n,t.table),a=ai.ts.parsePayloadUnitStartIndicator(n),"video"===r&&a&&(s=ai.ts.parsePesTime(n))&&(s.type="video",i.video.push(s),c=!0)}if(c)break;d-=188,h-=188}},li=function(e){var t={pid:null,table:null},i={};for(var n in function(e,t){for(var i,n=0,r=188;r=3;){switch(ai.aac.parseType(e,o)){case"timed-metadata":if(e.length-o<10){i=!0;break}if((s=ai.aac.parseId3TagSize(e,o))>e.length){i=!0;break}null===a&&(t=e.subarray(o,o+s),a=ai.aac.parseAacTimestamp(t)),o+=s;break;case"audio":if(e.length-o<7){i=!0;break}if((s=ai.aac.parseAdtsSize(e,o))>e.length){i=!0;break}null===r&&(t=e.subarray(o,o+s),r=ai.aac.parseSampleRate(t)),n++,o+=s;break;default:o++}if(i)return null}if(null===r||null===a)return null;var u=si/r;return{audio:[{type:"audio",dts:a,pts:a},{type:"audio",dts:a+1024*n*u,pts:a+1024*n*u}]}}(e):li(e))&&(i.audio||i.video)?(function(e,t){if(e.audio&&e.audio.length){var i=t;(void 0===i||isNaN(i))&&(i=e.audio[0].dts),e.audio.forEach((function(e){e.dts=ri(e.dts,i),e.pts=ri(e.pts,i),e.dtsTime=e.dts/si,e.ptsTime=e.pts/si}))}if(e.video&&e.video.length){var n=t;if((void 0===n||isNaN(n))&&(n=e.video[0].dts),e.video.forEach((function(e){e.dts=ri(e.dts,n),e.pts=ri(e.pts,n),e.dtsTime=e.dts/si,e.ptsTime=e.pts/si})),e.firstKeyFrame){var r=e.firstKeyFrame;r.dts=ri(r.dts,n),r.pts=ri(r.pts,n),r.dtsTime=r.dts/si,r.ptsTime=r.pts/si}}}(i,t),i):null},hi=function(){function e(e,t){this.options=t||{},this.self=e,this.init()}var t=e.prototype;return t.init=function(){this.transmuxer&&this.transmuxer.dispose(),this.transmuxer=new Ut.Transmuxer(this.options),function(e,t){t.on("data",(function(t){var i=t.initSegment;t.initSegment={data:i.buffer,byteOffset:i.byteOffset,byteLength:i.byteLength};var n=t.data;t.data=n.buffer,e.postMessage({action:"data",segment:t,byteOffset:n.byteOffset,byteLength:n.byteLength},[t.data])})),t.on("done",(function(t){e.postMessage({action:"done"})})),t.on("gopInfo",(function(t){e.postMessage({action:"gopInfo",gopInfo:t})})),t.on("videoSegmentTimingInfo",(function(t){var i={start:{decode:ce(t.start.dts),presentation:ce(t.start.pts)},end:{decode:ce(t.end.dts),presentation:ce(t.end.pts)},baseMediaDecodeTime:ce(t.baseMediaDecodeTime)};t.prependedContentDuration&&(i.prependedContentDuration=ce(t.prependedContentDuration)),e.postMessage({action:"videoSegmentTimingInfo",videoSegmentTimingInfo:i})})),t.on("audioSegmentTimingInfo",(function(t){var i={start:{decode:ce(t.start.dts),presentation:ce(t.start.pts)},end:{decode:ce(t.end.dts),presentation:ce(t.end.pts)},baseMediaDecodeTime:ce(t.baseMediaDecodeTime)};t.prependedContentDuration&&(i.prependedContentDuration=ce(t.prependedContentDuration)),e.postMessage({action:"audioSegmentTimingInfo",audioSegmentTimingInfo:i})})),t.on("id3Frame",(function(t){e.postMessage({action:"id3Frame",id3Frame:t})})),t.on("caption",(function(t){e.postMessage({action:"caption",caption:t})})),t.on("trackinfo",(function(t){e.postMessage({action:"trackinfo",trackInfo:t})})),t.on("audioTimingInfo",(function(t){e.postMessage({action:"audioTimingInfo",audioTimingInfo:{start:ce(t.start),end:ce(t.end)}})})),t.on("videoTimingInfo",(function(t){e.postMessage({action:"videoTimingInfo",videoTimingInfo:{start:ce(t.start),end:ce(t.end)}})})),t.on("log",(function(t){e.postMessage({action:"log",log:t})}))}(this.self,this.transmuxer)},t.pushMp4Captions=function(e){this.captionParser||(this.captionParser=new Kt,this.captionParser.init());var t=new Uint8Array(e.data,e.byteOffset,e.byteLength),i=this.captionParser.parse(t,e.trackIds,e.timescales);this.self.postMessage({action:"mp4Captions",captions:i&&i.captions||[],logs:i&&i.logs||[],data:t.buffer},[t.buffer])},t.probeMp4StartTime=function(e){var t=e.timescales,i=e.data,n=$t(t,i);this.self.postMessage({action:"probeMp4StartTime",startTime:n,data:i},[i.buffer])},t.probeMp4Tracks=function(e){var t=e.data,i=Jt(t);this.self.postMessage({action:"probeMp4Tracks",tracks:i,data:t},[t.buffer])},t.probeTs=function(e){var t=e.data,i=e.baseStartTime,n="number"!=typeof i||isNaN(i)?void 0:i*de,r=di(t,n),a=null;r&&((a={hasVideo:r.video&&2===r.video.length||!1,hasAudio:r.audio&&2===r.audio.length||!1}).hasVideo&&(a.videoStart=r.video[0].ptsTime),a.hasAudio&&(a.audioStart=r.audio[0].ptsTime)),this.self.postMessage({action:"probeTs",result:a,data:t},[t.buffer])},t.clearAllMp4Captions=function(){this.captionParser&&this.captionParser.clearAllCaptions()},t.clearParsedMp4Captions=function(){this.captionParser&&this.captionParser.clearParsedCaptions()},t.push=function(e){var t=new Uint8Array(e.data,e.byteOffset,e.byteLength);this.transmuxer.push(t)},t.reset=function(){this.transmuxer.reset()},t.setTimestampOffset=function(e){var t=e.timestampOffset||0;this.transmuxer.setBaseMediaDecodeTime(Math.round(he(t)))},t.setAudioAppendStart=function(e){this.transmuxer.setAudioAppendStart(Math.ceil(he(e.appendStart)))},t.setRemux=function(e){this.transmuxer.setRemux(e.remux)},t.flush=function(e){this.transmuxer.flush(),self.postMessage({action:"done",type:"transmuxed"})},t.endTimeline=function(){this.transmuxer.endTimeline(),self.postMessage({action:"endedtimeline",type:"transmuxed"})},t.alignGopsWith=function(e){this.transmuxer.alignGopsWith(e.gopsToAlignWith.slice())},e}();self.onmessage=function(e){"init"===e.data.action&&e.data.options?this.messageHandlers=new hi(self,e.data.options):(this.messageHandlers||(this.messageHandlers=new hi(self)),e.data&&e.data.action&&"init"!==e.data.action&&this.messageHandlers[e.data.action]&&this.messageHandlers[e.data.action](e.data))}})))),ls=function(e){var t=e.transmuxer,i=e.bytes,n=e.audioAppendStart,r=e.gopsToAlignWith,a=e.remux,s=e.onData,o=e.onTrackInfo,u=e.onAudioTimingInfo,l=e.onVideoTimingInfo,d=e.onVideoSegmentTimingInfo,h=e.onAudioSegmentTimingInfo,c=e.onId3,f=e.onCaptions,p=e.onDone,m=e.onEndedTimeline,g=e.onTransmuxerLog,_=e.isEndOfTimeline,v={buffer:[]},y=_;if(t.onmessage=function(i){t.currentTransmux===e&&("data"===i.data.action&&function(e,t,i){var n=e.data.segment,r=n.type,a=n.initSegment,s=n.captions,o=n.captionStreams,u=n.metadata,l=n.videoFrameDtsTime,d=n.videoFramePtsTime;t.buffer.push({captions:s,captionStreams:o,metadata:u});var h=e.data.segment.boxes||{data:e.data.segment.data},c={type:r,data:new Uint8Array(h.data,h.data.byteOffset,h.data.byteLength),initSegment:new Uint8Array(a.data,a.byteOffset,a.byteLength)};void 0!==l&&(c.videoFrameDtsTime=l),void 0!==d&&(c.videoFramePtsTime=d),i(c)}(i,v,s),"trackinfo"===i.data.action&&o(i.data.trackInfo),"gopInfo"===i.data.action&&function(e,t){t.gopInfo=e.data.gopInfo}(i,v),"audioTimingInfo"===i.data.action&&u(i.data.audioTimingInfo),"videoTimingInfo"===i.data.action&&l(i.data.videoTimingInfo),"videoSegmentTimingInfo"===i.data.action&&d(i.data.videoSegmentTimingInfo),"audioSegmentTimingInfo"===i.data.action&&h(i.data.audioSegmentTimingInfo),"id3Frame"===i.data.action&&c([i.data.id3Frame],i.data.id3Frame.dispatchType),"caption"===i.data.action&&f(i.data.caption),"endedtimeline"===i.data.action&&(y=!1,m()),"log"===i.data.action&&g(i.data.log),"transmuxed"===i.data.type&&(y||(t.onmessage=null,function(e){var t=e.transmuxedData,i=e.callback;t.buffer=[],i(t)}({transmuxedData:v,callback:p}),ds(t))))},n&&t.postMessage({action:"setAudioAppendStart",appendStart:n}),Array.isArray(r)&&t.postMessage({action:"alignGopsWith",gopsToAlignWith:r}),void 0!==a&&t.postMessage({action:"setRemux",remux:a}),i.byteLength){var b=i instanceof ArrayBuffer?i:i.buffer,T=i instanceof ArrayBuffer?0:i.byteOffset;t.postMessage({action:"push",data:b,byteOffset:T,byteLength:i.byteLength},[b])}_&&t.postMessage({action:"endTimeline"}),t.postMessage({action:"flush"})},ds=function(e){e.currentTransmux=null,e.transmuxQueue.length&&(e.currentTransmux=e.transmuxQueue.shift(),"function"==typeof e.currentTransmux?e.currentTransmux():ls(e.currentTransmux))},hs=function(e,t){e.postMessage({action:t}),ds(e)},cs=function(e,t){if(!t.currentTransmux)return t.currentTransmux=e,void hs(t,e);t.transmuxQueue.push(hs.bind(null,t,e))},fs=function(e){if(!e.transmuxer.currentTransmux)return e.transmuxer.currentTransmux=e,void ls(e);e.transmuxer.transmuxQueue.push(e)},ps=function(e){cs("reset",e)},ms=function(e){var t=new us;t.currentTransmux=null,t.transmuxQueue=[];var i=t.terminate;return t.terminate=function(){return t.currentTransmux=null,t.transmuxQueue.length=0,i.call(t)},t.postMessage({action:"init",options:e}),t},gs=function(e){var t=e.transmuxer,i=e.endAction||e.action,n=e.callback,r=I.default({},e,{endAction:null,transmuxer:null,callback:null});if(t.addEventListener("message",(function r(a){a.data.action===i&&(t.removeEventListener("message",r),a.data.data&&(a.data.data=new Uint8Array(a.data.data,e.byteOffset||0,e.byteLength||a.data.data.byteLength),e.data&&(e.data=a.data.data)),n(a.data))})),e.data){var a=e.data instanceof ArrayBuffer;r.byteOffset=a?0:e.data.byteOffset,r.byteLength=e.data.byteLength;var s=[a?e.data:e.data.buffer];t.postMessage(r,s)}else t.postMessage(r)},_s=2,vs=-101,ys=-102,bs=function(e){e.forEach((function(e){e.abort()}))},Ts=function(e,t){return t.timedout?{status:t.status,message:"HLS request timed-out at URL: "+t.uri,code:vs,xhr:t}:t.aborted?{status:t.status,message:"HLS request aborted at URL: "+t.uri,code:ys,xhr:t}:e?{status:t.status,message:"HLS request errored at URL: "+t.uri,code:_s,xhr:t}:"arraybuffer"===t.responseType&&0===t.response.byteLength?{status:t.status,message:"Empty HLS response at URL: "+t.uri,code:_s,xhr:t}:null},Ss=function(e,t,i){return function(n,r){var a=r.response,s=Ts(n,r);if(s)return i(s,e);if(16!==a.byteLength)return i({status:r.status,message:"Invalid HLS key at URL: "+r.uri,code:_s,xhr:r},e);for(var o=new DataView(a),u=new Uint32Array([o.getUint32(0),o.getUint32(4),o.getUint32(8),o.getUint32(12)]),l=0;l1)return Ls("multiple "+e+" codecs found as attributes: "+t[e].join(", ")+". Setting playlist codecs to null so that we wait for mux.js to probe segments for real codecs."),void(t[e]=null);t[e]=t[e][0]})),t},Us=function(e){var t=0;return e.audio&&t++,e.video&&t++,t},Os=function(e,t){var i=t.attributes||{},n=Rs(function(e){var t=e.attributes||{};if(t.CODECS)return g.parseCodecs(t.CODECS)}(t)||[]);if(Ds(e,t)&&!n.audio&&!function(e,t){if(!Ds(e,t))return!0;var i=t.attributes||{},n=e.mediaGroups.AUDIO[i.AUDIO];for(var r in n)if(!n[r].uri&&!n[r].playlists)return!0;return!1}(e,t)){var r=Rs(g.codecsFromDefault(e,i.AUDIO)||[]);r.audio&&(n.audio=r.audio)}return n},Ms=$r("PlaylistSelector"),Fs=function(e){if(e&&e.playlist){var t=e.playlist;return JSON.stringify({id:t.id,bandwidth:e.bandwidth,width:e.width,height:e.height,codecs:t.attributes&&t.attributes.CODECS||""})}},Bs=function(e,t){if(!e)return"";var i=A.default.getComputedStyle(e);return i?i[t]:""},Ns=function(e,t){var i=e.slice();e.sort((function(e,n){var r=t(e,n);return 0===r?i.indexOf(e)-i.indexOf(n):r}))},js=function(e,t){var i,n;return e.attributes.BANDWIDTH&&(i=e.attributes.BANDWIDTH),i=i||A.default.Number.MAX_VALUE,t.attributes.BANDWIDTH&&(n=t.attributes.BANDWIDTH),i-(n=n||A.default.Number.MAX_VALUE)},Vs=function(e,t,i,n,r,a){if(e){var s={bandwidth:t,width:i,height:n,limitRenditionByPlayerDimensions:r},o=e.playlists;Ta.isAudioOnly(e)&&(o=a.getAudioTrackPlaylists_(),s.audioOnly=!0);var u=o.map((function(e){var t=e.attributes&&e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width,i=e.attributes&&e.attributes.RESOLUTION&&e.attributes.RESOLUTION.height;return{bandwidth:e.attributes&&e.attributes.BANDWIDTH||A.default.Number.MAX_VALUE,width:t,height:i,playlist:e}}));Ns(u,(function(e,t){return e.bandwidth-t.bandwidth}));var l=(u=u.filter((function(e){return!Ta.isIncompatible(e.playlist)}))).filter((function(e){return Ta.isEnabled(e.playlist)}));l.length||(l=u.filter((function(e){return!Ta.isDisabled(e.playlist)})));var d=l.filter((function(e){return e.bandwidth*ns.BANDWIDTH_VARIANCEi||e.height>n}))).filter((function(e){return e.width===_[0].width&&e.height===_[0].height})),h=v[v.length-1],y=v.filter((function(e){return e.bandwidth===h.bandwidth}))[0]),a.experimentalLeastPixelDiffSelector){var S=m.map((function(e){return e.pixelDiff=Math.abs(e.width-i)+Math.abs(e.height-n),e}));Ns(S,(function(e,t){return e.pixelDiff===t.pixelDiff?t.bandwidth-e.bandwidth:e.pixelDiff-t.pixelDiff})),b=S[0]}var E=b||y||T||c||l[0]||u[0];if(E&&E.playlist){var w="sortedPlaylistReps";return b?w="leastPixelDiffRep":y?w="resolutionPlusOneRep":T?w="resolutionBestRep":c?w="bandwidthBestRep":l[0]&&(w="enabledPlaylistReps"),Ms("choosing "+Fs(E)+" using "+w+" with options",s),E.playlist}return Ms("could not choose a playlist with options",s),null}},Hs=function(){var e=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return Vs(this.playlists.master,this.systemBandwidth,parseInt(Bs(this.tech_.el(),"width"),10)*e,parseInt(Bs(this.tech_.el(),"height"),10)*e,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)},zs=function(e){var t=e.inbandTextTracks,i=e.metadataArray,n=e.timestampOffset,r=e.videoDuration;if(i){var a=A.default.WebKitDataCue||A.default.VTTCue,s=t.metadataTrack_;if(s&&(i.forEach((function(e){var t=e.cueTime+n;!("number"!=typeof t||A.default.isNaN(t)||t<0)&&t<1/0&&e.frames.forEach((function(e){var i=new a(t,t,e.value||e.url||e.data||"");i.frame=e,i.value=e,function(e){Object.defineProperties(e.frame,{id:{get:function(){return Yr.log.warn("cue.frame.id is deprecated. Use cue.value.key instead."),e.value.key}},value:{get:function(){return Yr.log.warn("cue.frame.value is deprecated. Use cue.value.data instead."),e.value.data}},privateData:{get:function(){return Yr.log.warn("cue.frame.privateData is deprecated. Use cue.value.data instead."),e.value.data}}})}(i),s.addCue(i)}))})),s.cues&&s.cues.length)){for(var o=s.cues,u=[],l=0;l=e&&r.endTime<=t&&i.removeCue(r)},Ws=function(e){return"number"==typeof e&&isFinite(e)},Ys=function(e){var t=e.startOfSegment,i=e.duration,n=e.segment,r=e.part,a=e.playlist,s=a.mediaSequence,o=a.id,u=a.segments,l=void 0===u?[]:u,d=e.mediaIndex,h=e.partIndex,c=e.timeline,f=l.length-1,p="mediaIndex/partIndex increment";e.getMediaInfoForTime?p="getMediaInfoForTime ("+e.getMediaInfoForTime+")":e.isSyncRequest&&(p="getSyncSegmentCandidate (isSyncRequest)");var m="number"==typeof h,g=e.segment.uri?"segment":"pre-segment",_=m?oa({preloadSegment:n})-1:0;return g+" ["+(s+d)+"/"+(s+f)+"]"+(m?" part ["+h+"/"+_+"]":"")+" segment start/end ["+n.start+" => "+n.end+"]"+(m?" part start/end ["+r.start+" => "+r.end+"]":"")+" startOfSegment ["+t+"] duration ["+i+"] timeline ["+c+"] selected by ["+p+"] playlist ["+o+"]"},qs=function(e){return e+"TimingInfo"},Ks=function(e){var t=e.timelineChangeController,i=e.currentTimeline,n=e.segmentTimeline,r=e.loaderType,a=e.audioDisabled;if(i===n)return!1;if("audio"===r){var s=t.lastTimelineChange({type:"main"});return!s||s.to!==n}if("main"===r&&a){var o=t.pendingTimelineChange({type:"audio"});return!o||o.to!==n}return!1},Xs=function(e){var t=e.segmentDuration,i=e.maxDuration;return!!t&&Math.round(t)>i+1/30},Qs=function(e,t){if("hls"!==t)return null;var i,n,r,a,s=(i=e.audioTimingInfo,n=e.videoTimingInfo,r=i&&"number"==typeof i.start&&"number"==typeof i.end?i.end-i.start:0,a=n&&"number"==typeof n.start&&"number"==typeof n.end?n.end-n.start:0,Math.max(r,a));if(!s)return null;var o=e.playlist.targetDuration,u=Xs({segmentDuration:s,maxDuration:2*o}),l=Xs({segmentDuration:s,maxDuration:o}),d="Segment with index "+e.mediaIndex+" from playlist "+e.playlist.id+" has a duration of "+s+" when the reported duration is "+e.duration+" and the target duration is "+o+". For HLS content, a duration in excess of the target duration may result in playback issues. See the HLS specification section on EXT-X-TARGETDURATION for more details: https://tools.ietf.org/html/draft-pantos-http-live-streaming-23#section-4.3.3.1";return u||l?{severity:u?"warn":"info",message:d}:null},$s=function(e){function t(t,i){var n;if(n=e.call(this)||this,!t)throw new TypeError("Initialization settings are required");if("function"!=typeof t.currentTime)throw new TypeError("No currentTime getter specified");if(!t.mediaSource)throw new TypeError("No MediaSource specified");return n.bandwidth=t.bandwidth,n.throughput={rate:0,count:0},n.roundTrip=NaN,n.resetStats_(),n.mediaIndex=null,n.partIndex=null,n.hasPlayed_=t.hasPlayed,n.currentTime_=t.currentTime,n.seekable_=t.seekable,n.seeking_=t.seeking,n.duration_=t.duration,n.mediaSource_=t.mediaSource,n.vhs_=t.vhs,n.loaderType_=t.loaderType,n.currentMediaInfo_=void 0,n.startingMediaInfo_=void 0,n.segmentMetadataTrack_=t.segmentMetadataTrack,n.goalBufferLength_=t.goalBufferLength,n.sourceType_=t.sourceType,n.sourceUpdater_=t.sourceUpdater,n.inbandTextTracks_=t.inbandTextTracks,n.state_="INIT",n.timelineChangeController_=t.timelineChangeController,n.shouldSaveSegmentTimingInfo_=!0,n.parse708captions_=t.parse708captions,n.experimentalExactManifestTimings=t.experimentalExactManifestTimings,n.checkBufferTimeout_=null,n.error_=void 0,n.currentTimeline_=-1,n.pendingSegment_=null,n.xhrOptions_=null,n.pendingSegments_=[],n.audioDisabled_=!1,n.isPendingTimestampOffset_=!1,n.gopBuffer_=[],n.timeMapping_=0,n.safeAppend_=Yr.browser.IE_VERSION>=11,n.appendInitSegment_={audio:!0,video:!0},n.playlistOfLastInitSegment_={audio:null,video:null},n.callQueue_=[],n.loadQueue_=[],n.metadataQueue_={id3:[],caption:[]},n.waitingOnRemove_=!1,n.quotaExceededErrorRetryTimeout_=null,n.activeInitSegmentId_=null,n.initSegments_={},n.cacheEncryptionKeys_=t.cacheEncryptionKeys,n.keyCache_={},n.decrypter_=t.decrypter,n.syncController_=t.syncController,n.syncPoint_={segmentIndex:0,time:0},n.transmuxer_=n.createTransmuxer_(),n.triggerSyncInfoUpdate_=function(){return n.trigger("syncinfoupdate")},n.syncController_.on("syncinfoupdate",n.triggerSyncInfoUpdate_),n.mediaSource_.addEventListener("sourceopen",(function(){n.isEndOfStream_()||(n.ended_=!1)})),n.fetchAtBuffer_=!1,n.logger_=$r("SegmentLoader["+n.loaderType_+"]"),Object.defineProperty(x.default(n),"state",{get:function(){return this.state_},set:function(e){e!==this.state_&&(this.logger_(this.state_+" -> "+e),this.state_=e,this.trigger("statechange"))}}),n.sourceUpdater_.on("ready",(function(){n.hasEnoughInfoToAppend_()&&n.processCallQueue_()})),"main"===n.loaderType_&&n.timelineChangeController_.on("pendingtimelinechange",(function(){n.hasEnoughInfoToAppend_()&&n.processCallQueue_()})),"audio"===n.loaderType_&&n.timelineChangeController_.on("timelinechange",(function(){n.hasEnoughInfoToLoad_()&&n.processLoadQueue_(),n.hasEnoughInfoToAppend_()&&n.processCallQueue_()})),n}P.default(t,e);var i=t.prototype;return i.createTransmuxer_=function(){return ms({remux:!1,alignGopsAtEnd:this.safeAppend_,keepOriginalTimestamps:!0,parse708captions:this.parse708captions_})},i.resetStats_=function(){this.mediaBytesTransferred=0,this.mediaRequests=0,this.mediaRequestsAborted=0,this.mediaRequestsTimedout=0,this.mediaRequestsErrored=0,this.mediaTransferDuration=0,this.mediaSecondsLoaded=0,this.mediaAppends=0},i.dispose=function(){this.trigger("dispose"),this.state="DISPOSED",this.pause(),this.abort_(),this.transmuxer_&&this.transmuxer_.terminate(),this.resetStats_(),this.checkBufferTimeout_&&A.default.clearTimeout(this.checkBufferTimeout_),this.syncController_&&this.triggerSyncInfoUpdate_&&this.syncController_.off("syncinfoupdate",this.triggerSyncInfoUpdate_),this.off()},i.setAudio=function(e){this.audioDisabled_=!e,e?this.appendInitSegment_.audio=!0:this.sourceUpdater_.removeAudio(0,this.duration_())},i.abort=function(){"WAITING"===this.state?(this.abort_(),this.state="READY",this.paused()||this.monitorBuffer_()):this.pendingSegment_&&(this.pendingSegment_=null)},i.abort_=function(){this.pendingSegment_&&this.pendingSegment_.abortRequests&&this.pendingSegment_.abortRequests(),this.pendingSegment_=null,this.callQueue_=[],this.loadQueue_=[],this.metadataQueue_.id3=[],this.metadataQueue_.caption=[],this.timelineChangeController_.clearPendingTimelineChange(this.loaderType_),this.waitingOnRemove_=!1,A.default.clearTimeout(this.quotaExceededErrorRetryTimeout_),this.quotaExceededErrorRetryTimeout_=null},i.checkForAbort_=function(e){return"APPENDING"!==this.state||this.pendingSegment_?!this.pendingSegment_||this.pendingSegment_.requestId!==e:(this.state="READY",!0)},i.error=function(e){return void 0!==e&&(this.logger_("error occurred:",e),this.error_=e),this.pendingSegment_=null,this.error_},i.endOfStream=function(){this.ended_=!0,this.transmuxer_&&ps(this.transmuxer_),this.gopBuffer_.length=0,this.pause(),this.trigger("ended")},i.buffered_=function(){var e=this.getMediaInfo_();if(!this.sourceUpdater_||!e)return Yr.createTimeRanges();if("main"===this.loaderType_){var t=e.hasAudio,i=e.hasVideo,n=e.isMuxed;if(i&&t&&!this.audioDisabled_&&!n)return this.sourceUpdater_.buffered();if(i)return this.sourceUpdater_.videoBuffered()}return this.sourceUpdater_.audioBuffered()},i.initSegmentForMap=function(e,t){if(void 0===t&&(t=!1),!e)return null;var i=Wa(e),n=this.initSegments_[i];return t&&!n&&e.bytes&&(this.initSegments_[i]=n={resolvedUri:e.resolvedUri,byterange:e.byterange,bytes:e.bytes,tracks:e.tracks,timescales:e.timescales}),n||e},i.segmentKey=function(e,t){if(void 0===t&&(t=!1),!e)return null;var i=Ya(e),n=this.keyCache_[i];this.cacheEncryptionKeys_&&t&&!n&&e.bytes&&(this.keyCache_[i]=n={resolvedUri:e.resolvedUri,bytes:e.bytes});var r={resolvedUri:(n||e).resolvedUri};return n&&(r.bytes=n.bytes),r},i.couldBeginLoading_=function(){return this.playlist_&&!this.paused()},i.load=function(){if(this.monitorBuffer_(),this.playlist_)return"INIT"===this.state&&this.couldBeginLoading_()?this.init_():void(!this.couldBeginLoading_()||"READY"!==this.state&&"INIT"!==this.state||(this.state="READY"))},i.init_=function(){return this.state="READY",this.resetEverything(),this.monitorBuffer_()},i.playlist=function(e,t){if(void 0===t&&(t={}),e){var i=this.playlist_,n=this.pendingSegment_;this.playlist_=e,this.xhrOptions_=t,"INIT"===this.state&&(e.syncInfo={mediaSequence:e.mediaSequence,time:0},"main"===this.loaderType_&&this.syncController_.setDateTimeMappingForStart(e));var r=null;if(i&&(i.id?r=i.id:i.uri&&(r=i.uri)),this.logger_("playlist update ["+r+" => "+(e.id||e.uri)+"]"),this.trigger("syncinfoupdate"),"INIT"===this.state&&this.couldBeginLoading_())return this.init_();if(!i||i.uri!==e.uri)return null!==this.mediaIndex&&this.resyncLoader(),this.currentMediaInfo_=void 0,void this.trigger("playlistupdate");var a=e.mediaSequence-i.mediaSequence;if(this.logger_("live window shift ["+a+"]"),null!==this.mediaIndex)if(this.mediaIndex-=a,this.mediaIndex<0)this.mediaIndex=null,this.partIndex=null;else{var s=this.playlist_.segments[this.mediaIndex];if(this.partIndex&&(!s.parts||!s.parts.length||!s.parts[this.partIndex])){var o=this.mediaIndex;this.logger_("currently processing part (index "+this.partIndex+") no longer exists."),this.resetLoader(),this.mediaIndex=o}}n&&(n.mediaIndex-=a,n.mediaIndex<0?(n.mediaIndex=null,n.partIndex=null):(n.mediaIndex>=0&&(n.segment=e.segments[n.mediaIndex]),n.partIndex>=0&&n.segment.parts&&(n.part=n.segment.parts[n.partIndex]))),this.syncController_.saveExpiredSegmentInfo(i,e)}},i.pause=function(){this.checkBufferTimeout_&&(A.default.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=null)},i.paused=function(){return null===this.checkBufferTimeout_},i.resetEverything=function(e){this.ended_=!1,this.appendInitSegment_={audio:!0,video:!0},this.resetLoader(),this.remove(0,1/0,e),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearAllMp4Captions"})},i.resetLoader=function(){this.fetchAtBuffer_=!1,this.resyncLoader()},i.resyncLoader=function(){this.transmuxer_&&ps(this.transmuxer_),this.mediaIndex=null,this.partIndex=null,this.syncPoint_=null,this.isPendingTimestampOffset_=!1,this.callQueue_=[],this.loadQueue_=[],this.metadataQueue_.id3=[],this.metadataQueue_.caption=[],this.abort(),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearParsedMp4Captions"})},i.remove=function(e,t,i,n){if(void 0===i&&(i=function(){}),void 0===n&&(n=!1),t===1/0&&(t=this.duration_()),t<=e)this.logger_("skipping remove because end ${end} is <= start ${start}");else if(this.sourceUpdater_&&this.getMediaInfo_()){var r=1,a=function(){0===--r&&i()};for(var s in!n&&this.audioDisabled_||(r++,this.sourceUpdater_.removeAudio(e,t,a)),(n||"main"===this.loaderType_)&&(this.gopBuffer_=function(e,t,i,n){for(var r=Math.ceil((t-n)*E.ONE_SECOND_IN_TS),a=Math.ceil((i-n)*E.ONE_SECOND_IN_TS),s=e.slice(),o=e.length;o--&&!(e[o].pts<=a););if(-1===o)return s;for(var u=o+1;u--&&!(e[u].pts<=r););return u=Math.max(u,0),s.splice(u,o-u+1),s}(this.gopBuffer_,e,t,this.timeMapping_),r++,this.sourceUpdater_.removeVideo(e,t,a)),this.inbandTextTracks_)Gs(e,t,this.inbandTextTracks_[s]);Gs(e,t,this.segmentMetadataTrack_),a()}else this.logger_("skipping remove because no source updater or starting media info")},i.monitorBuffer_=function(){this.checkBufferTimeout_&&A.default.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=A.default.setTimeout(this.monitorBufferTick_.bind(this),1)},i.monitorBufferTick_=function(){"READY"===this.state&&this.fillBuffer_(),this.checkBufferTimeout_&&A.default.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=A.default.setTimeout(this.monitorBufferTick_.bind(this),500)},i.fillBuffer_=function(){if(!this.sourceUpdater_.updating()){var e=this.chooseNextRequest_();e&&("number"==typeof e.timestampOffset&&(this.isPendingTimestampOffset_=!1,this.timelineChangeController_.pendingTimelineChange({type:this.loaderType_,from:this.currentTimeline_,to:e.timeline})),this.loadSegment_(e))}},i.isEndOfStream_=function(e,t,i){if(void 0===e&&(e=this.mediaIndex),void 0===t&&(t=this.playlist_),void 0===i&&(i=this.partIndex),!t||!this.mediaSource_)return!1;var n="number"==typeof e&&t.segments[e],r=e+1===t.segments.length,a=!n||!n.parts||i+1===n.parts.length;return t.endList&&"open"===this.mediaSource_.readyState&&r&&a},i.chooseNextRequest_=function(){var e=na(this.buffered_())||0,t=Math.max(0,e-this.currentTime_()),i=!this.hasPlayed_()&&t>=1,n=t>=this.goalBufferLength_(),r=this.playlist_.segments;if(!r.length||i||n)return null;this.syncPoint_=this.syncPoint_||this.syncController_.getSyncPoint(this.playlist_,this.duration_(),this.currentTimeline_,this.currentTime_());var a={partIndex:null,mediaIndex:null,startOfSegment:null,playlist:this.playlist_,isSyncRequest:Boolean(!this.syncPoint_)};if(a.isSyncRequest)a.mediaIndex=function(e,t,i){t=t||[];for(var n=[],r=0,a=0;ai))return a}return 0===n.length?0:n[n.length-1]}(this.currentTimeline_,r,e);else if(null!==this.mediaIndex){var s=r[this.mediaIndex],o="number"==typeof this.partIndex?this.partIndex:-1;a.startOfSegment=s.end?s.end:e,s.parts&&s.parts[o+1]?(a.mediaIndex=this.mediaIndex,a.partIndex=o+1):a.mediaIndex=this.mediaIndex+1}else{var u=Ta.getMediaInfoForTime({experimentalExactManifestTimings:this.experimentalExactManifestTimings,playlist:this.playlist_,currentTime:this.fetchAtBuffer_?e:this.currentTime_(),startingPartIndex:this.syncPoint_.partIndex,startingSegmentIndex:this.syncPoint_.segmentIndex,startTime:this.syncPoint_.time}),l=u.segmentIndex,d=u.startTime,h=u.partIndex;a.getMediaInfoForTime=this.fetchAtBuffer_?"bufferedEnd":"currentTime",a.mediaIndex=l,a.startOfSegment=d,a.partIndex=h}var c=r[a.mediaIndex],f=c&&"number"==typeof a.partIndex&&c.parts&&c.parts[a.partIndex];if(!c||"number"==typeof a.partIndex&&!f)return null;"number"!=typeof a.partIndex&&c.parts&&(a.partIndex=0);var p=this.mediaSource_&&"ended"===this.mediaSource_.readyState;return a.mediaIndex>=r.length-1&&p&&!this.seeking_()?null:this.generateSegmentInfo_(a)},i.generateSegmentInfo_=function(e){var t=e.playlist,i=e.mediaIndex,n=e.startOfSegment,r=e.isSyncRequest,a=e.partIndex,s=e.forceTimestampOffset,o=e.getMediaInfoForTime,u=t.segments[i],l="number"==typeof a&&u.parts[a],d={requestId:"segment-loader-"+Math.random(),uri:l&&l.resolvedUri||u.resolvedUri,mediaIndex:i,partIndex:l?a:null,isSyncRequest:r,startOfSegment:n,playlist:t,bytes:null,encryptedBytes:null,timestampOffset:null,timeline:u.timeline,duration:l&&l.duration||u.duration,segment:u,part:l,byteLength:0,transmuxer:this.transmuxer_,getMediaInfoForTime:o},h=void 0!==s?s:this.isPendingTimestampOffset_;d.timestampOffset=this.timestampOffsetForSegment_({segmentTimeline:u.timeline,currentTimeline:this.currentTimeline_,startOfSegment:n,buffered:this.buffered_(),overrideCheck:h});var c=na(this.sourceUpdater_.audioBuffered());return"number"==typeof c&&(d.audioAppendStart=c-this.sourceUpdater_.audioTimestampOffset()),this.sourceUpdater_.videoBuffered().length&&(d.gopsToAlignWith=function(e,t,i){if(null==t||!e.length)return[];var n,r=Math.ceil((t-i+3)*E.ONE_SECOND_IN_TS);for(n=0;nr);n++);return e.slice(n)}(this.gopBuffer_,this.currentTime_()-this.sourceUpdater_.videoTimestampOffset(),this.timeMapping_)),d},i.timestampOffsetForSegment_=function(e){return i=(t=e).segmentTimeline,n=t.currentTimeline,r=t.startOfSegment,a=t.buffered,t.overrideCheck||i!==n?i "+s+" for "+e),function(e,t,i){if(!e[i]){t.trigger({type:"usage",name:"vhs-608"}),t.trigger({type:"usage",name:"hls-608"});var n=i;/^cc708_/.test(i)&&(n="SERVICE"+i.split("_")[1]);var r=t.textTracks().getTrackById(n);if(r)e[i]=r;else{var a=i,s=i,o=!1,u=(t.options_.vhs&&t.options_.vhs.captionServices||{})[n];u&&(a=u.label,s=u.language,o=u.default),e[i]=t.addRemoteTextTrack({kind:"captions",id:n,default:o,label:a,language:s},!1).track}}}(u,i.vhs_.tech_,e),Gs(a,s,u[e]),function(e){var t=e.inbandTextTracks,i=e.captionArray,n=e.timestampOffset;if(i){var r=A.default.WebKitDataCue||A.default.VTTCue;i.forEach((function(e){var i=e.stream;t[i].addCue(new r(e.startTime+n,e.endTime+n,e.text))}))}}({captionArray:o,inbandTextTracks:u,timestampOffset:n})})),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearParsedMp4Captions"})}else this.metadataQueue_.caption.push(this.handleCaptions_.bind(this,e,t));else this.logger_("SegmentLoader received no captions from a caption event")},i.handleId3_=function(e,t,i){if(this.earlyAbortWhenNeeded_(e.stats),!this.checkForAbort_(e.requestId))if(this.pendingSegment_.hasAppendedData_){var n=null===this.sourceUpdater_.videoTimestampOffset()?this.sourceUpdater_.audioTimestampOffset():this.sourceUpdater_.videoTimestampOffset();!function(e,t,i){e.metadataTrack_||(e.metadataTrack_=i.addRemoteTextTrack({kind:"metadata",label:"Timed Metadata"},!1).track,e.metadataTrack_.inBandMetadataTrackDispatchType=t)}(this.inbandTextTracks_,i,this.vhs_.tech_),zs({inbandTextTracks:this.inbandTextTracks_,metadataArray:t,timestampOffset:n,videoDuration:this.duration_()})}else this.metadataQueue_.id3.push(this.handleId3_.bind(this,e,t,i))},i.processMetadataQueue_=function(){this.metadataQueue_.id3.forEach((function(e){return e()})),this.metadataQueue_.caption.forEach((function(e){return e()})),this.metadataQueue_.id3=[],this.metadataQueue_.caption=[]},i.processCallQueue_=function(){var e=this.callQueue_;this.callQueue_=[],e.forEach((function(e){return e()}))},i.processLoadQueue_=function(){var e=this.loadQueue_;this.loadQueue_=[],e.forEach((function(e){return e()}))},i.hasEnoughInfoToLoad_=function(){if("audio"!==this.loaderType_)return!0;var e=this.pendingSegment_;return!!e&&(!this.getCurrentMediaInfo_()||!Ks({timelineChangeController:this.timelineChangeController_,currentTimeline:this.currentTimeline_,segmentTimeline:e.timeline,loaderType:this.loaderType_,audioDisabled:this.audioDisabled_}))},i.getCurrentMediaInfo_=function(e){return void 0===e&&(e=this.pendingSegment_),e&&e.trackInfo||this.currentMediaInfo_},i.getMediaInfo_=function(e){return void 0===e&&(e=this.pendingSegment_),this.getCurrentMediaInfo_(e)||this.startingMediaInfo_},i.hasEnoughInfoToAppend_=function(){if(!this.sourceUpdater_.ready())return!1;if(this.waitingOnRemove_||this.quotaExceededErrorRetryTimeout_)return!1;var e=this.pendingSegment_,t=this.getCurrentMediaInfo_();if(!e||!t)return!1;var i=t.hasAudio,n=t.hasVideo,r=t.isMuxed;return!(n&&!e.videoTimingInfo)&&(!(i&&!this.audioDisabled_&&!r&&!e.audioTimingInfo)&&!Ks({timelineChangeController:this.timelineChangeController_,currentTimeline:this.currentTimeline_,segmentTimeline:e.timeline,loaderType:this.loaderType_,audioDisabled:this.audioDisabled_}))},i.handleData_=function(e,t){if(this.earlyAbortWhenNeeded_(e.stats),!this.checkForAbort_(e.requestId))if(!this.callQueue_.length&&this.hasEnoughInfoToAppend_()){var i=this.pendingSegment_;if(this.setTimeMapping_(i.timeline),this.updateMediaSecondsLoaded_(i.segment),"closed"!==this.mediaSource_.readyState){if(e.map&&(e.map=this.initSegmentForMap(e.map,!0),i.segment.map=e.map),e.key&&this.segmentKey(e.key,!0),i.isFmp4=e.isFmp4,i.timingInfo=i.timingInfo||{},i.isFmp4)this.trigger("fmp4"),i.timingInfo.start=i[qs(t.type)].start;else{var n,r=this.getCurrentMediaInfo_(),a="main"===this.loaderType_&&r&&r.hasVideo;a&&(n=i.videoTimingInfo.start),i.timingInfo.start=this.trueSegmentStart_({currentStart:i.timingInfo.start,playlist:i.playlist,mediaIndex:i.mediaIndex,currentVideoTimestampOffset:this.sourceUpdater_.videoTimestampOffset(),useVideoTimingInfo:a,firstVideoFrameTimeForData:n,videoTimingInfo:i.videoTimingInfo,audioTimingInfo:i.audioTimingInfo})}if(this.updateAppendInitSegmentStatus(i,t.type),this.updateSourceBufferTimestampOffset_(i),i.isSyncRequest){this.updateTimingInfoEnd_(i),this.syncController_.saveSegmentTimingInfo({segmentInfo:i,shouldSaveTimelineMapping:"main"===this.loaderType_});var s=this.chooseNextRequest_();if(s.mediaIndex!==i.mediaIndex||s.partIndex!==i.partIndex)return void this.logger_("sync segment was incorrect, not appending");this.logger_("sync segment was correct, appending")}i.hasAppendedData_=!0,this.processMetadataQueue_(),this.appendData_(i,t)}}else this.callQueue_.push(this.handleData_.bind(this,e,t))},i.updateAppendInitSegmentStatus=function(e,t){"main"!==this.loaderType_||"number"!=typeof e.timestampOffset||e.changedTimestampOffset||(this.appendInitSegment_={audio:!0,video:!0}),this.playlistOfLastInitSegment_[t]!==e.playlist&&(this.appendInitSegment_[t]=!0)},i.getInitSegmentAndUpdateState_=function(e){var t=e.type,i=e.initSegment,n=e.map,r=e.playlist;if(n){var a=Wa(n);if(this.activeInitSegmentId_===a)return null;i=this.initSegmentForMap(n,!0).bytes,this.activeInitSegmentId_=a}return i&&this.appendInitSegment_[t]?(this.playlistOfLastInitSegment_[t]=r,this.appendInitSegment_[t]=!1,this.activeInitSegmentId_=null,i):null},i.handleQuotaExceededError_=function(e,t){var i=this,n=e.segmentInfo,r=e.type,a=e.bytes,s=this.sourceUpdater_.audioBuffered(),o=this.sourceUpdater_.videoBuffered();s.length>1&&this.logger_("On QUOTA_EXCEEDED_ERR, found gaps in the audio buffer: "+ia(s).join(", ")),o.length>1&&this.logger_("On QUOTA_EXCEEDED_ERR, found gaps in the video buffer: "+ia(o).join(", "));var u=s.length?s.start(0):0,l=s.length?s.end(s.length-1):0,d=o.length?o.start(0):0,h=o.length?o.end(o.length-1):0;if(l-u<=1&&h-d<=1)return this.logger_("On QUOTA_EXCEEDED_ERR, single segment too large to append to buffer, triggering an error. Appended byte length: "+a.byteLength+", audio buffer: "+ia(s).join(", ")+", video buffer: "+ia(o).join(", ")+", "),this.error({message:"Quota exceeded error with append of a single segment of content",excludeUntil:1/0}),void this.trigger("error");this.waitingOnRemove_=!0,this.callQueue_.push(this.appendToSourceBuffer_.bind(this,{segmentInfo:n,type:r,bytes:a}));var c=this.currentTime_()-1;this.logger_("On QUOTA_EXCEEDED_ERR, removing audio/video from 0 to "+c),this.remove(0,c,(function(){i.logger_("On QUOTA_EXCEEDED_ERR, retrying append in 1s"),i.waitingOnRemove_=!1,i.quotaExceededErrorRetryTimeout_=A.default.setTimeout((function(){i.logger_("On QUOTA_EXCEEDED_ERR, re-processing call queue"),i.quotaExceededErrorRetryTimeout_=null,i.processCallQueue_()}),1e3)}),!0)},i.handleAppendError_=function(e,t){var i=e.segmentInfo,n=e.type,r=e.bytes;t&&(22!==t.code?(this.logger_("Received non QUOTA_EXCEEDED_ERR on append",t),this.error(n+" append of "+r.length+"b failed for segment #"+i.mediaIndex+" in playlist "+i.playlist.id),this.trigger("appenderror")):this.handleQuotaExceededError_({segmentInfo:i,type:n,bytes:r}))},i.appendToSourceBuffer_=function(e){var t,i,n,r=e.segmentInfo,a=e.type,s=e.initSegment,o=e.data,u=e.bytes;if(!u){var l=[o],d=o.byteLength;s&&(l.unshift(s),d+=s.byteLength),n=0,(t={bytes:d,segments:l}).bytes&&(i=new Uint8Array(t.bytes),t.segments.forEach((function(e){i.set(e,n),n+=e.byteLength}))),u=i}this.sourceUpdater_.appendBuffer({segmentInfo:r,type:a,bytes:u},this.handleAppendError_.bind(this,{segmentInfo:r,type:a,bytes:u}))},i.handleSegmentTimingInfo_=function(e,t,i){if(this.pendingSegment_&&t===this.pendingSegment_.requestId){var n=this.pendingSegment_.segment,r=e+"TimingInfo";n[r]||(n[r]={}),n[r].transmuxerPrependedSeconds=i.prependedContentDuration||0,n[r].transmuxedPresentationStart=i.start.presentation,n[r].transmuxedDecodeStart=i.start.decode,n[r].transmuxedPresentationEnd=i.end.presentation,n[r].transmuxedDecodeEnd=i.end.decode,n[r].baseMediaDecodeTime=i.baseMediaDecodeTime}},i.appendData_=function(e,t){var i=t.type,n=t.data;if(n&&n.byteLength&&("audio"!==i||!this.audioDisabled_)){var r=this.getInitSegmentAndUpdateState_({type:i,initSegment:t.initSegment,playlist:e.playlist,map:e.isFmp4?e.segment.map:null});this.appendToSourceBuffer_({segmentInfo:e,type:i,initSegment:r,data:n})}},i.loadSegment_=function(e){var t=this;this.state="WAITING",this.pendingSegment_=e,this.trimBackBuffer_(e),"number"==typeof e.timestampOffset&&this.transmuxer_&&this.transmuxer_.postMessage({action:"clearAllMp4Captions"}),this.hasEnoughInfoToLoad_()?this.updateTransmuxerAndRequestSegment_(e):this.loadQueue_.push((function(){var i=I.default({},e,{forceTimestampOffset:!0});I.default(e,t.generateSegmentInfo_(i)),t.isPendingTimestampOffset_=!1,t.updateTransmuxerAndRequestSegment_(e)}))},i.updateTransmuxerAndRequestSegment_=function(e){var t=this;this.shouldUpdateTransmuxerTimestampOffset_(e.timestampOffset)&&(this.gopBuffer_.length=0,e.gopsToAlignWith=[],this.timeMapping_=0,this.transmuxer_.postMessage({action:"reset"}),this.transmuxer_.postMessage({action:"setTimestampOffset",timestampOffset:e.timestampOffset}));var i=this.createSimplifiedSegmentObj_(e),n=this.isEndOfStream_(e.mediaIndex,e.playlist,e.partIndex),r=null!==this.mediaIndex,a=e.timeline!==this.currentTimeline_&&e.timeline>0,s=n||r&&a;this.logger_("Requesting "+Ys(e)),i.map&&!i.map.bytes&&(this.logger_("going to request init segment."),this.appendInitSegment_={video:!0,audio:!0}),e.abortRequests=Ps({xhr:this.vhs_.xhr,xhrOptions:this.xhrOptions_,decryptionWorker:this.decrypter_,segment:i,abortFn:this.handleAbort_.bind(this,e),progressFn:this.handleProgress_.bind(this),trackInfoFn:this.handleTrackInfo_.bind(this),timingInfoFn:this.handleTimingInfo_.bind(this),videoSegmentTimingInfoFn:this.handleSegmentTimingInfo_.bind(this,"video",e.requestId),audioSegmentTimingInfoFn:this.handleSegmentTimingInfo_.bind(this,"audio",e.requestId),captionsFn:this.handleCaptions_.bind(this),isEndOfTimeline:s,endedTimelineFn:function(){t.logger_("received endedtimeline callback")},id3Fn:this.handleId3_.bind(this),dataFn:this.handleData_.bind(this),doneFn:this.segmentRequestFinished_.bind(this),onTransmuxerLog:function(i){var n=i.message,r=i.level,a=i.stream;t.logger_(Ys(e)+" logged from transmuxer stream "+a+" as a "+r+": "+n)}})},i.trimBackBuffer_=function(e){var t=function(e,t,i){var n=t-ns.BACK_BUFFER_LENGTH;e.length&&(n=Math.max(n,e.start(0)));var r=t-i;return Math.min(r,n)}(this.seekable_(),this.currentTime_(),this.playlist_.targetDuration||10);t>0&&this.remove(0,t)},i.createSimplifiedSegmentObj_=function(e){var t=e.segment,i=e.part,n={resolvedUri:i?i.resolvedUri:t.resolvedUri,byterange:i?i.byterange:t.byterange,requestId:e.requestId,transmuxer:e.transmuxer,audioAppendStart:e.audioAppendStart,gopsToAlignWith:e.gopsToAlignWith,part:e.part},r=e.playlist.segments[e.mediaIndex-1];if(r&&r.timeline===t.timeline&&(r.videoTimingInfo?n.baseStartTime=r.videoTimingInfo.transmuxedDecodeEnd:r.audioTimingInfo&&(n.baseStartTime=r.audioTimingInfo.transmuxedDecodeEnd)),t.key){var a=t.key.iv||new Uint32Array([0,0,0,e.mediaIndex+e.playlist.mediaSequence]);n.key=this.segmentKey(t.key),n.key.iv=a}return t.map&&(n.map=this.initSegmentForMap(t.map)),n},i.saveTransferStats_=function(e){this.mediaRequests+=1,e&&(this.mediaBytesTransferred+=e.bytesReceived,this.mediaTransferDuration+=e.roundTripTime)},i.saveBandwidthRelatedStats_=function(e,t){this.pendingSegment_.byteLength=t.bytesReceived,e<1/60?this.logger_("Ignoring segment's bandwidth because its duration of "+e+" is less than the min to record "+1/60):(this.bandwidth=t.bandwidth,this.roundTrip=t.roundTripTime)},i.handleTimeout_=function(){this.mediaRequestsTimedout+=1,this.bandwidth=1,this.roundTrip=NaN,this.trigger("bandwidthupdate")},i.segmentRequestFinished_=function(e,t,i){if(this.callQueue_.length)this.callQueue_.push(this.segmentRequestFinished_.bind(this,e,t,i));else if(this.saveTransferStats_(t.stats),this.pendingSegment_&&t.requestId===this.pendingSegment_.requestId){if(e){if(this.pendingSegment_=null,this.state="READY",e.code===ys)return;return this.pause(),e.code===vs?void this.handleTimeout_():(this.mediaRequestsErrored+=1,this.error(e),void this.trigger("error"))}var n=this.pendingSegment_;this.saveBandwidthRelatedStats_(n.duration,t.stats),n.endOfAllRequests=t.endOfAllRequests,i.gopInfo&&(this.gopBuffer_=function(e,t,i){if(!t.length)return e;if(i)return t.slice();for(var n=t[0].pts,r=0;r=n);r++);return e.slice(0,r).concat(t)}(this.gopBuffer_,i.gopInfo,this.safeAppend_)),this.state="APPENDING",this.trigger("appending"),this.waitForAppendsToComplete_(n)}},i.setTimeMapping_=function(e){var t=this.syncController_.mappingForTimeline(e);null!==t&&(this.timeMapping_=t)},i.updateMediaSecondsLoaded_=function(e){"number"==typeof e.start&&"number"==typeof e.end?this.mediaSecondsLoaded+=e.end-e.start:this.mediaSecondsLoaded+=e.duration},i.shouldUpdateTransmuxerTimestampOffset_=function(e){return null!==e&&("main"===this.loaderType_&&e!==this.sourceUpdater_.videoTimestampOffset()||!this.audioDisabled_&&e!==this.sourceUpdater_.audioTimestampOffset())},i.trueSegmentStart_=function(e){var t=e.currentStart,i=e.playlist,n=e.mediaIndex,r=e.firstVideoFrameTimeForData,a=e.currentVideoTimestampOffset,s=e.useVideoTimingInfo,o=e.videoTimingInfo,u=e.audioTimingInfo;if(void 0!==t)return t;if(!s)return u.start;var l=i.segments[n-1];return 0!==n&&l&&void 0!==l.start&&l.end===r+a?o.start:r},i.waitForAppendsToComplete_=function(e){var t=this.getCurrentMediaInfo_(e);if(!t)return this.error({message:"No starting media returned, likely due to an unsupported media format.",blacklistDuration:1/0}),void this.trigger("error");var i=t.hasAudio,n=t.hasVideo,r=t.isMuxed,a="main"===this.loaderType_&&n,s=!this.audioDisabled_&&i&&!r;if(e.waitingOnAppends=0,!e.hasAppendedData_)return e.timingInfo||"number"!=typeof e.timestampOffset||(this.isPendingTimestampOffset_=!0),e.timingInfo={start:0},e.waitingOnAppends++,this.isPendingTimestampOffset_||(this.updateSourceBufferTimestampOffset_(e),this.processMetadataQueue_()),void this.checkAppendsDone_(e);a&&e.waitingOnAppends++,s&&e.waitingOnAppends++,a&&this.sourceUpdater_.videoQueueCallback(this.checkAppendsDone_.bind(this,e)),s&&this.sourceUpdater_.audioQueueCallback(this.checkAppendsDone_.bind(this,e))},i.checkAppendsDone_=function(e){this.checkForAbort_(e.requestId)||(e.waitingOnAppends--,0===e.waitingOnAppends&&this.handleAppendsDone_())},i.checkForIllegalMediaSwitch=function(e){var t=function(e,t,i){return"main"===e&&t&&i?i.hasAudio||i.hasVideo?t.hasVideo&&!i.hasVideo?"Only audio found in segment when we expected video. We can't switch to audio only from a stream that had video. To get rid of this message, please add codec information to the manifest.":!t.hasVideo&&i.hasVideo?"Video found in segment when we expected only audio. We can't switch to a stream with video from an audio only stream. To get rid of this message, please add codec information to the manifest.":null:"Neither audio nor video found in segment.":null}(this.loaderType_,this.getCurrentMediaInfo_(),e);return!!t&&(this.error({message:t,blacklistDuration:1/0}),this.trigger("error"),!0)},i.updateSourceBufferTimestampOffset_=function(e){if(null!==e.timestampOffset&&"number"==typeof e.timingInfo.start&&!e.changedTimestampOffset&&"main"===this.loaderType_){var t=!1;e.timestampOffset-=e.timingInfo.start,e.changedTimestampOffset=!0,e.timestampOffset!==this.sourceUpdater_.videoTimestampOffset()&&(this.sourceUpdater_.videoTimestampOffset(e.timestampOffset),t=!0),e.timestampOffset!==this.sourceUpdater_.audioTimestampOffset()&&(this.sourceUpdater_.audioTimestampOffset(e.timestampOffset),t=!0),t&&this.trigger("timestampoffset")}},i.updateTimingInfoEnd_=function(e){e.timingInfo=e.timingInfo||{};var t=this.getMediaInfo_(),i="main"===this.loaderType_&&t&&t.hasVideo&&e.videoTimingInfo?e.videoTimingInfo:e.audioTimingInfo;i&&(e.timingInfo.end="number"==typeof i.end?i.end:i.start+e.duration)},i.handleAppendsDone_=function(){if(this.pendingSegment_&&this.trigger("appendsdone"),!this.pendingSegment_)return this.state="READY",void(this.paused()||this.monitorBuffer_());var e=this.pendingSegment_;this.updateTimingInfoEnd_(e),this.shouldSaveSegmentTimingInfo_&&this.syncController_.saveSegmentTimingInfo({segmentInfo:e,shouldSaveTimelineMapping:"main"===this.loaderType_});var t=Qs(e,this.sourceType_);if(t&&("warn"===t.severity?Yr.log.warn(t.message):this.logger_(t.message)),this.recordThroughput_(e),this.pendingSegment_=null,this.state="READY",!e.isSyncRequest||(this.trigger("syncinfoupdate"),e.hasAppendedData_)){this.logger_("Appended "+Ys(e)),this.addSegmentMetadataCue_(e),this.fetchAtBuffer_=!0,this.currentTimeline_!==e.timeline&&(this.timelineChangeController_.lastTimelineChange({type:this.loaderType_,from:this.currentTimeline_,to:e.timeline}),"main"!==this.loaderType_||this.audioDisabled_||this.timelineChangeController_.lastTimelineChange({type:"audio",from:this.currentTimeline_,to:e.timeline})),this.currentTimeline_=e.timeline,this.trigger("syncinfoupdate");var i=e.segment;if(i.end&&this.currentTime_()-i.end>3*e.playlist.targetDuration)this.resetEverything();else null!==this.mediaIndex&&this.trigger("bandwidthupdate"),this.trigger("progress"),this.mediaIndex=e.mediaIndex,this.partIndex=e.partIndex,this.isEndOfStream_(e.mediaIndex,e.playlist,e.partIndex)&&this.endOfStream(),this.trigger("appended"),e.hasAppendedData_&&this.mediaAppends++,this.paused()||this.monitorBuffer_()}else this.logger_("Throwing away un-appended sync request "+Ys(e))},i.recordThroughput_=function(e){if(e.duration<1/60)this.logger_("Ignoring segment's throughput because its duration of "+e.duration+" is less than the min to record "+1/60);else{var t=this.throughput.rate,i=Date.now()-e.endOfAllRequests+1,n=Math.floor(e.byteLength/i*8*1e3);this.throughput.rate+=(n-t)/++this.throughput.count}},i.addSegmentMetadataCue_=function(e){if(this.segmentMetadataTrack_){var t=e.segment,i=t.start,n=t.end;if(Ws(i)&&Ws(n)){Gs(i,n,this.segmentMetadataTrack_);var r=A.default.WebKitDataCue||A.default.VTTCue,a={custom:t.custom,dateTimeObject:t.dateTimeObject,dateTimeString:t.dateTimeString,bandwidth:e.playlist.attributes.BANDWIDTH,resolution:e.playlist.attributes.RESOLUTION,codecs:e.playlist.attributes.CODECS,byteLength:e.byteLength,uri:e.uri,timeline:e.timeline,playlist:e.playlist.id,start:i,end:n},s=new r(i,n,JSON.stringify(a));s.value=a,this.segmentMetadataTrack_.addCue(s)}}},t}(Yr.EventTarget);function Js(){}var Zs,eo=function(e){return"string"!=typeof e?e:e.replace(/./,(function(e){return e.toUpperCase()}))},to=["video","audio"],io=function(e,t){var i=t[e+"Buffer"];return i&&i.updating||t.queuePending[e]},no=function e(t,i){if(0!==i.queue.length){var n=0,r=i.queue[n];if("mediaSource"!==r.type){if("mediaSource"!==t&&i.ready()&&"closed"!==i.mediaSource.readyState&&!io(t,i)){if(r.type!==t){if(null===(n=function(e,t){for(var i=0;i=e.playlist.segments.length){e=null;break}e=this.generateSegmentInfo_({playlist:e.playlist,mediaIndex:e.mediaIndex+1,startOfSegment:e.startOfSegment+e.duration,isSyncRequest:e.isSyncRequest})}return e},i.stopForError=function(e){this.error(e),this.state="READY",this.pause(),this.trigger("error")},i.segmentRequestFinished_=function(e,t,i){var n=this;if(this.subtitlesTrack_){if(this.saveTransferStats_(t.stats),!this.pendingSegment_)return this.state="READY",void(this.mediaRequestsAborted+=1);if(e)return e.code===vs&&this.handleTimeout_(),e.code===ys?this.mediaRequestsAborted+=1:this.mediaRequestsErrored+=1,void this.stopForError(e);var r=this.pendingSegment_;this.saveBandwidthRelatedStats_(r.duration,t.stats),this.state="APPENDING",this.trigger("appending");var a=r.segment;if(a.map&&(a.map.bytes=t.map.bytes),r.bytes=t.bytes,"function"!=typeof A.default.WebVTT&&this.subtitlesTrack_&&this.subtitlesTrack_.tech_){var s,o=function(){n.subtitlesTrack_.tech_.off("vttjsloaded",s),n.stopForError({message:"Error loading vtt.js"})};return s=function(){n.subtitlesTrack_.tech_.off("vttjserror",o),n.segmentRequestFinished_(e,t,i)},this.state="WAITING_ON_VTTJS",this.subtitlesTrack_.tech_.one("vttjsloaded",s),void this.subtitlesTrack_.tech_.one("vttjserror",o)}a.requested=!0;try{this.parseVTTCues_(r)}catch(e){return void this.stopForError({message:e.message})}if(this.updateTimeMapping_(r,this.syncController_.timelines[r.timeline],this.playlist_),r.cues.length?r.timingInfo={start:r.cues[0].startTime,end:r.cues[r.cues.length-1].endTime}:r.timingInfo={start:r.startOfSegment,end:r.startOfSegment+r.duration},r.isSyncRequest)return this.trigger("syncinfoupdate"),this.pendingSegment_=null,void(this.state="READY");r.byteLength=r.bytes.byteLength,this.mediaSecondsLoaded+=a.duration,r.cues.forEach((function(e){n.subtitlesTrack_.addCue(n.featuresNativeTextTracks_?new A.default.VTTCue(e.startTime,e.endTime,e.text):e)})),function(e){var t=e.cues;if(t)for(var i=0;i1&&n.push(t[a]);n.length&&n.forEach((function(t){return e.removeCue(t)}))}}(this.subtitlesTrack_),this.handleAppendsDone_()}else this.state="READY"},i.handleData_=function(){},i.updateTimingInfoEnd_=function(){},i.parseVTTCues_=function(e){var t,i=!1;"function"==typeof A.default.TextDecoder?t=new A.default.TextDecoder("utf8"):(t=A.default.WebVTT.StringDecoder(),i=!0);var n=new A.default.WebVTT.Parser(A.default,A.default.vttjs,t);if(e.cues=[],e.timestampmap={MPEGTS:0,LOCAL:0},n.oncue=e.cues.push.bind(e.cues),n.ontimestampmap=function(t){e.timestampmap=t},n.onparsingerror=function(e){Yr.log.warn("Error encountered when parsing cues: "+e.message)},e.segment.map){var r=e.segment.map.bytes;i&&(r=bo(r)),n.parse(r)}var a=e.bytes;i&&(a=bo(a)),n.parse(a),n.flush()},i.updateTimeMapping_=function(e,t,i){var n=e.segment;if(t)if(e.cues.length){var r=e.timestampmap,a=r.MPEGTS/E.ONE_SECOND_IN_TS-r.LOCAL+t.mapping;if(e.cues.forEach((function(e){e.startTime+=a,e.endTime+=a})),!i.syncInfo){var s=e.cues[0].startTime,o=e.cues[e.cues.length-1].startTime;i.syncInfo={mediaSequence:i.mediaSequence+e.mediaIndex,time:Math.min(s,o-n.duration)}}}else n.empty=!0},t}($s),Eo=function(e,t){for(var i=e.cues,n=0;n=r.adStartTime&&t<=r.adEndTime)return r}return null},wo=[{name:"VOD",run:function(e,t,i,n,r){if(i!==1/0){return{time:0,segmentIndex:0,partIndex:null}}return null}},{name:"ProgramDateTime",run:function(e,t,i,n,r){if(!Object.keys(e.timelineToDatetimeMappings).length)return null;var a=null,s=null,o=aa(t);r=r||0;for(var u=0;u=c)&&(s=c,a={time:h,segmentIndex:l.segmentIndex,partIndex:l.partIndex})}}return a}},{name:"Discontinuity",run:function(e,t,i,n,r){var a=null;if(r=r||0,t.discontinuityStarts&&t.discontinuityStarts.length)for(var s=null,o=0;o=h)&&(s=h,a={time:d.time,segmentIndex:u,partIndex:null})}}return a}},{name:"Playlist",run:function(e,t,i,n,r){return t.syncInfo?{time:t.syncInfo.time,segmentIndex:t.syncInfo.mediaSequence-t.mediaSequence,partIndex:null}:null}}],Co=function(e){function t(t){var i;return(i=e.call(this)||this).timelines=[],i.discontinuities=[],i.timelineToDatetimeMappings={},i.logger_=$r("SyncController"),i}P.default(t,e);var i=t.prototype;return i.getSyncPoint=function(e,t,i,n){var r=this.runStrategies_(e,t,i,n);return r.length?this.selectSyncPoint_(r,{key:"time",value:n}):null},i.getExpiredTime=function(e,t){if(!e||!e.segments)return null;var i=this.runStrategies_(e,t,e.discontinuitySequence,0);if(!i.length)return null;var n=this.selectSyncPoint_(i,{key:"segmentIndex",value:0});return n.segmentIndex>0&&(n.time*=-1),Math.abs(n.time+ha({defaultDuration:e.targetDuration,durationList:e.segments,startIndex:n.segmentIndex,endIndex:0}))},i.runStrategies_=function(e,t,i,n){for(var r=[],a=0;a=0;i--){var n=e.segments[i];if(n&&void 0!==n.start){t.syncInfo={mediaSequence:e.mediaSequence+i,time:n.start},this.logger_("playlist refresh sync: [time:"+t.syncInfo.time+", mediaSequence: "+t.syncInfo.mediaSequence+"]"),this.trigger("syncinfoupdate");break}}},i.setDateTimeMappingForStart=function(e){if(this.timelineToDatetimeMappings={},e.segments&&e.segments.length&&e.segments[0].dateTimeObject){var t=e.segments[0],i=t.dateTimeObject.getTime()/1e3;this.timelineToDatetimeMappings[t.timeline]=-i}},i.saveSegmentTimingInfo=function(e){var t=e.segmentInfo,i=e.shouldSaveTimelineMapping,n=this.calculateSegmentTimeMapping_(t,t.timingInfo,i),r=t.segment;n&&(this.saveDiscontinuitySyncInfo_(t),t.playlist.syncInfo||(t.playlist.syncInfo={mediaSequence:t.playlist.mediaSequence+t.mediaIndex,time:r.start}));var a=r.dateTimeObject;r.discontinuity&&i&&a&&(this.timelineToDatetimeMappings[r.timeline]=-a.getTime()/1e3)},i.timestampOffsetForTimeline=function(e){return void 0===this.timelines[e]?null:this.timelines[e].time},i.mappingForTimeline=function(e){return void 0===this.timelines[e]?null:this.timelines[e].mapping},i.calculateSegmentTimeMapping_=function(e,t,i){var n,r,a=e.segment,s=e.part,o=this.timelines[e.timeline];if("number"==typeof e.timestampOffset)o={time:e.startOfSegment,mapping:e.startOfSegment-t.start},i&&(this.timelines[e.timeline]=o,this.trigger("timestampoffset"),this.logger_("time mapping for timeline "+e.timeline+": [time: "+o.time+"] [mapping: "+o.mapping+"]")),n=e.startOfSegment,r=t.end+o.mapping;else{if(!o)return!1;n=t.start+o.mapping,r=t.end+o.mapping}return s&&(s.start=n,s.end=r),(!a.start||no){var u=void 0;u=s<0?i.start-ha({defaultDuration:t.targetDuration,durationList:t.segments,startIndex:e.mediaIndex,endIndex:r}):i.end+ha({defaultDuration:t.targetDuration,durationList:t.segments,startIndex:e.mediaIndex+1,endIndex:r}),this.discontinuities[a]={time:u,accuracy:o}}}},i.dispose=function(){this.trigger("dispose"),this.off()},t}(Yr.EventTarget),Ao=function(e){function t(){var t;return(t=e.call(this)||this).pendingTimelineChanges_={},t.lastTimelineChanges_={},t}P.default(t,e);var i=t.prototype;return i.clearPendingTimelineChange=function(e){this.pendingTimelineChanges_[e]=null,this.trigger("pendingtimelinechange")},i.pendingTimelineChange=function(e){var t=e.type,i=e.from,n=e.to;return"number"==typeof i&&"number"==typeof n&&(this.pendingTimelineChanges_[t]={type:t,from:i,to:n},this.trigger("pendingtimelinechange")),this.pendingTimelineChanges_[t]},i.lastTimelineChange=function(e){var t=e.type,i=e.from,n=e.to;return"number"==typeof i&&"number"==typeof n&&(this.lastTimelineChanges_[t]={type:t,from:i,to:n},delete this.pendingTimelineChanges_[t],this.trigger("timelinechange")),this.lastTimelineChanges_[t]},i.dispose=function(){this.trigger("dispose"),this.pendingTimelineChanges_={},this.lastTimelineChanges_={},this.off()},t}(Yr.EventTarget),ko=as(ss(os((function(){function e(e,t,i){return e(i={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==t&&i.path)}},i.exports),i.exports}var t=e((function(e){function t(e,t){for(var i=0;i-1},t.trigger=function(e){var t=this.listeners[e];if(t)if(2===arguments.length)for(var i=t.length,n=0;n>7))^e]=e;for(t=i=0;!h[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,h[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,d[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),d[e]=d[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),d=[];for(this._key=[l,d],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],d[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,d=this._key[1],h=e^d[0],c=n^d[1],f=i^d[2],p=t^d[3],m=d.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^d[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&h]^d[g+1],u=v[f>>>24]^y[p>>16&255]^b[h>>8&255]^T[255&c]^d[g+2],p=v[p>>>24]^y[h>>16&255]^b[c>>8&255]^T[255&f]^d[g+3],g+=4,h=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[h>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^d[g++],s=h,h=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),d=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(d,d+a),i,n,l)),d=a;d>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},xo=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Po=function(e,t){t.activePlaylistLoader=e,e.load()},Lo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;xo(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),xo(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",Lo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",Lo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,d=o.logger_,h=t.masterPlaylistLoader,c=ba(h.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=h.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(d("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Oa(m.playlists[0],i,a):m.resolvedUri?new Oa(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,h):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Io(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",Lo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,d=u.tracks,h=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Oa(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,h)}else"vhs-json"===r&&(m=new Oa(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===d[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;d[f]=g}}a.on("error",Lo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var d=i.options_.vhs&&i.options_.vhs.captionServices||{},h={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(d[h.instreamId]&&(h=Yr.mergeOptions(h,d[h.instreamId])),void 0===h.default&&delete h.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:h.instreamId,kind:"captions",default:h.default,language:h.language,label:h.label},!1).track;s[u]=c}}}}},Uo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var d=0;d1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var d=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+h+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,d=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+d+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var h=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=h;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Os(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Os(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Us(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Os(t.masterPlaylistLoader_.master,r),d=Us(l);if(l.audio||l.video){if(d!==a&&u.push('codec count "'+d+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var h=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;h&&s&&h.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+h.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Oa,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Os(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var d=n.createElement&&n.createElement("textarea"),h={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=h[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,d.innerHTML=o,o=d.textContent,d.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rh&&(d=d<0?-1:1,d*=Math.ceil(h/l)*l),s<0&&(d+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,d)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:3,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:192,CACHE_WITH_PLAY_SIGN:193,CACHE_WITH_NOPLAY_SIGN:194,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(e){var t={options:{sampleRate:e.sampleRate||r.DEFAULT_SAMPLERATE,appendType:e.appendType||r.APPEND_TYPE_STREAM,playMode:e.playMode||r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:e.sampleRate}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){t.playTimestamp=0,t.playStartTime=0},setOnLoadCache:function(e){t.onLoadCache=e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.sourceList[e],t.sourceList[i],t.gainNode,t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;u0&&s()-this._start_time>=this._now_seg_dur&&(s(),this._start_time,this._now_seg_dur,this._start_time=-1,this._now_seg_dur=-1),s(),this._start_time<0)if(new Date,null!==this._pcm_array_buf&&this._pcm_array_buf.length>this._push_start_idx){this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this._start_time=s(),this._active_node.start(0)}else setTimeout(this.readingLoopWithF32,1)}}])&&n(t.prototype,i),o&&n(t,o),e}();i.AudioPcmPlayer=o},{"../consts":52}],55:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,d=new Uint8Array(u),h=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()}}},{"../consts":52}],56:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.AVSniffPtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.AVSniffPtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,d=l?r:parseInt(t*u),h=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=d||this.CanvasObj.offsetHeight!=h){var c=parseInt((this.canvasBox.offsetHeight-h)/2),f=parseInt((this.canvasBox.offsetWidth-d)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=d+"px",this.CanvasObj.style.height=h+"px"}return this.isCheckDisplay=!0,[d,h]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var d=Module.HEAPU8.subarray(l,l+10),h=0;h100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var d=this,h=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(h),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(h),h=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){d.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n,r){var a=this._ptsFixed2(r);if(this.audioWAudio&&!1===this.muted){var s=new Uint8Array(7+i),o=Module.HEAPU8.subarray(e,e+7);s.set(o,0);var u=Module.HEAPU8.subarray(t,t+i);s.set(u,7);var l={pts:a,data:s};this.audioWAudio.addSample(l),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.AVSniffPtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),Module.cwrap("releaseHttpFLV","number",["number"])(this.AVSniffPtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t,i,n,a=this;this.workerFetch=new Worker((t=function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]],window.URL.createObjectURL(new Blob(n,{type:"text/javascript"})))),this.workerFetch.onmessage=function(e){a._workerFetch_onmessage(e,a)},this.workerFetch,this.AVSniffPtr=Module.cwrap("AVSniffHttpFlvInit","number",["string","string"])("base64:QXV0aG9yOmNoYW5neWFubG9uZ3xudW1iZXJ3b2xmLEdpdGh1YjpodHRwczovL2dpdGh1Yi5jb20vbnVtYmVyd29sZixFbWFpbDpwb3JzY2hlZ3QyM0Bmb3htYWlsLmNvbSxRUTo1MzEzNjU4NzIsSG9tZVBhZ2U6aHR0cDovL3h2aWRlby52aWRlbyxEaXNjb3JkOm51bWJlcndvbGYjODY5NCx3ZWNoYXI6bnVtYmVyd29sZjExLEJlaWppbmcsV29ya0luOkJhaWR1","0.0.0"),this.AVSniffPtr,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.AVSniffPtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}();i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":64,"../demuxer/bufferFrame":65,"../render-engine/webgl-420p":77,"../version":80,"./audio-core":53,"./audio-native-core":54,"./av-common":55,"./cache":59,"./cacheYuv":60}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==d.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&(this.isPlaying=!0);var t=0,i=0,n=0;this.config.playMode===d.PLAYER_MODE_NOTIME_LIVE?this.playFrameInterval=window.setInterval((function(){if(e._videoQueue.length>0){var t=e._videoQueue.shift();t.pts,o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height)}}),1e3*this.frameDur):this.playFrameInterval=window.setInterval((function(){if(i=u.GetMsTime(),e._videoQueue.length>0&&i-t>=e.frameTime-n){var r=e._videoQueue.shift(),a=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(a=1e3*(r.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),t=i,u.GetMsTime(),e.playPTS=Math.max(r.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>r.pts)return void(n=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),n=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(r.line1,r.height,r.data_y,r.data_u,r.data_v),r.pts,o.renderFrame(e.yuv,r.data_y,r.data_u,r.data_v,r.line1,r.height),e.onPlayingTime&&e.onPlayingTime(r.pts),!e.isNewSeek&&e.audioWAudio&&(a<0&&-1*a<=e.frameTime||a>=0)){if(e.config.playMode===d.PLAYER_MODE_VOD)if(r.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;n=u.GetMsTime()-i}else!e.isNewSeek&&e.audioWAudio&&(a<0&&e.frameTime,n=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause()}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=50}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,d=l?r:parseInt(t*u),h=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=d||this.canvas.offsetHeight!=h){var c=parseInt((this.canvasBox.offsetHeight-h)/2),f=parseInt((this.canvasBox.offsetWidth-d)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=d+"px",this.canvas.style.height=h+"px"}return this.isCheckDisplay=!0,[d,h]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===d.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=50&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=window.setInterval((function(){t._videoQueue.length,t._videoQueue.length>=50&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),!1===t.reFull?t.play():t.reFull=!1,window.clearInterval(i),i=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(this.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===d.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===d.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==this.audioWAudio&&null!==this.audioWAudio&&this.config.ignoreAudio<1){var n=0;this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===d.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===d.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===d.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===d.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var h=this;this._createYUVCanvas(),d.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=d.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:d.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(h.retryAuSampleNo,h.retryAuSampleNo<=5){h.pause(),h.onLoadCache&&h.onLoadCache();var e=window.setInterval((function(){return h.retryAuSampleNo,h.audioWAudio.sampleQueue.length,h.audioWAudio.sampleQueue.length>2?(h.onLoadCacheFinshed&&h.onLoadCacheFinshed(),h.play(),h.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(h.retryAuSampleNo+=1,h.retryAuSampleNo>5?(h.play(),h.onLoadCacheFinshed&&h.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))):this.audioNone=!0,this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s){var o=this._ptsFixed2(a),u=Module.HEAPU8.subarray(e,e+t),l=new Uint8Array(u);this.bufObject.appendFrameWithDts(o,s,l,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(o,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n,r){var a=this._ptsFixed2(r);if(this.audioWAudio){var s=new Uint8Array(7+i),o=Module.HEAPU8.subarray(e,e+7);s.set(o,0);var u=Module.HEAPU8.subarray(t,t+i);s.set(u,7),this.bufObject.appendFrame(a,s,!1,!0),this.bufLastADTS=Math.max(a,this.bufLastADTS),this.aCachePTS=Math.max(a,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_decVFrameIntervalFunc",value:function(){var e=this;null==this.decVFrameInterval&&(this.decVFrameInterval=window.setInterval((function(){if(e._videoQueue.length,e.playVPipe.length,e._videoQueue.length<50&&e.playVPipe.length>0){var t=e.playVPipe.shift(),i=t.data,n=Module._malloc(i.length);Module.HEAP8.set(i,n);var r=parseInt(1e3*t.pts,10),a=parseInt(1e3*t.dts,10);e.yuvMaxTime=Math.max(t.pts,e.yuvMaxTime),Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(e.corePtr,n,i.length,r,a,e.frameCallTag),Module._free(n),n=null}}),10))}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!(!1===this.openFrameCall||l!==this.frameCallTag||u>this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var d=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var h=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(h),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(d<=0||u>this._videoQueue[d-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":64,"../demuxer/bufferFrame":65,"../render-engine/webgl-420p":77,"../version":80,"./audio-core":53,"./audio-native-core":54,"./av-common":55,"./cache":59,"./cacheYuv":60}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.AVSniffPtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.AVSniffPtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,d=l?r:parseInt(t*u),h=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=d||this.CanvasObj.offsetHeight!=h){var c=parseInt((this.canvasBox.offsetHeight-h)/2),f=parseInt((this.canvasBox.offsetWidth-d)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=d+"px",this.CanvasObj.style.height=h+"px"}return this.isCheckDisplay=!0,[d,h]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,d){for(var h=Module.HEAPU8.subarray(d,d+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),d=new Uint8Array(l),h=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(h),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:d,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(h),h=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n,r){var a=this._ptsFixed2(r);if(this.audioWAudio){var s=new Uint8Array(7+i),o=Module.HEAPU8.subarray(e,e+7);s.set(o,0);var u=Module.HEAPU8.subarray(t,t+i);s.set(u,7);var l={pts:a,data:s};this.audioWAudio.addSample(l),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.AVSniffPtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),Module.cwrap("releaseHttpFLV","number",["number"])(this.AVSniffPtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t,i,n,a=this;this.workerFetch=new Worker((t=function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]],window.URL.createObjectURL(new Blob(n,{type:"text/javascript"})))),this.workerFetch.onmessage=function(e){a._workerFetch_onmessage(e,a)},this.workerFetch,this.AVSniffPtr=Module.cwrap("AVSniffHttpFlvInit","number",["string","string"])("base64:QXV0aG9yOmNoYW5neWFubG9uZ3xudW1iZXJ3b2xmLEdpdGh1YjpodHRwczovL2dpdGh1Yi5jb20vbnVtYmVyd29sZixFbWFpbDpwb3JzY2hlZ3QyM0Bmb3htYWlsLmNvbSxRUTo1MzEzNjU4NzIsSG9tZVBhZ2U6aHR0cDovL3h2aWRlby52aWRlbyxEaXNjb3JkOm51bWJlcndvbGYjODY5NCx3ZWNoYXI6bnVtYmVyd29sZjExLEJlaWppbmcsV29ya0luOkJhaWR1","0.0.0"),this.AVSniffPtr,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.AVSniffPtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}();i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":64,"../demuxer/bufferFrame":65,"../render-engine/webgl-420p":77,"../version":80,"./audio-core":53,"./audio-native-core":54,"./av-common":55,"./cache":59,"./cacheYuv":60}],59:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":60}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":61}],63:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var d=parseInt((t.canvasBox.offsetHeight-l)/2),h=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=d+"px",t.canvas.style.marginLeft=h+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,d.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,d){var h=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(h),m=new Uint8Array(c),g=new Uint8Array(f),_=1*d/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(h),h=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":77,"../version":80,"./audio-core":53,"./av-common":55,"./cache":59,"./cacheYuv":60}],64:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":65}],65:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,d=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(d.pts,d.data,!0,d.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,d)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var h=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),d&&n(t,d),e}();i.M3u8=d},{"../consts":52,"../decoder/hevc-imp":62,"./buffer":64,"./bufferFrame":65,"./m3u8base":67,"./mpegts/mpeg.js":71}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("//"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"//"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI="";for(var y=0;y<_.length;y++)this._preURI+=_[y];this._preURI+=v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var b={type:this._type,duration:-1};this.onFinished(b)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],68:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},d.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},d.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);d[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(d);var _=e.setStartCode(d.subarray(0,e.naluHeader.vps.length),!0);if(l(_),d[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&d[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&d[y]===e.naluHeader.pps[4]&&78===d[b]){d[e.naluHeader.vps.length+4],e.naluHeader.sps[4],d[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],d[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&d[4]===e.naluHeader.sei[4]){var E=d.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(d=d.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===d[4]){d=e.setStartCode(d,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},d.prototype.finishBuffer=function(){this.mp4boxfile.flush()},d.prototype.play=function(){},d.prototype.getVideoCoder=function(){return this.videoCodec},d.prototype.getDurationMs=function(){return this.durationMs},d.prototype.getFPS=function(){return this.fps},d.prototype.getSampleRate=function(){return this.sampleRate},d.prototype.getSize=function(){return this.size},d.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},d.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},d.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},d.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],71:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var d=Module.cwrap("getAudioCodecID","number",[])();d>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[d],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var h=Module.cwrap("getVideoCodecID","number",[])();h>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[h]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var d=Module.cwrap("getVLCLen","number",[])(),h=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(h,h+d);if(this.vlcLayer.vlc=new Uint8Array(d),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),d={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,d}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":69,"./decoder/aac":70}],72:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":62,"./buffer":64,"./mpegts/mpeg.js":71}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===m.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=_.setupCanvas(e,{preserveDrawingBuffer:!1})),_.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===m.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===m.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==m.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==m.PLAYER_IN_TYPE_TS||t.configFormat.type==m.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==m.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===m.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===m.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==m.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==m.PLAYER_IN_TYPE_TS||this.configFormat.type==m.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==m.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==m.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==m.PLAYER_IN_TYPE_TS||e.configFormat.type==m.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==m.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_makeMP4Player",value:function(){return this.mediaExtProtocol===m.URI_PROTOCOL_WEBSOCKET_DESC?(this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===m.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==m.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==m.PLAYER_IN_TYPE_TS||this.configFormat.type==m.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==m.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===m.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var a=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||m.CODEC_H265,this.playParam,(this.configFormat.type==m.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==m.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==m.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=m.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),d=n.width/n.height,h=this.configFormat.playerW/this.configFormat.playerH;d>h?l.style.height=this.configFormat.playerW/d+"px":d0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,o={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new s.CNativeCore(o),this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=y(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=m.PLAYER_MODE_NOTIME_LIVE),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===m.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=m.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=m.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===m.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===m.PLAYER_IN_TYPE_FLV?i._flvJsPlayer():i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,d=function e(s){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,s>=m.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(s+1)}}),m.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===m.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(o),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new l.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=m.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=m.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvFlvjsCore(i),this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),!t.player.duration||NaN===t.player.duration||t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=m.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=m.PLAYER_MODE_VOD),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,m.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null)}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&n(i.prototype,b),T&&n(i,T),e}();i.H265webjs=b,t.new265webjs=function(e,t){return new b(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":55,"./decoder/c-httplive-core":56,"./decoder/c-native-core":57,"./decoder/c-wslive-core":58,"./decoder/cache":59,"./decoder/player-core":63,"./demuxer/m3u8":66,"./demuxer/mp4":68,"./demuxer/mpegts/mpeg.js":71,"./demuxer/ts":72,"./native/mp4-player":74,"./native/nv-flvjs-core":75,"./native/nv-videojs-core":76,"./render-engine/webgl-420p":77,"./utils/static-mem":78,"./utils/ui/ui":79}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":55,"../version":80,"flv.js":33}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"getSize",value:function(){return{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":80,"video.js":47}],77:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var d=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(d);var h=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,h),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(d,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":55}],78:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],79:[function(e,t,i){"use strict";function n(e,t){for(var i=0;ih&&(u-=h,u-=h,u-=c(2))}return Number(u)};i.numberToBytes=function(e,t){var i=(void 0===t?{}:t).le,n=void 0!==i&&i;("bigint"!=typeof e&&"number"!=typeof e||"number"==typeof e&&e!=e)&&(e=0),e=c(e);for(var r=s(e),a=new Uint8Array(new ArrayBuffer(r)),o=0;o=t.length&&u.call(t,(function(t,i){return t===(o[i]?o[i]&e[a+i]:e[a+i])}))};i.sliceBytes=function(e,t,i){return Uint8Array.prototype.slice?Uint8Array.prototype.slice.call(e,t,i):new Uint8Array(Array.prototype.slice.call(e,t,i))};i.reverseBytes=function(e){return e.reverse?e.reverse():Array.prototype.reverse.call(e)}},{"@babel/runtime/helpers/interopRequireDefault":6,"global/window":35}],10:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.getHvcCodec=i.getAvcCodec=i.getAv1Codec=void 0;var n=e("./byte-helpers.js");i.getAv1Codec=function(e){var t,i="",r=e[1]>>>3,a=31&e[1],s=e[2]>>>7,o=(64&e[2])>>6,u=(32&e[2])>>5,l=(16&e[2])>>4,h=(8&e[2])>>3,d=(4&e[2])>>2,c=3&e[2];return i+=r+"."+(0,n.padStart)(a,2,"0"),0===s?i+="M":1===s&&(i+="H"),t=2===r&&o?u?12:10:o?10:8,i+="."+(0,n.padStart)(t,2,"0"),i+="."+l,i+="."+h+d+c};i.getAvcCodec=function(e){return""+(0,n.toHexString)(e[1])+(0,n.toHexString)(252&e[2])+(0,n.toHexString)(e[3])};i.getHvcCodec=function(e){var t="",i=e[1]>>6,r=31&e[1],a=(32&e[1])>>5,s=e.subarray(2,6),o=e.subarray(6,12),u=e[12];1===i?t+="A":2===i?t+="B":3===i&&(t+="C"),t+=r+".";var l=parseInt((0,n.toBinaryString)(s).split("").reverse().join(""),2);l>255&&(l=parseInt((0,n.toBinaryString)(s),2)),t+=l.toString(16)+".",t+=0===a?"L":"H",t+=u;for(var h="",d=0;d=1)return 71===e[0];for(var t=0;t+1880}},{"./byte-helpers.js":9,"./ebml-helpers.js":14,"./id3-helpers.js":15,"./mp4-helpers.js":17,"./nal-helpers.js":18}],13:[function(e,t,i){(function(n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(i,"__esModule",{value:!0}),i.default=function(e){for(var t=(s=e,a.default.atob?a.default.atob(s):n.from(s,"base64").toString("binary")),i=new Uint8Array(t.length),r=0;r=i.length)return i.length;var a=o(i,r,!1);if((0,n.bytesMatch)(t.bytes,a.bytes))return r;var s=o(i,r+a.length);return e(t,i,r+s.length+s.value+a.length)},h=function e(t,i){i=function(e){return Array.isArray(e)?e.map((function(e){return u(e)})):[u(e)]}(i),t=(0,n.toUint8)(t);var r=[];if(!i.length)return r;for(var a=0;at.length?t.length:d+h.value,f=t.subarray(d,c);(0,n.bytesMatch)(i[0],s.bytes)&&(1===i.length?r.push(f):r=r.concat(e(f,i.slice(1)))),a+=s.length+h.length+f.length}return r};i.findEbml=h;var d=function(e,t,i,r){var s;"group"===t&&((s=h(e,[a.BlockDuration])[0])&&(s=1/i*(s=(0,n.bytesToNumber)(s))*i/1e3),e=h(e,[a.Block])[0],t="block");var u=new DataView(e.buffer,e.byteOffset,e.byteLength),l=o(e,0),d=u.getInt16(l.length,!1),c=e[l.length+2],f=e.subarray(l.length+3),p=1/i*(r+d)*i/1e3,m={duration:s,trackNumber:l.value,keyframe:"simple"===t&&c>>7==1,invisible:(8&c)>>3==1,lacing:(6&c)>>1,discardable:"simple"===t&&1==(1&c),frames:[],pts:p,dts:p,timestamp:d};if(!m.lacing)return m.frames.push(f),m;var g=f[0]+1,_=[],v=1;if(2===m.lacing)for(var y=(f.length-v)/g,b=0;b>>3).toString():"mp4a.40.2":/^A_AC3/.test(s.rawCodec)?o="ac-3":/^A_PCM/.test(s.rawCodec)?o="pcm":/^A_MS\/ACM/.test(s.rawCodec)?o="speex":/^A_EAC3/.test(s.rawCodec)?o="ec-3":/^A_VORBIS/.test(s.rawCodec)?o="vorbis":/^A_FLAC/.test(s.rawCodec)?o="flac":/^A_OPUS/.test(s.rawCodec)&&(o="opus");s.codec=o,t.push(s)}})),t.sort((function(e,t){return e.number-t.number}))):t};i.parseTracks=c;i.parseData=function(e,t){var i=[],r=h(e,[a.Segment])[0],s=h(r,[a.SegmentInfo,a.TimestampScale])[0];s=s&&s.length?(0,n.bytesToNumber)(s):1e6;var o=h(r,[a.Cluster]);return t||(t=c(r)),o.forEach((function(e,t){var r=h(e,[a.SimpleBlock]).map((function(e){return{type:"simple",data:e}})),o=h(e,[a.BlockGroup]).map((function(e){return{type:"group",data:e}})),u=h(e,[a.Timestamp])[0]||0;u&&u.length&&(u=(0,n.bytesToNumber)(u)),r.concat(o).sort((function(e,t){return e.data.byteOffset-t.data.byteOffset})).forEach((function(e,t){var n=d(e.data,e.type,s,u);i.push(n)}))})),{tracks:t,blocks:i}}},{"./byte-helpers":9,"./codec-helpers.js":10}],15:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.getId3Offset=i.getId3Size=void 0;var n=e("./byte-helpers.js"),r=(0,n.toUint8)([73,68,51]),a=function(e,t){void 0===t&&(t=0);var i=(e=(0,n.toUint8)(e))[t+5],r=e[t+6]<<21|e[t+7]<<14|e[t+8]<<7|e[t+9];return(16&i)>>4?r+20:r+10};i.getId3Size=a;i.getId3Offset=function e(t,i){return void 0===i&&(i=0),(t=(0,n.toUint8)(t)).length-i<10||!(0,n.bytesMatch)(t,r,{offset:i})?i:e(t,i+=a(t,i))}},{"./byte-helpers.js":9}],16:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.simpleTypeFromSourceType=void 0;var n=/^(audio|video|application)\/(x-|vnd\.apple\.)?mpegurl/i,r=/^application\/dash\+xml/i;i.simpleTypeFromSourceType=function(e){return n.test(e)?"hls":r.test(e)?"dash":"application/vnd.videojs.vhs+json"===e?"vhs-json":null}},{}],17:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.parseMediaInfo=i.parseTracks=i.addSampleDescription=i.buildFrameTable=i.findNamedBox=i.findBox=i.parseDescriptors=void 0;var n,r=e("./byte-helpers.js"),a=e("./codec-helpers.js"),s=e("./opus-helpers.js"),o=function(e){return"string"==typeof e?(0,r.stringToBytes)(e):e},u=function(e){e=(0,r.toUint8)(e);for(var t=[],i=0;e.length>i;){var a=e[i],s=0,o=0,u=e[++o];for(o++;128&u;)s=(127&u)<<7,u=e[o],o++;s+=127&u;for(var l=0;l>>0,l=t.subarray(s+4,s+8);if(0===u)break;var h=s+u;if(h>t.length){if(n)break;h=t.length}var d=t.subarray(s+8,h);(0,r.bytesMatch)(l,i[0])&&(1===i.length?a.push(d):a.push.apply(a,e(d,i.slice(1),n))),s=h}return a};i.findBox=l;var h=function(e,t){if(!(t=o(t)).length)return e.subarray(e.length);for(var i=0;i>>0,a=n>1?i+n:e.byteLength;return e.subarray(i+4,a)}i++}return e.subarray(e.length)};i.findNamedBox=h;var d=function(e,t,i){void 0===t&&(t=4),void 0===i&&(i=function(e){return(0,r.bytesToNumber)(e)});var n=[];if(!e||!e.length)return n;for(var a=(0,r.bytesToNumber)(e.subarray(4,8)),s=8;a;s+=t,a--)n.push(i(e.subarray(s,s+t)));return n},c=function(e,t){for(var i=d(l(e,["stss"])[0]),n=d(l(e,["stco"])[0]),a=d(l(e,["stts"])[0],8,(function(e){return{sampleCount:(0,r.bytesToNumber)(e.subarray(0,4)),sampleDelta:(0,r.bytesToNumber)(e.subarray(4,8))}})),s=d(l(e,["stsc"])[0],12,(function(e){return{firstChunk:(0,r.bytesToNumber)(e.subarray(0,4)),samplesPerChunk:(0,r.bytesToNumber)(e.subarray(4,8)),sampleDescriptionIndex:(0,r.bytesToNumber)(e.subarray(8,12))}})),o=l(e,["stsz"])[0],u=d(o&&o.length&&o.subarray(4)||null),h=[],c=0;c=m.firstChunk&&(p+1>=s.length||c+1>3).toString():32===d.oti?i+="."+d.descriptors[0].bytes[4].toString():221===d.oti&&(i="vorbis")):"audio"===e.type?i+=".40.2":i+=".20.9"}else if("av01"===i)i+="."+(0,a.getAv1Codec)(h(t,"av1C"));else if("vp09"===i){var c=h(t,"vpcC"),f=c[0],p=c[1],m=c[2]>>4,g=(15&c[2])>>1,_=(15&c[2])>>3,v=c[3],y=c[4],b=c[5];i+="."+(0,r.padStart)(f,2,"0"),i+="."+(0,r.padStart)(p,2,"0"),i+="."+(0,r.padStart)(m,2,"0"),i+="."+(0,r.padStart)(g,2,"0"),i+="."+(0,r.padStart)(v,2,"0"),i+="."+(0,r.padStart)(y,2,"0"),i+="."+(0,r.padStart)(b,2,"0"),i+="."+(0,r.padStart)(_,2,"0")}else if("theo"===i)i="theora";else if("spex"===i)i="speex";else if(".mp3"===i)i="mp4a.40.34";else if("msVo"===i)i="vorbis";else if("Opus"===i){i="opus";var T=h(t,"dOps");e.info.opus=(0,s.parseOpusHead)(T),e.info.codecDelay=65e5}else i=i.toLowerCase();e.codec=i};i.addSampleDescription=f;i.parseTracks=function(e,t){void 0===t&&(t=!0),e=(0,r.toUint8)(e);var i=l(e,["moov","trak"],!0),n=[];return i.forEach((function(e){var i={bytes:e},a=l(e,["mdia"])[0],s=l(a,["hdlr"])[0],o=(0,r.bytesToString)(s.subarray(8,12));i.type="soun"===o?"audio":"vide"===o?"video":o;var u=l(e,["tkhd"])[0];if(u){var h=new DataView(u.buffer,u.byteOffset,u.byteLength),d=h.getUint8(0);i.number=0===d?h.getUint32(12):h.getUint32(20)}var p=l(a,["mdhd"])[0];if(p){var m=0===p[0]?12:20;i.timescale=(p[m]<<24|p[m+1]<<16|p[m+2]<<8|p[m+3])>>>0}for(var g=l(a,["minf","stbl"])[0],_=l(g,["stsd"])[0],v=(0,r.bytesToNumber)(_.subarray(4,8)),y=8;v--;){var b=(0,r.bytesToNumber)(_.subarray(y,y+4)),T=_.subarray(y+4,y+4+b);f(i,T),y+=4+b}t&&(i.frameTable=c(g,i.timescale)),n.push(i)})),n};i.parseMediaInfo=function(e){var t=l(e,["moov","mvhd"],!0)[0];if(t&&t.length){var i={};return 1===t[0]?(i.timestampScale=(0,r.bytesToNumber)(t.subarray(20,24)),i.duration=(0,r.bytesToNumber)(t.subarray(24,32))):(i.timestampScale=(0,r.bytesToNumber)(t.subarray(12,16)),i.duration=(0,r.bytesToNumber)(t.subarray(16,20))),i.bytes=t,i}}},{"./byte-helpers.js":9,"./codec-helpers.js":10,"./opus-helpers.js":19}],18:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.findH265Nal=i.findH264Nal=i.findNal=i.discardEmulationPreventionBytes=i.EMULATION_PREVENTION=i.NAL_TYPE_TWO=i.NAL_TYPE_ONE=void 0;var n=e("./byte-helpers.js"),r=(0,n.toUint8)([0,0,0,1]);i.NAL_TYPE_ONE=r;var a=(0,n.toUint8)([0,0,1]);i.NAL_TYPE_TWO=a;var s=(0,n.toUint8)([0,0,3]);i.EMULATION_PREVENTION=s;var o=function(e){for(var t=[],i=1;i>1&63),-1!==i.indexOf(c)&&(u=l+d),l+=d+("h264"===t?1:2)}else l++}return e.subarray(0,0)};i.findNal=u;i.findH264Nal=function(e,t,i){return u(e,"h264",t,i)};i.findH265Nal=function(e,t,i){return u(e,"h265",t,i)}},{"./byte-helpers.js":9}],19:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.setOpusHead=i.parseOpusHead=i.OPUS_HEAD=void 0;var n=new Uint8Array([79,112,117,115,72,101,97,100]);i.OPUS_HEAD=n;i.parseOpusHead=function(e){var t=new DataView(e.buffer,e.byteOffset,e.byteLength),i=t.getUint8(0),n=0!==i,r={version:i,channels:t.getUint8(1),preSkip:t.getUint16(2,n),sampleRate:t.getUint32(4,n),outputGain:t.getUint16(8,n),channelMappingFamily:t.getUint8(10)};if(r.channelMappingFamily>0&&e.length>10){r.streamCount=t.getUint8(11),r.twoChannelStreamCount=t.getUint8(12),r.channelMapping=[];for(var a=0;a0&&(i.setUint8(11,e.streamCount),e.channelMapping.foreach((function(e,t){i.setUint8(12+t,e)}))),new Uint8Array(i.buffer)}},{}],20:[function(e,t,i){"use strict";var n=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var r=n(e("url-toolkit")),a=n(e("global/window")),s=function(e,t){if(/^[a-z]+:/i.test(t))return t;/^data:/.test(e)&&(e=a.default.location&&a.default.location.href||"");var i="function"==typeof a.default.URL,n=/^\/\//.test(e),s=!a.default.location&&!/\/\//i.test(e);if(i?e=new a.default.URL(e,a.default.location||"http://example.com"):/\/\//i.test(e)||(e=r.default.buildAbsoluteURL(a.default.location&&a.default.location.href||"",e)),i){var o=new URL(t,e);return s?o.href.slice("http://example.com".length):n?o.href.slice(o.protocol.length):o.href}return r.default.buildAbsoluteURL(e,t)};i.default=s,t.exports=i.default},{"@babel/runtime/helpers/interopRequireDefault":6,"global/window":35,"url-toolkit":46}],21:[function(e,t,i){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var n=function(){function e(){this.listeners={}}var t=e.prototype;return t.on=function(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)},t.off=function(e,t){if(!this.listeners[e])return!1;var i=this.listeners[e].indexOf(t);return this.listeners[e]=this.listeners[e].slice(0),this.listeners[e].splice(i,1),i>-1},t.trigger=function(e){var t=this.listeners[e];if(t)if(2===arguments.length)for(var i=t.length,n=0;n=400&&r.statusCode<=599){var s=a;if(t)if(n.TextDecoder){var o=function(e){void 0===e&&(e="");return e.toLowerCase().split(";").reduce((function(e,t){var i=t.split("="),n=i[0],r=i[1];return"charset"===n.trim()?r.trim():e}),"utf-8")}(r.headers&&r.headers["content-type"]);try{s=new TextDecoder(o).decode(a)}catch(e){}}else s=String.fromCharCode.apply(null,new Uint8Array(a));e({cause:s})}else e(null,a)}}},{"global/window":35}],23:[function(e,t,i){"use strict";var n=e("global/window"),r=e("@babel/runtime/helpers/extends"),a=e("is-function");o.httpHandler=e("./http-handler.js");function s(e,t,i){var n=e;return a(t)?(i=t,"string"==typeof e&&(n={uri:e})):n=r({},t,{uri:e}),n.callback=i,n}function o(e,t,i){return u(t=s(e,t,i))}function u(e){if(void 0===e.callback)throw new Error("callback argument missing");var t=!1,i=function(i,n,r){t||(t=!0,e.callback(i,n,r))};function n(){var e=void 0;if(e=l.response?l.response:l.responseText||function(e){try{if("document"===e.responseType)return e.responseXML;var t=e.responseXML&&"parsererror"===e.responseXML.documentElement.nodeName;if(""===e.responseType&&!t)return e.responseXML}catch(e){}return null}(l),g)try{e=JSON.parse(e)}catch(e){}return e}function r(e){return clearTimeout(h),e instanceof Error||(e=new Error(""+(e||"Unknown XMLHttpRequest Error"))),e.statusCode=0,i(e,_)}function a(){if(!u){var t;clearTimeout(h),t=e.useXDR&&void 0===l.status?200:1223===l.status?204:l.status;var r=_,a=null;return 0!==t?(r={body:n(),statusCode:t,method:c,headers:{},url:d,rawRequest:l},l.getAllResponseHeaders&&(r.headers=function(e){var t={};return e?(e.trim().split("\n").forEach((function(e){var i=e.indexOf(":"),n=e.slice(0,i).trim().toLowerCase(),r=e.slice(i+1).trim();void 0===t[n]?t[n]=r:Array.isArray(t[n])?t[n].push(r):t[n]=[t[n],r]})),t):t}(l.getAllResponseHeaders()))):a=new Error("Internal XMLHttpRequest Error"),i(a,r,r.body)}}var s,u,l=e.xhr||null;l||(l=e.cors||e.useXDR?new o.XDomainRequest:new o.XMLHttpRequest);var h,d=l.url=e.uri||e.url,c=l.method=e.method||"GET",f=e.body||e.data,p=l.headers=e.headers||{},m=!!e.sync,g=!1,_={body:void 0,headers:{},statusCode:0,method:c,url:d,rawRequest:l};if("json"in e&&!1!==e.json&&(g=!0,p.accept||p.Accept||(p.Accept="application/json"),"GET"!==c&&"HEAD"!==c&&(p["content-type"]||p["Content-Type"]||(p["Content-Type"]="application/json"),f=JSON.stringify(!0===e.json?f:e.json))),l.onreadystatechange=function(){4===l.readyState&&setTimeout(a,0)},l.onload=a,l.onerror=r,l.onprogress=function(){},l.onabort=function(){u=!0},l.ontimeout=r,l.open(c,d,!m,e.username,e.password),m||(l.withCredentials=!!e.withCredentials),!m&&e.timeout>0&&(h=setTimeout((function(){if(!u){u=!0,l.abort("timeout");var e=new Error("XMLHttpRequest timeout");e.code="ETIMEDOUT",r(e)}}),e.timeout)),l.setRequestHeader)for(s in p)p.hasOwnProperty(s)&&l.setRequestHeader(s,p[s]);else if(e.headers&&!function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0}(e.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in e&&(l.responseType=e.responseType),"beforeSend"in e&&"function"==typeof e.beforeSend&&e.beforeSend(l),l.send(f||null),l}t.exports=o,t.exports.default=o,o.XMLHttpRequest=n.XMLHttpRequest||function(){},o.XDomainRequest="withCredentials"in new o.XMLHttpRequest?o.XMLHttpRequest:n.XDomainRequest,function(e,t){for(var i=0;i=t+i||t?new java.lang.String(e,t,i)+"":e}function g(e,t){e.currentElement?e.currentElement.appendChild(t):e.doc.appendChild(t)}d.prototype.parseFromString=function(e,t){var i=this.options,n=new h,r=i.domBuilder||new c,s=i.errorHandler,o=i.locator,l=i.xmlns||{},d=/\/x?html?$/.test(t),f=d?a.HTML_ENTITIES:a.XML_ENTITIES;return o&&r.setDocumentLocator(o),n.errorHandler=function(e,t,i){if(!e){if(t instanceof c)return t;e=t}var n={},r=e instanceof Function;function a(t){var a=e[t];!a&&r&&(a=2==e.length?function(i){e(t,i)}:e),n[t]=a&&function(e){a("[xmldom "+t+"]\t"+e+p(i))}||function(){}}return i=i||{},a("warning"),a("error"),a("fatalError"),n}(s,r,o),n.domBuilder=i.domBuilder||r,d&&(l[""]=u.HTML),l.xml=l.xml||u.XML,e&&"string"==typeof e?n.parse(e,l,f):n.errorHandler.error("invalid doc source"),r.doc},c.prototype={startDocument:function(){this.doc=(new o).createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(e,t,i,n){var r=this.doc,a=r.createElementNS(e,i||t),s=n.length;g(this,a),this.currentElement=a,this.locator&&f(this.locator,a);for(var o=0;o=0))throw k(C,new Error(e.tagName+"@"+i));for(var r=t.length-1;n"==e&&">")||"&"==e&&"&"||'"'==e&&"""||"&#"+e.charCodeAt()+";"}function B(e,t){if(t(e))return!0;if(e=e.firstChild)do{if(B(e,t))return!0}while(e=e.nextSibling)}function N(){}function j(e,t,i,r){e&&e._inc++,i.namespaceURI===n.XMLNS&&delete t._nsMap[i.prefix?i.localName:""]}function V(e,t,i){if(e&&e._inc){e._inc++;var n=t.childNodes;if(i)n[n.length++]=i;else{for(var r=t.firstChild,a=0;r;)n[a++]=r,r=r.nextSibling;n.length=a}}}function H(e,t){var i=t.previousSibling,n=t.nextSibling;return i?i.nextSibling=n:e.firstChild=n,n?n.previousSibling=i:e.lastChild=i,V(e.ownerDocument,e),t}function z(e,t,i){var n=t.parentNode;if(n&&n.removeChild(t),t.nodeType===b){var r=t.firstChild;if(null==r)return t;var a=t.lastChild}else r=a=t;var s=i?i.previousSibling:e.lastChild;r.previousSibling=s,a.nextSibling=i,s?s.nextSibling=r:e.firstChild=r,null==i?e.lastChild=a:i.previousSibling=a;do{r.parentNode=e}while(r!==a&&(r=r.nextSibling));return V(e.ownerDocument||e,e),t.nodeType==b&&(t.firstChild=t.lastChild=null),t}function G(){this._nsMap={}}function W(){}function Y(){}function q(){}function K(){}function X(){}function Q(){}function $(){}function J(){}function Z(){}function ee(){}function te(){}function ie(){}function ne(e,t){var i=[],n=9==this.nodeType&&this.documentElement||this,r=n.prefix,a=n.namespaceURI;if(a&&null==r&&null==(r=n.lookupPrefix(a)))var s=[{namespace:a,prefix:null}];return se(this,i,e,t,s),i.join("")}function re(e,t,i){var r=e.prefix||"",a=e.namespaceURI;if(!a)return!1;if("xml"===r&&a===n.XML||a===n.XMLNS)return!1;for(var s=i.length;s--;){var o=i[s];if(o.prefix===r)return o.namespace!==a}return!0}function ae(e,t,i){e.push(" ",t,'="',i.replace(/[<&"]/g,F),'"')}function se(e,t,i,r,a){if(a||(a=[]),r){if(!(e=r(e)))return;if("string"==typeof e)return void t.push(e)}switch(e.nodeType){case h:var s=e.attributes,o=s.length,u=e.firstChild,l=e.tagName,m=l;if(!(i=n.isHTML(e.namespaceURI)||i)&&!e.prefix&&e.namespaceURI){for(var T,S=0;S=0;E--){if(""===(w=a[E]).prefix&&w.namespace===e.namespaceURI){T=w.namespace;break}}if(T!==e.namespaceURI)for(E=a.length-1;E>=0;E--){var w;if((w=a[E]).namespace===e.namespaceURI){w.prefix&&(m=w.prefix+":"+l);break}}}t.push("<",m);for(var C=0;C"),i&&/^script$/i.test(l))for(;u;)u.data?t.push(u.data):se(u,t,i,r,a.slice()),u=u.nextSibling;else for(;u;)se(u,t,i,r,a.slice()),u=u.nextSibling;t.push("")}else t.push("/>");return;case v:case b:for(u=e.firstChild;u;)se(u,t,i,r,a.slice()),u=u.nextSibling;return;case d:return ae(t,e.name,e.value);case c:return t.push(e.data.replace(/[<&]/g,F).replace(/]]>/g,"]]>"));case f:return t.push("");case _:return t.push("\x3c!--",e.data,"--\x3e");case y:var I=e.publicId,L=e.systemId;if(t.push("");else if(L&&"."!=L)t.push(" SYSTEM ",L,">");else{var x=e.internalSubset;x&&t.push(" [",x,"]"),t.push(">")}return;case g:return t.push("");case p:return t.push("&",e.nodeName,";");default:t.push("??",e.nodeName)}}function oe(e,t,i){e[t]=i}k.prototype=Error.prototype,o(S,k),P.prototype={length:0,item:function(e){return this[e]||null},toString:function(e,t){for(var i=[],n=0;n0},lookupPrefix:function(e){for(var t=this;t;){var i=t._nsMap;if(i)for(var n in i)if(i[n]==e)return n;t=t.nodeType==d?t.ownerDocument:t.parentNode}return null},lookupNamespaceURI:function(e){for(var t=this;t;){var i=t._nsMap;if(i&&e in i)return i[e];t=t.nodeType==d?t.ownerDocument:t.parentNode}return null},isDefaultNamespace:function(e){return null==this.lookupPrefix(e)}},o(l,M),o(l,M.prototype),N.prototype={nodeName:"#document",nodeType:v,doctype:null,documentElement:null,_inc:1,insertBefore:function(e,t){if(e.nodeType==b){for(var i=e.firstChild;i;){var n=i.nextSibling;this.insertBefore(i,t),i=n}return e}return null==this.documentElement&&e.nodeType==h&&(this.documentElement=e),z(this,e,t),e.ownerDocument=this,e},removeChild:function(e){return this.documentElement==e&&(this.documentElement=null),H(this,e)},importNode:function(e,t){return function e(t,i,n){var r;switch(i.nodeType){case h:(r=i.cloneNode(!1)).ownerDocument=t;case b:break;case d:n=!0}r||(r=i.cloneNode(!1));if(r.ownerDocument=t,r.parentNode=null,n)for(var a=i.firstChild;a;)r.appendChild(e(t,a,n)),a=a.nextSibling;return r}(this,e,t)},getElementById:function(e){var t=null;return B(this.documentElement,(function(i){if(i.nodeType==h&&i.getAttribute("id")==e)return t=i,!0})),t},getElementsByClassName:function(e){var t=s(e);return new I(this,(function(i){var n=[];return t.length>0&&B(i.documentElement,(function(r){if(r!==i&&r.nodeType===h){var a=r.getAttribute("class");if(a){var o=e===a;if(!o){var u=s(a);o=t.every((l=u,function(e){return l&&-1!==l.indexOf(e)}))}o&&n.push(r)}}var l})),n}))},createElement:function(e){var t=new G;return t.ownerDocument=this,t.nodeName=e,t.tagName=e,t.localName=e,t.childNodes=new P,(t.attributes=new x)._ownerElement=t,t},createDocumentFragment:function(){var e=new ee;return e.ownerDocument=this,e.childNodes=new P,e},createTextNode:function(e){var t=new q;return t.ownerDocument=this,t.appendData(e),t},createComment:function(e){var t=new K;return t.ownerDocument=this,t.appendData(e),t},createCDATASection:function(e){var t=new X;return t.ownerDocument=this,t.appendData(e),t},createProcessingInstruction:function(e,t){var i=new te;return i.ownerDocument=this,i.tagName=i.target=e,i.nodeValue=i.data=t,i},createAttribute:function(e){var t=new W;return t.ownerDocument=this,t.name=e,t.nodeName=e,t.localName=e,t.specified=!0,t},createEntityReference:function(e){var t=new Z;return t.ownerDocument=this,t.nodeName=e,t},createElementNS:function(e,t){var i=new G,n=t.split(":"),r=i.attributes=new x;return i.childNodes=new P,i.ownerDocument=this,i.nodeName=t,i.tagName=t,i.namespaceURI=e,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=t,r._ownerElement=i,i},createAttributeNS:function(e,t){var i=new W,n=t.split(":");return i.ownerDocument=this,i.nodeName=t,i.name=t,i.namespaceURI=e,i.specified=!0,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=t,i}},u(N,M),G.prototype={nodeType:h,hasAttribute:function(e){return null!=this.getAttributeNode(e)},getAttribute:function(e){var t=this.getAttributeNode(e);return t&&t.value||""},getAttributeNode:function(e){return this.attributes.getNamedItem(e)},setAttribute:function(e,t){var i=this.ownerDocument.createAttribute(e);i.value=i.nodeValue=""+t,this.setAttributeNode(i)},removeAttribute:function(e){var t=this.getAttributeNode(e);t&&this.removeAttributeNode(t)},appendChild:function(e){return e.nodeType===b?this.insertBefore(e,null):function(e,t){var i=t.parentNode;if(i){var n=e.lastChild;i.removeChild(t);n=e.lastChild}return n=e.lastChild,t.parentNode=e,t.previousSibling=n,t.nextSibling=null,n?n.nextSibling=t:e.firstChild=t,e.lastChild=t,V(e.ownerDocument,e,t),t}(this,e)},setAttributeNode:function(e){return this.attributes.setNamedItem(e)},setAttributeNodeNS:function(e){return this.attributes.setNamedItemNS(e)},removeAttributeNode:function(e){return this.attributes.removeNamedItem(e.nodeName)},removeAttributeNS:function(e,t){var i=this.getAttributeNodeNS(e,t);i&&this.removeAttributeNode(i)},hasAttributeNS:function(e,t){return null!=this.getAttributeNodeNS(e,t)},getAttributeNS:function(e,t){var i=this.getAttributeNodeNS(e,t);return i&&i.value||""},setAttributeNS:function(e,t,i){var n=this.ownerDocument.createAttributeNS(e,t);n.value=n.nodeValue=""+i,this.setAttributeNode(n)},getAttributeNodeNS:function(e,t){return this.attributes.getNamedItemNS(e,t)},getElementsByTagName:function(e){return new I(this,(function(t){var i=[];return B(t,(function(n){n===t||n.nodeType!=h||"*"!==e&&n.tagName!=e||i.push(n)})),i}))},getElementsByTagNameNS:function(e,t){return new I(this,(function(i){var n=[];return B(i,(function(r){r===i||r.nodeType!==h||"*"!==e&&r.namespaceURI!==e||"*"!==t&&r.localName!=t||n.push(r)})),n}))}},N.prototype.getElementsByTagName=G.prototype.getElementsByTagName,N.prototype.getElementsByTagNameNS=G.prototype.getElementsByTagNameNS,u(G,M),W.prototype.nodeType=d,u(W,M),Y.prototype={data:"",substringData:function(e,t){return this.data.substring(e,e+t)},appendData:function(e){e=this.data+e,this.nodeValue=this.data=e,this.length=e.length},insertData:function(e,t){this.replaceData(e,0,t)},appendChild:function(e){throw new Error(E[w])},deleteData:function(e,t){this.replaceData(e,t,"")},replaceData:function(e,t,i){i=this.data.substring(0,e)+i+this.data.substring(e+t),this.nodeValue=this.data=i,this.length=i.length}},u(Y,M),q.prototype={nodeName:"#text",nodeType:c,splitText:function(e){var t=this.data,i=t.substring(e);t=t.substring(0,e),this.data=this.nodeValue=t,this.length=t.length;var n=this.ownerDocument.createTextNode(i);return this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling),n}},u(q,Y),K.prototype={nodeName:"#comment",nodeType:_},u(K,Y),X.prototype={nodeName:"#cdata-section",nodeType:f},u(X,Y),Q.prototype.nodeType=y,u(Q,M),$.prototype.nodeType=T,u($,M),J.prototype.nodeType=m,u(J,M),Z.prototype.nodeType=p,u(Z,M),ee.prototype.nodeName="#document-fragment",ee.prototype.nodeType=b,u(ee,M),te.prototype.nodeType=g,u(te,M),ie.prototype.serializeToString=function(e,t,i){return ne.call(e,t,i)},M.prototype.toString=ne;try{if(Object.defineProperty){Object.defineProperty(I.prototype,"length",{get:function(){return L(this),this.$$length}}),Object.defineProperty(M.prototype,"textContent",{get:function(){return function e(t){switch(t.nodeType){case h:case b:var i=[];for(t=t.firstChild;t;)7!==t.nodeType&&8!==t.nodeType&&i.push(e(t)),t=t.nextSibling;return i.join("");default:return t.nodeValue}}(this)},set:function(e){switch(this.nodeType){case h:case b:for(;this.firstChild;)this.removeChild(this.firstChild);(e||String(e))&&this.appendChild(this.ownerDocument.createTextNode(e));break;default:this.data=e,this.value=e,this.nodeValue=e}}}),oe=function(e,t,i){e["$$"+t]=i}}}catch(e){}i.DocumentType=Q,i.DOMException=k,i.DOMImplementation=U,i.Element=G,i.Node=M,i.NodeList=P,i.XMLSerializer=ie},{"./conventions":24}],27:[function(e,t,i){var n=e("./conventions").freeze;i.XML_ENTITIES=n({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}),i.HTML_ENTITIES=n({lt:"<",gt:">",amp:"&",quot:'"',apos:"'",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",times:"×",divide:"÷",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",euro:"€",trade:"™",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"}),i.entityMap=i.HTML_ENTITIES},{"./conventions":24}],28:[function(e,t,i){var n=e("./dom");i.DOMImplementation=n.DOMImplementation,i.XMLSerializer=n.XMLSerializer,i.DOMParser=e("./dom-parser").DOMParser},{"./dom":26,"./dom-parser":25}],29:[function(e,t,i){var n=e("./conventions").NAMESPACE,r=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,a=new RegExp("[\\-\\.0-9"+r.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),s=new RegExp("^"+r.source+a.source+"*(?::"+r.source+a.source+"*)?$");function o(e,t){this.message=e,this.locator=t,Error.captureStackTrace&&Error.captureStackTrace(this,o)}function u(){}function l(e,t){return t.lineNumber=e.lineNumber,t.columnNumber=e.columnNumber,t}function h(e,t,i,r,a,s){function o(e,t,n){i.attributeNames.hasOwnProperty(e)&&s.fatalError("Attribute "+e+" redefined"),i.addValue(e,t,n)}for(var u,l=++t,h=0;;){var d=e.charAt(l);switch(d){case"=":if(1===h)u=e.slice(t,l),h=3;else{if(2!==h)throw new Error("attribute equal must after attrName");h=3}break;case"'":case'"':if(3===h||1===h){if(1===h&&(s.warning('attribute value must after "="'),u=e.slice(t,l)),t=l+1,!((l=e.indexOf(d,t))>0))throw new Error("attribute value no end '"+d+"' match");o(u,c=e.slice(t,l).replace(/&#?\w+;/g,a),t-1),h=5}else{if(4!=h)throw new Error('attribute value must after "="');o(u,c=e.slice(t,l).replace(/&#?\w+;/g,a),t),s.warning('attribute "'+u+'" missed start quot('+d+")!!"),t=l+1,h=5}break;case"/":switch(h){case 0:i.setTagName(e.slice(t,l));case 5:case 6:case 7:h=7,i.closed=!0;case 4:case 1:case 2:break;default:throw new Error("attribute invalid close char('/')")}break;case"":return s.error("unexpected end of input"),0==h&&i.setTagName(e.slice(t,l)),l;case">":switch(h){case 0:i.setTagName(e.slice(t,l));case 5:case 6:case 7:break;case 4:case 1:"/"===(c=e.slice(t,l)).slice(-1)&&(i.closed=!0,c=c.slice(0,-1));case 2:2===h&&(c=u),4==h?(s.warning('attribute "'+c+'" missed quot(")!'),o(u,c.replace(/&#?\w+;/g,a),t)):(n.isHTML(r[""])&&c.match(/^(?:disabled|checked|selected)$/i)||s.warning('attribute "'+c+'" missed value!! "'+c+'" instead!!'),o(c,c,t));break;case 3:throw new Error("attribute value missed!!")}return l;case"€":d=" ";default:if(d<=" ")switch(h){case 0:i.setTagName(e.slice(t,l)),h=6;break;case 1:u=e.slice(t,l),h=2;break;case 4:var c=e.slice(t,l).replace(/&#?\w+;/g,a);s.warning('attribute "'+c+'" missed quot(")!!'),o(u,c,t);case 5:h=6}else switch(h){case 2:i.tagName;n.isHTML(r[""])&&u.match(/^(?:disabled|checked|selected)$/i)||s.warning('attribute "'+u+'" missed value!! "'+u+'" instead2!!'),o(u,u,t),t=l,h=1;break;case 5:s.warning('attribute space is required"'+u+'"!!');case 6:h=1,t=l;break;case 3:h=4,t=l;break;case 7:throw new Error("elements closed character '/' and '>' must be connected to")}}l++}}function d(e,t,i){for(var r=e.tagName,a=null,s=e.length;s--;){var o=e[s],u=o.qName,l=o.value;if((f=u.indexOf(":"))>0)var h=o.prefix=u.slice(0,f),d=u.slice(f+1),c="xmlns"===h&&d;else d=u,h=null,c="xmlns"===u&&"";o.localName=d,!1!==c&&(null==a&&(a={},p(i,i={})),i[c]=a[c]=l,o.uri=n.XMLNS,t.startPrefixMapping(c,l))}for(s=e.length;s--;){(h=(o=e[s]).prefix)&&("xml"===h&&(o.uri=n.XML),"xmlns"!==h&&(o.uri=i[h||""]))}var f;(f=r.indexOf(":"))>0?(h=e.prefix=r.slice(0,f),d=e.localName=r.slice(f+1)):(h=null,d=e.localName=r);var m=e.uri=i[h||""];if(t.startElement(m,d,r,e),!e.closed)return e.currentNSMap=i,e.localNSMap=a,!0;if(t.endElement(m,d,r),a)for(h in a)t.endPrefixMapping(h)}function c(e,t,i,n,r){if(/^(?:script|textarea)$/i.test(i)){var a=e.indexOf("",t),s=e.substring(t+1,a);if(/[&<]/.test(s))return/^script$/i.test(i)?(r.characters(s,0,s.length),a):(s=s.replace(/&#?\w+;/g,n),r.characters(s,0,s.length),a)}return t+1}function f(e,t,i,n){var r=n[i];return null==r&&((r=e.lastIndexOf(""))t?(i.comment(e,t+4,r-t-4),r+3):(n.error("Unclosed comment"),-1):-1;default:if("CDATA["==e.substr(t+3,6)){var r=e.indexOf("]]>",t+9);return i.startCDATA(),i.characters(e,t+9,r-t-9),i.endCDATA(),r+3}var a=function(e,t){var i,n=[],r=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;r.lastIndex=t,r.exec(e);for(;i=r.exec(e);)if(n.push(i),i[1])return n}(e,t),s=a.length;if(s>1&&/!doctype/i.test(a[0][0])){var o=a[1][0],u=!1,l=!1;s>3&&(/^public$/i.test(a[2][0])?(u=a[3][0],l=s>4&&a[4][0]):/^system$/i.test(a[2][0])&&(l=a[3][0]));var h=a[s-1];return i.startDTD(o,u,l),i.endDTD(),h.index+h[0].length}}return-1}function g(e,t,i){var n=e.indexOf("?>",t);if(n){var r=e.substring(t,n).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);if(r){r[0].length;return i.processingInstruction(r[1],r[2]),n+2}return-1}return-1}function _(){this.attributeNames={}}o.prototype=new Error,o.prototype.name=o.name,u.prototype={parse:function(e,t,i){var r=this.domBuilder;r.startDocument(),p(t,t={}),function(e,t,i,r,a){function s(e){var t=e.slice(1,-1);return t in i?i[t]:"#"===t.charAt(0)?function(e){if(e>65535){var t=55296+((e-=65536)>>10),i=56320+(1023&e);return String.fromCharCode(t,i)}return String.fromCharCode(e)}(parseInt(t.substr(1).replace("x","0x"))):(a.error("entity not found:"+e),e)}function u(t){if(t>w){var i=e.substring(w,t).replace(/&#?\w+;/g,s);T&&p(w),r.characters(i,0,t-w),w=t}}function p(t,i){for(;t>=y&&(i=b.exec(e));)v=i.index,y=v+i[0].length,T.lineNumber++;T.columnNumber=t-v+1}var v=0,y=0,b=/.*(?:\r\n?|\n)|.*$/g,T=r.locator,S=[{currentNSMap:t}],E={},w=0;for(;;){try{var C=e.indexOf("<",w);if(C<0){if(!e.substr(w).match(/^\s*$/)){var A=r.doc,k=A.createTextNode(e.substr(w));A.appendChild(k),r.currentElement=k}return}switch(C>w&&u(C),e.charAt(C+1)){case"/":var P=e.indexOf(">",C+3),I=e.substring(C+2,P).replace(/[ \t\n\r]+$/g,""),L=S.pop();P<0?(I=e.substring(C+2).replace(/[\s<].*/,""),a.error("end tag name: "+I+" is not complete:"+L.tagName),P=C+1+I.length):I.match(/\sw?w=P:u(Math.max(C,w)+1)}}(e,t,i,r,this.errorHandler),r.endDocument()}},_.prototype={setTagName:function(e){if(!s.test(e))throw new Error("invalid tagName:"+e);this.tagName=e},addValue:function(e,t,i){if(!s.test(e))throw new Error("invalid attribute:"+e);this.attributeNames[e]=this.length,this[this.length++]={qName:e,value:t,offset:i}},length:0,getLocalName:function(e){return this[e].localName},getLocator:function(e){return this[e].locator},getQName:function(e){return this[e].qName},getURI:function(e){return this[e].uri},getValue:function(e){return this[e].value}},i.XMLReader=u,i.ParseError=o},{"./conventions":24}],30:[function(e,t,i){"use strict";i.byteLength=function(e){var t=l(e),i=t[0],n=t[1];return 3*(i+n)/4-n},i.toByteArray=function(e){var t,i,n=l(e),s=n[0],o=n[1],u=new a(function(e,t,i){return 3*(t+i)/4-i}(0,s,o)),h=0,d=o>0?s-4:s;for(i=0;i>16&255,u[h++]=t>>8&255,u[h++]=255&t;2===o&&(t=r[e.charCodeAt(i)]<<2|r[e.charCodeAt(i+1)]>>4,u[h++]=255&t);1===o&&(t=r[e.charCodeAt(i)]<<10|r[e.charCodeAt(i+1)]<<4|r[e.charCodeAt(i+2)]>>2,u[h++]=t>>8&255,u[h++]=255&t);return u},i.fromByteArray=function(e){for(var t,i=e.length,r=i%3,a=[],s=0,o=i-r;so?o:s+16383));1===r?(t=e[i-1],a.push(n[t>>2]+n[t<<4&63]+"==")):2===r&&(t=(e[i-2]<<8)+e[i-1],a.push(n[t>>10]+n[t>>4&63]+n[t<<2&63]+"="));return a.join("")};for(var n=[],r=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,u=s.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var i=e.indexOf("=");return-1===i&&(i=t),[i,i===t?0:4-i%4]}function h(e,t,i){for(var r,a,s=[],o=t;o>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return s.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},{}],31:[function(e,t,i){},{}],32:[function(e,t,i){(function(t){ +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +"use strict";var n=e("base64-js"),r=e("ieee754");i.Buffer=t,i.SlowBuffer=function(e){+e!=e&&(e=0);return t.alloc(+e)},i.INSPECT_MAX_BYTES=50;function a(e){if(e>2147483647)throw new RangeError('The value "'+e+'" is invalid for option "size"');var i=new Uint8Array(e);return i.__proto__=t.prototype,i}function t(e,t,i){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return u(e)}return s(e,t,i)}function s(e,i,n){if("string"==typeof e)return function(e,i){"string"==typeof i&&""!==i||(i="utf8");if(!t.isEncoding(i))throw new TypeError("Unknown encoding: "+i);var n=0|d(e,i),r=a(n),s=r.write(e,i);s!==n&&(r=r.slice(0,s));return r}(e,i);if(ArrayBuffer.isView(e))return l(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(B(e,ArrayBuffer)||e&&B(e.buffer,ArrayBuffer))return function(e,i,n){if(i<0||e.byteLength=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647..toString(16)+" bytes");return 0|e}function d(e,i){if(t.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||B(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var a=!1;;)switch(i){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return U(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return M(e).length;default:if(a)return r?-1:U(e).length;i=(""+i).toLowerCase(),a=!0}}function c(e,t,i){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===i||i>this.length)&&(i=this.length),i<=0)return"";if((i>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return A(this,t,i);case"utf8":case"utf-8":return E(this,t,i);case"ascii":return w(this,t,i);case"latin1":case"binary":return C(this,t,i);case"base64":return S(this,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,i);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function f(e,t,i){var n=e[t];e[t]=e[i],e[i]=n}function p(e,i,n,r,a){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),N(n=+n)&&(n=a?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(a)return-1;n=e.length-1}else if(n<0){if(!a)return-1;n=0}if("string"==typeof i&&(i=t.from(i,r)),t.isBuffer(i))return 0===i.length?-1:m(e,i,n,r,a);if("number"==typeof i)return i&=255,"function"==typeof Uint8Array.prototype.indexOf?a?Uint8Array.prototype.indexOf.call(e,i,n):Uint8Array.prototype.lastIndexOf.call(e,i,n):m(e,[i],n,r,a);throw new TypeError("val must be string, number or Buffer")}function m(e,t,i,n,r){var a,s=1,o=e.length,u=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,o/=2,u/=2,i/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(r){var h=-1;for(a=i;ao&&(i=o-u),a=i;a>=0;a--){for(var d=!0,c=0;cr&&(n=r):n=r;var a=t.length;n>a/2&&(n=a/2);for(var s=0;s>8,r=i%256,a.push(r),a.push(n);return a}(t,e.length-i),e,i,n)}function S(e,t,i){return 0===t&&i===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,i))}function E(e,t,i){i=Math.min(e.length,i);for(var n=[],r=t;r239?4:l>223?3:l>191?2:1;if(r+d<=i)switch(d){case 1:l<128&&(h=l);break;case 2:128==(192&(a=e[r+1]))&&(u=(31&l)<<6|63&a)>127&&(h=u);break;case 3:a=e[r+1],s=e[r+2],128==(192&a)&&128==(192&s)&&(u=(15&l)<<12|(63&a)<<6|63&s)>2047&&(u<55296||u>57343)&&(h=u);break;case 4:a=e[r+1],s=e[r+2],o=e[r+3],128==(192&a)&&128==(192&s)&&128==(192&o)&&(u=(15&l)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&u<1114112&&(h=u)}null===h?(h=65533,d=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),r+=d}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var i="",n=0;for(;nt&&(e+=" ... "),""},t.prototype.compare=function(e,i,n,r,a){if(B(e,Uint8Array)&&(e=t.from(e,e.offset,e.byteLength)),!t.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===i&&(i=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===a&&(a=this.length),i<0||n>e.length||r<0||a>this.length)throw new RangeError("out of range index");if(r>=a&&i>=n)return 0;if(r>=a)return-1;if(i>=n)return 1;if(this===e)return 0;for(var s=(a>>>=0)-(r>>>=0),o=(n>>>=0)-(i>>>=0),u=Math.min(s,o),l=this.slice(r,a),h=e.slice(i,n),d=0;d>>=0,isFinite(i)?(i>>>=0,void 0===n&&(n="utf8")):(n=i,i=void 0)}var r=this.length-t;if((void 0===i||i>r)&&(i=r),e.length>0&&(i<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return g(this,e,t,i);case"utf8":case"utf-8":return _(this,e,t,i);case"ascii":return v(this,e,t,i);case"latin1":case"binary":return y(this,e,t,i);case"base64":return b(this,e,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,e,t,i);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function w(e,t,i){var n="";i=Math.min(e.length,i);for(var r=t;rn)&&(i=n);for(var r="",a=t;ai)throw new RangeError("Trying to access beyond buffer length")}function I(e,i,n,r,a,s){if(!t.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(i>a||ie.length)throw new RangeError("Index out of range")}function L(e,t,i,n,r,a){if(i+n>e.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function x(e,t,i,n,a){return t=+t,i>>>=0,a||L(e,0,i,4),r.write(e,t,i,n,23,4),i+4}function D(e,t,i,n,a){return t=+t,i>>>=0,a||L(e,0,i,8),r.write(e,t,i,n,52,8),i+8}t.prototype.slice=function(e,i){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(i=void 0===i?n:~~i)<0?(i+=n)<0&&(i=0):i>n&&(i=n),i>>=0,t>>>=0,i||P(e,t,this.length);for(var n=this[e],r=1,a=0;++a>>=0,t>>>=0,i||P(e,t,this.length);for(var n=this[e+--t],r=1;t>0&&(r*=256);)n+=this[e+--t]*r;return n},t.prototype.readUInt8=function(e,t){return e>>>=0,t||P(e,1,this.length),this[e]},t.prototype.readUInt16LE=function(e,t){return e>>>=0,t||P(e,2,this.length),this[e]|this[e+1]<<8},t.prototype.readUInt16BE=function(e,t){return e>>>=0,t||P(e,2,this.length),this[e]<<8|this[e+1]},t.prototype.readUInt32LE=function(e,t){return e>>>=0,t||P(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},t.prototype.readUInt32BE=function(e,t){return e>>>=0,t||P(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},t.prototype.readIntLE=function(e,t,i){e>>>=0,t>>>=0,i||P(e,t,this.length);for(var n=this[e],r=1,a=0;++a=(r*=128)&&(n-=Math.pow(2,8*t)),n},t.prototype.readIntBE=function(e,t,i){e>>>=0,t>>>=0,i||P(e,t,this.length);for(var n=t,r=1,a=this[e+--n];n>0&&(r*=256);)a+=this[e+--n]*r;return a>=(r*=128)&&(a-=Math.pow(2,8*t)),a},t.prototype.readInt8=function(e,t){return e>>>=0,t||P(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},t.prototype.readInt16LE=function(e,t){e>>>=0,t||P(e,2,this.length);var i=this[e]|this[e+1]<<8;return 32768&i?4294901760|i:i},t.prototype.readInt16BE=function(e,t){e>>>=0,t||P(e,2,this.length);var i=this[e+1]|this[e]<<8;return 32768&i?4294901760|i:i},t.prototype.readInt32LE=function(e,t){return e>>>=0,t||P(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},t.prototype.readInt32BE=function(e,t){return e>>>=0,t||P(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},t.prototype.readFloatLE=function(e,t){return e>>>=0,t||P(e,4,this.length),r.read(this,e,!0,23,4)},t.prototype.readFloatBE=function(e,t){return e>>>=0,t||P(e,4,this.length),r.read(this,e,!1,23,4)},t.prototype.readDoubleLE=function(e,t){return e>>>=0,t||P(e,8,this.length),r.read(this,e,!0,52,8)},t.prototype.readDoubleBE=function(e,t){return e>>>=0,t||P(e,8,this.length),r.read(this,e,!1,52,8)},t.prototype.writeUIntLE=function(e,t,i,n){(e=+e,t>>>=0,i>>>=0,n)||I(this,e,t,i,Math.pow(2,8*i)-1,0);var r=1,a=0;for(this[t]=255&e;++a>>=0,i>>>=0,n)||I(this,e,t,i,Math.pow(2,8*i)-1,0);var r=i-1,a=1;for(this[t+r]=255&e;--r>=0&&(a*=256);)this[t+r]=e/a&255;return t+i},t.prototype.writeUInt8=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,1,255,0),this[t]=255&e,t+1},t.prototype.writeUInt16LE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},t.prototype.writeUInt16BE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},t.prototype.writeUInt32LE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},t.prototype.writeUInt32BE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},t.prototype.writeIntLE=function(e,t,i,n){if(e=+e,t>>>=0,!n){var r=Math.pow(2,8*i-1);I(this,e,t,i,r-1,-r)}var a=0,s=1,o=0;for(this[t]=255&e;++a>0)-o&255;return t+i},t.prototype.writeIntBE=function(e,t,i,n){if(e=+e,t>>>=0,!n){var r=Math.pow(2,8*i-1);I(this,e,t,i,r-1,-r)}var a=i-1,s=1,o=0;for(this[t+a]=255&e;--a>=0&&(s*=256);)e<0&&0===o&&0!==this[t+a+1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+i},t.prototype.writeInt8=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},t.prototype.writeInt16LE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},t.prototype.writeInt16BE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},t.prototype.writeInt32LE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},t.prototype.writeInt32BE=function(e,t,i){return e=+e,t>>>=0,i||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},t.prototype.writeFloatLE=function(e,t,i){return x(this,e,t,!0,i)},t.prototype.writeFloatBE=function(e,t,i){return x(this,e,t,!1,i)},t.prototype.writeDoubleLE=function(e,t,i){return D(this,e,t,!0,i)},t.prototype.writeDoubleBE=function(e,t,i){return D(this,e,t,!1,i)},t.prototype.copy=function(e,i,n,r){if(!t.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),i>=e.length&&(i=e.length),i||(i=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-i=0;--s)e[s+i]=this[s+n];else Uint8Array.prototype.set.call(e,this.subarray(n,r),i);return a},t.prototype.fill=function(e,i,n,r){if("string"==typeof e){if("string"==typeof i?(r=i,i=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!t.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===e.length){var a=e.charCodeAt(0);("utf8"===r&&a<128||"latin1"===r)&&(e=a)}}else"number"==typeof e&&(e&=255);if(i<0||this.length>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=i;s55295&&i<57344){if(!r){if(i>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&a.push(239,191,189);continue}r=i;continue}if(i<56320){(t-=3)>-1&&a.push(239,191,189),r=i;continue}i=65536+(r-55296<<10|i-56320)}else r&&(t-=3)>-1&&a.push(239,191,189);if(r=null,i<128){if((t-=1)<0)break;a.push(i)}else if(i<2048){if((t-=2)<0)break;a.push(i>>6|192,63&i|128)}else if(i<65536){if((t-=3)<0)break;a.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return a}function M(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(R,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function F(e,t,i,n){for(var r=0;r=t.length||r>=e.length);++r)t[r+i]=e[r];return r}function B(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function N(e){return e!=e}}).call(this,e("buffer").Buffer)},{"base64-js":30,buffer:32,ieee754:36}],33:[function(e,t,i){(function(e){var n,r;n=self,r=function(){return function(){var t={"./node_modules/es6-promise/dist/es6-promise.js": +/*!******************************************************!*\ + !*** ./node_modules/es6-promise/dist/es6-promise.js ***! + \******************************************************/function(t,i,n){ +/*! + * @overview es6-promise - a tiny implementation of Promises/A+. + * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) + * @license Licensed under MIT license + * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE + * @version v4.2.8+1e68dce6 + */ +t.exports=function(){"use strict";function t(e){return"function"==typeof e}var i=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},r=0,a=void 0,s=void 0,o=function(e,t){p[r]=e,p[r+1]=t,2===(r+=2)&&(s?s(m):b())},u="undefined"!=typeof window?window:void 0,l=u||{},h=l.MutationObserver||l.WebKitMutationObserver,d="undefined"==typeof self&&void 0!==e&&"[object process]"==={}.toString.call(e),c="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function f(){var e=setTimeout;return function(){return e(m,1)}}var p=new Array(1e3);function m(){for(var e=0;e0&&s.length>r&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,console&&console.warn}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,i){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:i},r=h.bind(n);return r.listener=i,n.wrapFn=r,r}function c(e,t,i){var n=e._events;if(void 0===n)return[];var r=n[t];return void 0===r?[]:"function"==typeof r?i?[r.listener||r]:[r]:i?function(e){for(var t=new Array(e.length),i=0;i0&&(s=t[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var u=a[e];if(void 0===u)return!1;if("function"==typeof u)n(u,this,t);else{var l=u.length,h=p(u,l);for(i=0;i=0;a--)if(i[a]===t||i[a].listener===t){s=i[a].listener,r=a;break}if(r<0)return this;0===r?i.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return c(this,e,!0)},a.prototype.rawListeners=function(e){return c(this,e,!1)},a.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},a.prototype.listenerCount=f,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},"./node_modules/webworkify-webpack/index.js": +/*!**************************************************!*\ + !*** ./node_modules/webworkify-webpack/index.js ***! + \**************************************************/function(e,t,i){function n(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.m=e,i.c=t,i.i=function(e){return e},i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},i.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/",i.oe=function(e){throw console.error(e),e};var n=i(i.s=ENTRY_MODULE);return n.default||n}function r(e){return(e+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function a(e,t,n){var a={};a[n]=[];var s=t.toString(),o=s.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);if(!o)return a;for(var u,l=o[1],h=new RegExp("(\\\\n|\\W)"+r(l)+"\\(\\s*(/\\*.*?\\*/)?\\s*.*?([\\.|\\-|\\+|\\w|/|@]+).*?\\)","g");u=h.exec(s);)"dll-reference"!==u[3]&&a[n].push(u[3]);for(h=new RegExp("\\("+r(l)+'\\("(dll-reference\\s([\\.|\\-|\\+|\\w|/|@]+))"\\)\\)\\(\\s*(/\\*.*?\\*/)?\\s*.*?([\\.|\\-|\\+|\\w|/|@]+).*?\\)',"g");u=h.exec(s);)e[u[2]]||(a[n].push(u[1]),e[u[2]]=i(u[1]).m),a[u[2]]=a[u[2]]||[],a[u[2]].push(u[4]);for(var d,c=Object.keys(a),f=0;f0}),!1)}e.exports=function(e,t){t=t||{};var r={main:i.m},o=t.all?{main:Object.keys(r.main)}:function(e,t){for(var i={main:[t]},n={main:[]},r={main:{}};s(i);)for(var o=Object.keys(i),u=0;u=e[r]&&t0&&e[0].originalDts=t[r].dts&&et[n].lastSample.originalDts&&e=t[n].lastSample.originalDts&&(n===t.length-1||n0&&(r=this._searchNearestSegmentBefore(i.originalBeginDts)+1),this._lastAppendLocation=r,this._list.splice(r,0,i)},e.prototype.getLastSegmentBefore=function(e){var t=this._searchNearestSegmentBefore(e);return t>=0?this._list[t]:null},e.prototype.getLastSampleBefore=function(e){var t=this.getLastSegmentBefore(e);return null!=t?t.lastSample:null},e.prototype.getLastSyncPointBefore=function(e){for(var t=this._searchNearestSegmentBefore(e),i=this._list[t].syncPoints;0===i.length&&t>0;)t--,i=this._list[t].syncPoints;return i.length>0?i[i.length-1]:null},e}()},"./src/core/mse-controller.js": +/*!************************************!*\ + !*** ./src/core/mse-controller.js ***! + \************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! ../utils/logger.js */"./src/utils/logger.js"),s=i(/*! ../utils/browser.js */"./src/utils/browser.js"),o=i(/*! ./mse-events.js */"./src/core/mse-events.js"),u=i(/*! ./media-segment-info.js */"./src/core/media-segment-info.js"),l=i(/*! ../utils/exception.js */"./src/utils/exception.js"),h=function(){function e(e){this.TAG="MSEController",this._config=e,this._emitter=new(r()),this._config.isLive&&null==this._config.autoCleanupSourceBuffer&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new u.IDRSampleList}return e.prototype.destroy=function(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null},e.prototype.on=function(e,t){this._emitter.addListener(e,t)},e.prototype.off=function(e,t){this._emitter.removeListener(e,t)},e.prototype.attachMediaElement=function(e){if(this._mediaSource)throw new l.IllegalStateException("MediaSource has been attached to an HTMLMediaElement!");var t=this._mediaSource=new window.MediaSource;t.addEventListener("sourceopen",this.e.onSourceOpen),t.addEventListener("sourceended",this.e.onSourceEnded),t.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=e,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),e.src=this._mediaSourceObjectURL},e.prototype.detachMediaElement=function(){if(this._mediaSource){var e=this._mediaSource;for(var t in this._sourceBuffers){var i=this._pendingSegments[t];i.splice(0,i.length),this._pendingSegments[t]=null,this._pendingRemoveRanges[t]=null,this._lastInitSegments[t]=null;var n=this._sourceBuffers[t];if(n){if("closed"!==e.readyState){try{e.removeSourceBuffer(n)}catch(e){a.default.e(this.TAG,e.message)}n.removeEventListener("error",this.e.onSourceBufferError),n.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[t]=null,this._sourceBuffers[t]=null}}if("open"===e.readyState)try{e.endOfStream()}catch(e){a.default.e(this.TAG,e.message)}e.removeEventListener("sourceopen",this.e.onSourceOpen),e.removeEventListener("sourceended",this.e.onSourceEnded),e.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)},e.prototype.appendInitSegment=function(e,t){if(!this._mediaSource||"open"!==this._mediaSource.readyState)return this._pendingSourceBufferInit.push(e),void this._pendingSegments[e.type].push(e);var i=e,n=""+i.container;i.codec&&i.codec.length>0&&(n+=";codecs="+i.codec);var r=!1;if(a.default.v(this.TAG,"Received Initialization Segment, mimeType: "+n),this._lastInitSegments[i.type]=i,n!==this._mimeTypes[i.type]){if(this._mimeTypes[i.type])a.default.v(this.TAG,"Notice: "+i.type+" mimeType changed, origin: "+this._mimeTypes[i.type]+", target: "+n);else{r=!0;try{var u=this._sourceBuffers[i.type]=this._mediaSource.addSourceBuffer(n);u.addEventListener("error",this.e.onSourceBufferError),u.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(e){return a.default.e(this.TAG,e.message),void this._emitter.emit(o.default.ERROR,{code:e.code,msg:e.message})}}this._mimeTypes[i.type]=n}t||this._pendingSegments[i.type].push(i),r||this._sourceBuffers[i.type]&&!this._sourceBuffers[i.type].updating&&this._doAppendSegments(),s.default.safari&&"audio/mpeg"===i.container&&i.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=i.mediaDuration/1e3,this._updateMediaSourceDuration())},e.prototype.appendMediaSegment=function(e){var t=e;this._pendingSegments[t.type].push(t),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();var i=this._sourceBuffers[t.type];!i||i.updating||this._hasPendingRemoveRanges()||this._doAppendSegments()},e.prototype.seek=function(e){for(var t in this._sourceBuffers)if(this._sourceBuffers[t]){var i=this._sourceBuffers[t];if("open"===this._mediaSource.readyState)try{i.abort()}catch(e){a.default.e(this.TAG,e.message)}this._idrList.clear();var n=this._pendingSegments[t];if(n.splice(0,n.length),"closed"!==this._mediaSource.readyState){for(var r=0;r=1&&e-n.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1},e.prototype._doCleanupSourceBuffer=function(){var e=this._mediaElement.currentTime;for(var t in this._sourceBuffers){var i=this._sourceBuffers[t];if(i){for(var n=i.buffered,r=!1,a=0;a=this._config.autoCleanupMaxBackwardDuration){r=!0;var u=e-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[t].push({start:s,end:u})}}else o0&&(isNaN(t)||i>t)&&(a.default.v(this.TAG,"Update MediaSource duration from "+t+" to "+i),this._mediaSource.duration=i),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}},e.prototype._doRemoveRanges=function(){for(var e in this._pendingRemoveRanges)if(this._sourceBuffers[e]&&!this._sourceBuffers[e].updating)for(var t=this._sourceBuffers[e],i=this._pendingRemoveRanges[e];i.length&&!t.updating;){var n=i.shift();t.remove(n.start,n.end)}},e.prototype._doAppendSegments=function(){var e=this._pendingSegments;for(var t in e)if(this._sourceBuffers[t]&&!this._sourceBuffers[t].updating&&e[t].length>0){var i=e[t].shift();if(i.timestampOffset){var n=this._sourceBuffers[t].timestampOffset,r=i.timestampOffset/1e3;Math.abs(n-r)>.1&&(a.default.v(this.TAG,"Update MPEG audio timestampOffset from "+n+" to "+r),this._sourceBuffers[t].timestampOffset=r),delete i.timestampOffset}if(!i.data||0===i.data.byteLength)continue;try{this._sourceBuffers[t].appendBuffer(i.data),this._isBufferFull=!1,"video"===t&&i.hasOwnProperty("info")&&this._idrList.appendArray(i.info.syncPoints)}catch(e){this._pendingSegments[t].unshift(i),22===e.code?(this._isBufferFull||this._emitter.emit(o.default.BUFFER_FULL),this._isBufferFull=!0):(a.default.e(this.TAG,e.message),this._emitter.emit(o.default.ERROR,{code:e.code,msg:e.message}))}}},e.prototype._onSourceOpen=function(){if(a.default.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0)for(var e=this._pendingSourceBufferInit;e.length;){var t=e.shift();this.appendInitSegment(t,!0)}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(o.default.SOURCE_OPEN)},e.prototype._onSourceEnded=function(){a.default.v(this.TAG,"MediaSource onSourceEnded")},e.prototype._onSourceClose=function(){a.default.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&null!=this.e&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))},e.prototype._hasPendingSegments=function(){var e=this._pendingSegments;return e.video.length>0||e.audio.length>0},e.prototype._hasPendingRemoveRanges=function(){var e=this._pendingRemoveRanges;return e.video.length>0||e.audio.length>0},e.prototype._onSourceBufferUpdateEnd=function(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(o.default.UPDATE_END)},e.prototype._onSourceBufferError=function(e){a.default.e(this.TAG,"SourceBuffer Error: "+e)},e}();t.default=h},"./src/core/mse-events.js": +/*!********************************!*\ + !*** ./src/core/mse-events.js ***! + \********************************/function(e,t,i){"use strict";i.r(t),t.default={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"}},"./src/core/transmuxer.js": +/*!********************************!*\ + !*** ./src/core/transmuxer.js ***! + \********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! webworkify-webpack */"./node_modules/webworkify-webpack/index.js"),s=i.n(a),o=i(/*! ../utils/logger.js */"./src/utils/logger.js"),u=i(/*! ../utils/logging-control.js */"./src/utils/logging-control.js"),l=i(/*! ./transmuxing-controller.js */"./src/core/transmuxing-controller.js"),h=i(/*! ./transmuxing-events.js */"./src/core/transmuxing-events.js"),d=i(/*! ./media-info.js */"./src/core/media-info.js"),c=function(){function e(e,t){if(this.TAG="Transmuxer",this._emitter=new(r()),t.enableWorker&&"undefined"!=typeof Worker)try{this._worker=s()(/*! ./transmuxing-worker */"./src/core/transmuxing-worker.js"),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[e,t]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},u.default.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:u.default.getConfig()})}catch(i){o.default.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new l.default(e,t)}else this._controller=new l.default(e,t);if(this._controller){var i=this._controller;i.on(h.default.IO_ERROR,this._onIOError.bind(this)),i.on(h.default.DEMUX_ERROR,this._onDemuxError.bind(this)),i.on(h.default.INIT_SEGMENT,this._onInitSegment.bind(this)),i.on(h.default.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),i.on(h.default.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),i.on(h.default.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),i.on(h.default.MEDIA_INFO,this._onMediaInfo.bind(this)),i.on(h.default.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),i.on(h.default.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),i.on(h.default.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),i.on(h.default.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}return e.prototype.destroy=function(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),u.default.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null},e.prototype.on=function(e,t){this._emitter.addListener(e,t)},e.prototype.off=function(e,t){this._emitter.removeListener(e,t)},e.prototype.hasWorker=function(){return null!=this._worker},e.prototype.open=function(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()},e.prototype.close=function(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()},e.prototype.seek=function(e){this._worker?this._worker.postMessage({cmd:"seek",param:e}):this._controller.seek(e)},e.prototype.pause=function(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()},e.prototype.resume=function(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()},e.prototype._onInitSegment=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(h.default.INIT_SEGMENT,e,t)}))},e.prototype._onMediaSegment=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(h.default.MEDIA_SEGMENT,e,t)}))},e.prototype._onLoadingComplete=function(){var e=this;Promise.resolve().then((function(){e._emitter.emit(h.default.LOADING_COMPLETE)}))},e.prototype._onRecoveredEarlyEof=function(){var e=this;Promise.resolve().then((function(){e._emitter.emit(h.default.RECOVERED_EARLY_EOF)}))},e.prototype._onMediaInfo=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(h.default.MEDIA_INFO,e)}))},e.prototype._onMetaDataArrived=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(h.default.METADATA_ARRIVED,e)}))},e.prototype._onScriptDataArrived=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(h.default.SCRIPTDATA_ARRIVED,e)}))},e.prototype._onStatisticsInfo=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(h.default.STATISTICS_INFO,e)}))},e.prototype._onIOError=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(h.default.IO_ERROR,e,t)}))},e.prototype._onDemuxError=function(e,t){var i=this;Promise.resolve().then((function(){i._emitter.emit(h.default.DEMUX_ERROR,e,t)}))},e.prototype._onRecommendSeekpoint=function(e){var t=this;Promise.resolve().then((function(){t._emitter.emit(h.default.RECOMMEND_SEEKPOINT,e)}))},e.prototype._onLoggingConfigChanged=function(e){this._worker&&this._worker.postMessage({cmd:"logging_config",param:e})},e.prototype._onWorkerMessage=function(e){var t=e.data,i=t.data;if("destroyed"===t.msg||this._workerDestroying)return this._workerDestroying=!1,this._worker.terminate(),void(this._worker=null);switch(t.msg){case h.default.INIT_SEGMENT:case h.default.MEDIA_SEGMENT:this._emitter.emit(t.msg,i.type,i.data);break;case h.default.LOADING_COMPLETE:case h.default.RECOVERED_EARLY_EOF:this._emitter.emit(t.msg);break;case h.default.MEDIA_INFO:Object.setPrototypeOf(i,d.default.prototype),this._emitter.emit(t.msg,i);break;case h.default.METADATA_ARRIVED:case h.default.SCRIPTDATA_ARRIVED:case h.default.STATISTICS_INFO:this._emitter.emit(t.msg,i);break;case h.default.IO_ERROR:case h.default.DEMUX_ERROR:this._emitter.emit(t.msg,i.type,i.info);break;case h.default.RECOMMEND_SEEKPOINT:this._emitter.emit(t.msg,i);break;case"logcat_callback":o.default.emitter.emit("log",i.type,i.logcat)}},e}();t.default=c},"./src/core/transmuxing-controller.js": +/*!********************************************!*\ + !*** ./src/core/transmuxing-controller.js ***! + \********************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! ../utils/logger.js */"./src/utils/logger.js"),s=i(/*! ../utils/browser.js */"./src/utils/browser.js"),o=i(/*! ./media-info.js */"./src/core/media-info.js"),u=i(/*! ../demux/flv-demuxer.js */"./src/demux/flv-demuxer.js"),l=i(/*! ../remux/mp4-remuxer.js */"./src/remux/mp4-remuxer.js"),h=i(/*! ../demux/demux-errors.js */"./src/demux/demux-errors.js"),d=i(/*! ../io/io-controller.js */"./src/io/io-controller.js"),c=i(/*! ./transmuxing-events.js */"./src/core/transmuxing-events.js"),f=function(){function e(e,t){this.TAG="TransmuxingController",this._emitter=new(r()),this._config=t,e.segments||(e.segments=[{duration:e.duration,filesize:e.filesize,url:e.url}]),"boolean"!=typeof e.cors&&(e.cors=!0),"boolean"!=typeof e.withCredentials&&(e.withCredentials=!1),this._mediaDataSource=e,this._currentSegmentIndex=0;var i=0;this._mediaDataSource.segments.forEach((function(n){n.timestampBase=i,i+=n.duration,n.cors=e.cors,n.withCredentials=e.withCredentials,t.referrerPolicy&&(n.referrerPolicy=t.referrerPolicy)})),isNaN(i)||this._mediaDataSource.duration===i||(this._mediaDataSource.duration=i),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}return e.prototype.destroy=function(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null},e.prototype.on=function(e,t){this._emitter.addListener(e,t)},e.prototype.off=function(e,t){this._emitter.removeListener(e,t)},e.prototype.start=function(){this._loadSegment(0),this._enableStatisticsReporter()},e.prototype._loadSegment=function(e,t){this._currentSegmentIndex=e;var i=this._mediaDataSource.segments[e],n=this._ioctl=new d.default(i,this._config,e);n.onError=this._onIOException.bind(this),n.onSeeked=this._onIOSeeked.bind(this),n.onComplete=this._onIOComplete.bind(this),n.onRedirect=this._onIORedirect.bind(this),n.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),t?this._demuxer.bindDataSource(this._ioctl):n.onDataArrival=this._onInitChunkArrival.bind(this),n.open(t)},e.prototype.stop=function(){this._internalAbort(),this._disableStatisticsReporter()},e.prototype._internalAbort=function(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)},e.prototype.pause=function(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())},e.prototype.resume=function(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())},e.prototype.seek=function(e){if(null!=this._mediaInfo&&this._mediaInfo.isSeekable()){var t=this._searchSegmentIndexContains(e);if(t===this._currentSegmentIndex){var i=this._mediaInfo.segments[t];if(null==i)this._pendingSeekTime=e;else{var n=i.getNearestKeyframe(e);this._remuxer.seek(n.milliseconds),this._ioctl.seek(n.fileposition),this._pendingResolveSeekPoint=n.milliseconds}}else{var r=this._mediaInfo.segments[t];null==r?(this._pendingSeekTime=e,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(t)):(n=r.getNearestKeyframe(e),this._internalAbort(),this._remuxer.seek(e),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[t].timestampBase,this._loadSegment(t,n.fileposition),this._pendingResolveSeekPoint=n.milliseconds,this._reportSegmentMediaInfo(t))}this._enableStatisticsReporter()}},e.prototype._searchSegmentIndexContains=function(e){for(var t=this._mediaDataSource.segments,i=t.length-1,n=0;n0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,r=this._demuxer.parseChunks(e,t);else if((n=u.default.probe(e)).match){this._demuxer=new u.default(n,this._config),this._remuxer||(this._remuxer=new l.default(this._config));var s=this._mediaDataSource;null==s.duration||isNaN(s.duration)||(this._demuxer.overridedDuration=s.duration),"boolean"==typeof s.hasAudio&&(this._demuxer.overridedHasAudio=s.hasAudio),"boolean"==typeof s.hasVideo&&(this._demuxer.overridedHasVideo=s.hasVideo),this._demuxer.timestampBase=s.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),r=this._demuxer.parseChunks(e,t)}else n=null,a.default.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then((function(){i._internalAbort()})),this._emitter.emit(c.default.DEMUX_ERROR,h.default.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),r=0;return r},e.prototype._onMediaInfo=function(e){var t=this;null==this._mediaInfo&&(this._mediaInfo=Object.assign({},e),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,o.default.prototype));var i=Object.assign({},e);Object.setPrototypeOf(i,o.default.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=i,this._reportSegmentMediaInfo(this._currentSegmentIndex),null!=this._pendingSeekTime&&Promise.resolve().then((function(){var e=t._pendingSeekTime;t._pendingSeekTime=null,t.seek(e)}))},e.prototype._onMetaDataArrived=function(e){this._emitter.emit(c.default.METADATA_ARRIVED,e)},e.prototype._onScriptDataArrived=function(e){this._emitter.emit(c.default.SCRIPTDATA_ARRIVED,e)},e.prototype._onIOSeeked=function(){this._remuxer.insertDiscontinuity()},e.prototype._onIOComplete=function(e){var t=e+1;t0&&i[0].originalDts===n&&(n=i[0].pts),this._emitter.emit(c.default.RECOMMEND_SEEKPOINT,n)}},e.prototype._enableStatisticsReporter=function(){null==this._statisticsReporter&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))},e.prototype._disableStatisticsReporter=function(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)},e.prototype._reportSegmentMediaInfo=function(e){var t=this._mediaInfo.segments[e],i=Object.assign({},t);i.duration=this._mediaInfo.duration,i.segmentCount=this._mediaInfo.segmentCount,delete i.segments,delete i.keyframesIndex,this._emitter.emit(c.default.MEDIA_INFO,i)},e.prototype._reportStatisticsInfo=function(){var e={};e.url=this._ioctl.currentURL,e.hasRedirect=this._ioctl.hasRedirect,e.hasRedirect&&(e.redirectedURL=this._ioctl.currentRedirectedURL),e.speed=this._ioctl.currentSpeed,e.loaderType=this._ioctl.loaderType,e.currentSegmentIndex=this._currentSegmentIndex,e.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(c.default.STATISTICS_INFO,e)},e}();t.default=f},"./src/core/transmuxing-events.js": +/*!****************************************!*\ + !*** ./src/core/transmuxing-events.js ***! + \****************************************/function(e,t,i){"use strict";i.r(t),t.default={IO_ERROR:"io_error",DEMUX_ERROR:"demux_error",INIT_SEGMENT:"init_segment",MEDIA_SEGMENT:"media_segment",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info",RECOMMEND_SEEKPOINT:"recommend_seekpoint"}},"./src/core/transmuxing-worker.js": +/*!****************************************!*\ + !*** ./src/core/transmuxing-worker.js ***! + \****************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ../utils/logging-control.js */"./src/utils/logging-control.js"),r=i(/*! ../utils/polyfill.js */"./src/utils/polyfill.js"),a=i(/*! ./transmuxing-controller.js */"./src/core/transmuxing-controller.js"),s=i(/*! ./transmuxing-events.js */"./src/core/transmuxing-events.js");t.default=function(e){var t=null,i=function(t,i){e.postMessage({msg:"logcat_callback",data:{type:t,logcat:i}})}.bind(this);function o(t,i){var n={msg:s.default.INIT_SEGMENT,data:{type:t,data:i}};e.postMessage(n,[i.data])}function u(t,i){var n={msg:s.default.MEDIA_SEGMENT,data:{type:t,data:i}};e.postMessage(n,[i.data])}function l(){var t={msg:s.default.LOADING_COMPLETE};e.postMessage(t)}function h(){var t={msg:s.default.RECOVERED_EARLY_EOF};e.postMessage(t)}function d(t){var i={msg:s.default.MEDIA_INFO,data:t};e.postMessage(i)}function c(t){var i={msg:s.default.METADATA_ARRIVED,data:t};e.postMessage(i)}function f(t){var i={msg:s.default.SCRIPTDATA_ARRIVED,data:t};e.postMessage(i)}function p(t){var i={msg:s.default.STATISTICS_INFO,data:t};e.postMessage(i)}function m(t,i){e.postMessage({msg:s.default.IO_ERROR,data:{type:t,info:i}})}function g(t,i){e.postMessage({msg:s.default.DEMUX_ERROR,data:{type:t,info:i}})}function _(t){e.postMessage({msg:s.default.RECOMMEND_SEEKPOINT,data:t})}r.default.install(),e.addEventListener("message",(function(r){switch(r.data.cmd){case"init":(t=new a.default(r.data.param[0],r.data.param[1])).on(s.default.IO_ERROR,m.bind(this)),t.on(s.default.DEMUX_ERROR,g.bind(this)),t.on(s.default.INIT_SEGMENT,o.bind(this)),t.on(s.default.MEDIA_SEGMENT,u.bind(this)),t.on(s.default.LOADING_COMPLETE,l.bind(this)),t.on(s.default.RECOVERED_EARLY_EOF,h.bind(this)),t.on(s.default.MEDIA_INFO,d.bind(this)),t.on(s.default.METADATA_ARRIVED,c.bind(this)),t.on(s.default.SCRIPTDATA_ARRIVED,f.bind(this)),t.on(s.default.STATISTICS_INFO,p.bind(this)),t.on(s.default.RECOMMEND_SEEKPOINT,_.bind(this));break;case"destroy":t&&(t.destroy(),t=null),e.postMessage({msg:"destroyed"});break;case"start":t.start();break;case"stop":t.stop();break;case"seek":t.seek(r.data.param);break;case"pause":t.pause();break;case"resume":t.resume();break;case"logging_config":var v=r.data.param;n.default.applyConfig(v),!0===v.enableCallback?n.default.addLogListener(i):n.default.removeLogListener(i)}}))}},"./src/demux/amf-parser.js": +/*!*********************************!*\ + !*** ./src/demux/amf-parser.js ***! + \*********************************/function(e,t,i){"use strict";i.r(t);var n,r=i(/*! ../utils/logger.js */"./src/utils/logger.js"),a=i(/*! ../utils/utf8-conv.js */"./src/utils/utf8-conv.js"),s=i(/*! ../utils/exception.js */"./src/utils/exception.js"),o=(n=new ArrayBuffer(2),new DataView(n).setInt16(0,256,!0),256===new Int16Array(n)[0]),u=function(){function e(){}return e.parseScriptData=function(t,i,n){var a={};try{var s=e.parseValue(t,i,n),o=e.parseValue(t,i+s.size,n-s.size);a[s.data]=o.data}catch(e){r.default.e("AMF",e.toString())}return a},e.parseObject=function(t,i,n){if(n<3)throw new s.IllegalStateException("Data not enough when parse ScriptDataObject");var r=e.parseString(t,i,n),a=e.parseValue(t,i+r.size,n-r.size),o=a.objectEnd;return{data:{name:r.data,value:a.data},size:r.size+a.size,objectEnd:o}},e.parseVariable=function(t,i,n){return e.parseObject(t,i,n)},e.parseString=function(e,t,i){if(i<2)throw new s.IllegalStateException("Data not enough when parse String");var n=new DataView(e,t,i).getUint16(0,!o);return{data:n>0?(0,a.default)(new Uint8Array(e,t+2,n)):"",size:2+n}},e.parseLongString=function(e,t,i){if(i<4)throw new s.IllegalStateException("Data not enough when parse LongString");var n=new DataView(e,t,i).getUint32(0,!o);return{data:n>0?(0,a.default)(new Uint8Array(e,t+4,n)):"",size:4+n}},e.parseDate=function(e,t,i){if(i<10)throw new s.IllegalStateException("Data size invalid when parse Date");var n=new DataView(e,t,i),r=n.getFloat64(0,!o),a=n.getInt16(8,!o);return{data:new Date(r+=60*a*1e3),size:10}},e.parseValue=function(t,i,n){if(n<1)throw new s.IllegalStateException("Data not enough when parse Value");var a,u=new DataView(t,i,n),l=1,h=u.getUint8(0),d=!1;try{switch(h){case 0:a=u.getFloat64(1,!o),l+=8;break;case 1:a=!!u.getUint8(1),l+=1;break;case 2:var c=e.parseString(t,i+1,n-1);a=c.data,l+=c.size;break;case 3:a={};var f=0;for(9==(16777215&u.getUint32(n-4,!o))&&(f=3);l32)throw new n.InvalidArgumentException("ExpGolomb: readBits() bits exceeded max 32bits!");if(e<=this._current_word_bits_left){var t=this._current_word>>>32-e;return this._current_word<<=e,this._current_word_bits_left-=e,t}var i=this._current_word_bits_left?this._current_word:0;i>>>=32-this._current_word_bits_left;var r=e-this._current_word_bits_left;this._fillCurrentWord();var a=Math.min(r,this._current_word_bits_left),s=this._current_word>>>32-a;return this._current_word<<=a,this._current_word_bits_left-=a,i=i<>>e))return this._current_word<<=e,this._current_word_bits_left-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()},e.prototype.readUEG=function(){var e=this._skipLeadingZero();return this.readBits(e+1)-1},e.prototype.readSEG=function(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)},e}();t.default=r},"./src/demux/flv-demuxer.js": +/*!**********************************!*\ + !*** ./src/demux/flv-demuxer.js ***! + \**********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ../utils/logger.js */"./src/utils/logger.js"),r=i(/*! ./amf-parser.js */"./src/demux/amf-parser.js"),a=i(/*! ./sps-parser.js */"./src/demux/sps-parser.js"),s=i(/*! ./demux-errors.js */"./src/demux/demux-errors.js"),o=i(/*! ../core/media-info.js */"./src/core/media-info.js"),u=i(/*! ../utils/exception.js */"./src/utils/exception.js"),l=function(){function e(e,t){var i;this.TAG="FLVDemuxer",this._config=t,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=e.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=e.hasAudioTrack,this._hasVideo=e.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new o.default,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=(i=new ArrayBuffer(2),new DataView(i).setInt16(0,256,!0),256===new Int16Array(i)[0])}return e.prototype.destroy=function(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null},e.probe=function(e){var t=new Uint8Array(e),i={match:!1};if(70!==t[0]||76!==t[1]||86!==t[2]||1!==t[3])return i;var n,r,a=(4&t[4])>>>2!=0,s=0!=(1&t[4]),o=(n=t)[r=5]<<24|n[r+1]<<16|n[r+2]<<8|n[r+3];return o<9?i:{match:!0,consumed:o,dataOffset:o,hasAudioTrack:a,hasVideoTrack:s}},e.prototype.bindDataSource=function(e){return e.onDataArrival=this.parseChunks.bind(this),this},Object.defineProperty(e.prototype,"onTrackMetadata",{get:function(){return this._onTrackMetadata},set:function(e){this._onTrackMetadata=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onMediaInfo",{get:function(){return this._onMediaInfo},set:function(e){this._onMediaInfo=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onMetaDataArrived",{get:function(){return this._onMetaDataArrived},set:function(e){this._onMetaDataArrived=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScriptDataArrived",{get:function(){return this._onScriptDataArrived},set:function(e){this._onScriptDataArrived=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onError",{get:function(){return this._onError},set:function(e){this._onError=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onDataAvailable",{get:function(){return this._onDataAvailable},set:function(e){this._onDataAvailable=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"timestampBase",{get:function(){return this._timestampBase},set:function(e){this._timestampBase=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"overridedDuration",{get:function(){return this._duration},set:function(e){this._durationOverrided=!0,this._duration=e,this._mediaInfo.duration=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"overridedHasAudio",{set:function(e){this._hasAudioFlagOverrided=!0,this._hasAudio=e,this._mediaInfo.hasAudio=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"overridedHasVideo",{set:function(e){this._hasVideoFlagOverrided=!0,this._hasVideo=e,this._mediaInfo.hasVideo=e},enumerable:!1,configurable:!0}),e.prototype.resetMediaInfo=function(){this._mediaInfo=new o.default},e.prototype._isInitialMetadataDispatched=function(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!(this._hasAudio||!this._hasVideo)&&this._videoInitialMetadataDispatched},e.prototype.parseChunks=function(t,i){if(!(this._onError&&this._onMediaInfo&&this._onTrackMetadata&&this._onDataAvailable))throw new u.IllegalStateException("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");var r=0,a=this._littleEndian;if(0===i){if(!(t.byteLength>13))return 0;r=e.probe(t).dataOffset}for(this._firstParse&&(this._firstParse=!1,i+r!==this._dataOffset&&n.default.w(this.TAG,"First time parsing but chunk byteStart invalid!"),0!==(s=new DataView(t,r)).getUint32(0,!a)&&n.default.w(this.TAG,"PrevTagSize0 !== 0 !!!"),r+=4);rt.byteLength)break;var o=s.getUint8(0),l=16777215&s.getUint32(0,!a);if(r+11+l+4>t.byteLength)break;if(8===o||9===o||18===o){var h=s.getUint8(4),d=s.getUint8(5),c=s.getUint8(6)|d<<8|h<<16|s.getUint8(7)<<24;0!=(16777215&s.getUint32(7,!a))&&n.default.w(this.TAG,"Meet tag which has StreamID != 0!");var f=r+11;switch(o){case 8:this._parseAudioData(t,f,l,c);break;case 9:this._parseVideoData(t,f,l,c,i+r);break;case 18:this._parseScriptData(t,f,l)}var p=s.getUint32(11+l,!a);p!==11+l&&n.default.w(this.TAG,"Invalid PrevTagSize "+p),r+=11+l+4}else n.default.w(this.TAG,"Unsupported tag type "+o+", skipped"),r+=11+l+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),r},e.prototype._parseScriptData=function(e,t,i){var a=r.default.parseScriptData(e,t,i);if(a.hasOwnProperty("onMetaData")){if(null==a.onMetaData||"object"!=typeof a.onMetaData)return void n.default.w(this.TAG,"Invalid onMetaData structure!");this._metadata&&n.default.w(this.TAG,"Found another onMetaData tag!"),this._metadata=a;var s=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},s)),"boolean"==typeof s.hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=s.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),"boolean"==typeof s.hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=s.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),"number"==typeof s.audiodatarate&&(this._mediaInfo.audioDataRate=s.audiodatarate),"number"==typeof s.videodatarate&&(this._mediaInfo.videoDataRate=s.videodatarate),"number"==typeof s.width&&(this._mediaInfo.width=s.width),"number"==typeof s.height&&(this._mediaInfo.height=s.height),"number"==typeof s.duration){if(!this._durationOverrided){var o=Math.floor(s.duration*this._timescale);this._duration=o,this._mediaInfo.duration=o}}else this._mediaInfo.duration=0;if("number"==typeof s.framerate){var u=Math.floor(1e3*s.framerate);if(u>0){var l=u/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=l,this._referenceFrameRate.fps_num=u,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=l}}if("object"==typeof s.keyframes){this._mediaInfo.hasKeyframesIndex=!0;var h=s.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(h),s.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=s,n.default.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(a).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},a))},e.prototype._parseKeyframesIndex=function(e){for(var t=[],i=[],n=1;n>>4;if(2===o||10===o){var u=0,l=(12&a)>>>2;if(l>=0&&l<=4){u=this._flvSoundRateTable[l];var h=1&a,d=this._audioMetadata,c=this._audioTrack;if(d||(!1===this._hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),(d=this._audioMetadata={}).type="audio",d.id=c.id,d.timescale=this._timescale,d.duration=this._duration,d.audioSampleRate=u,d.channelCount=0===h?1:2),10===o){var f=this._parseAACAudioData(e,t+1,i-1);if(null==f)return;if(0===f.packetType){d.config&&n.default.w(this.TAG,"Found another AudioSpecificConfig!");var p=f.data;d.audioSampleRate=p.samplingRate,d.channelCount=p.channelCount,d.codec=p.codec,d.originalCodec=p.originalCodec,d.config=p.config,d.refSampleDuration=1024/d.audioSampleRate*d.timescale,n.default.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",d),(_=this._mediaInfo).audioCodec=d.originalCodec,_.audioSampleRate=d.audioSampleRate,_.audioChannelCount=d.channelCount,_.hasVideo?null!=_.videoCodec&&(_.mimeType='video/x-flv; codecs="'+_.videoCodec+","+_.audioCodec+'"'):_.mimeType='video/x-flv; codecs="'+_.audioCodec+'"',_.isComplete()&&this._onMediaInfo(_)}else if(1===f.packetType){var m=this._timestampBase+r,g={unit:f.data,length:f.data.byteLength,dts:m,pts:m};c.samples.push(g),c.length+=f.data.length}else n.default.e(this.TAG,"Flv: Unsupported AAC data type "+f.packetType)}else if(2===o){if(!d.codec){var _;if(null==(p=this._parseMP3AudioData(e,t+1,i-1,!0)))return;d.audioSampleRate=p.samplingRate,d.channelCount=p.channelCount,d.codec=p.codec,d.originalCodec=p.originalCodec,d.refSampleDuration=1152/d.audioSampleRate*d.timescale,n.default.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",d),(_=this._mediaInfo).audioCodec=d.codec,_.audioSampleRate=d.audioSampleRate,_.audioChannelCount=d.channelCount,_.audioDataRate=p.bitRate,_.hasVideo?null!=_.videoCodec&&(_.mimeType='video/x-flv; codecs="'+_.videoCodec+","+_.audioCodec+'"'):_.mimeType='video/x-flv; codecs="'+_.audioCodec+'"',_.isComplete()&&this._onMediaInfo(_)}var v=this._parseMP3AudioData(e,t+1,i-1,!1);if(null==v)return;m=this._timestampBase+r;var y={unit:v,length:v.byteLength,dts:m,pts:m};c.samples.push(y),c.length+=v.length}}else this._onError(s.default.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+l)}else this._onError(s.default.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+o)}},e.prototype._parseAACAudioData=function(e,t,i){if(!(i<=1)){var r={},a=new Uint8Array(e,t,i);return r.packetType=a[0],0===a[0]?r.data=this._parseAACAudioSpecificConfig(e,t+1,i-1):r.data=a.subarray(1),r}n.default.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!")},e.prototype._parseAACAudioSpecificConfig=function(e,t,i){var n,r,a=new Uint8Array(e,t,i),o=null,u=0,l=null;if(u=n=a[0]>>>3,(r=(7&a[0])<<1|a[1]>>>7)<0||r>=this._mpegSamplingRates.length)this._onError(s.default.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");else{var h=this._mpegSamplingRates[r],d=(120&a[1])>>>3;if(!(d<0||d>=8)){5===u&&(l=(7&a[1])<<1|a[2]>>>7,a[2]);var c=self.navigator.userAgent.toLowerCase();return-1!==c.indexOf("firefox")?r>=6?(u=5,o=new Array(4),l=r-3):(u=2,o=new Array(2),l=r):-1!==c.indexOf("android")?(u=2,o=new Array(2),l=r):(u=5,l=r,o=new Array(4),r>=6?l=r-3:1===d&&(u=2,o=new Array(2),l=r)),o[0]=u<<3,o[0]|=(15&r)>>>1,o[1]=(15&r)<<7,o[1]|=(15&d)<<3,5===u&&(o[1]|=(15&l)>>>1,o[2]=(1&l)<<7,o[2]|=8,o[3]=0),{config:o,samplingRate:h,channelCount:d,codec:"mp4a.40."+u,originalCodec:"mp4a.40."+n}}this._onError(s.default.FORMAT_ERROR,"Flv: AAC invalid channel configuration")}},e.prototype._parseMP3AudioData=function(e,t,i,r){if(!(i<4)){this._littleEndian;var a=new Uint8Array(e,t,i),s=null;if(r){if(255!==a[0])return;var o=a[1]>>>3&3,u=(6&a[1])>>1,l=(240&a[2])>>>4,h=(12&a[2])>>>2,d=3!=(a[3]>>>6&3)?2:1,c=0,f=0;switch(o){case 0:c=this._mpegAudioV25SampleRateTable[h];break;case 2:c=this._mpegAudioV20SampleRateTable[h];break;case 3:c=this._mpegAudioV10SampleRateTable[h]}switch(u){case 1:l>>4,l=15&o;7===l?this._parseAVCVideoPacket(e,t+1,i-1,r,a,u):this._onError(s.default.CODEC_UNSUPPORTED,"Flv: Unsupported codec in video frame: "+l)}},e.prototype._parseAVCVideoPacket=function(e,t,i,r,a,o){if(i<4)n.default.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");else{var u=this._littleEndian,l=new DataView(e,t,i),h=l.getUint8(0),d=(16777215&l.getUint32(0,!u))<<8>>8;if(0===h)this._parseAVCDecoderConfigurationRecord(e,t+4,i-4);else if(1===h)this._parseAVCVideoData(e,t+4,i-4,r,a,o,d);else if(2!==h)return void this._onError(s.default.FORMAT_ERROR,"Flv: Invalid video packet type "+h)}},e.prototype._parseAVCDecoderConfigurationRecord=function(e,t,i){if(i<7)n.default.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");else{var r=this._videoMetadata,o=this._videoTrack,u=this._littleEndian,l=new DataView(e,t,i);r?void 0!==r.avcc&&n.default.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(!1===this._hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),(r=this._videoMetadata={}).type="video",r.id=o.id,r.timescale=this._timescale,r.duration=this._duration);var h=l.getUint8(0),d=l.getUint8(1);if(l.getUint8(2),l.getUint8(3),1===h&&0!==d)if(this._naluLengthSize=1+(3&l.getUint8(4)),3===this._naluLengthSize||4===this._naluLengthSize){var c=31&l.getUint8(5);if(0!==c){c>1&&n.default.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: SPS Count = "+c);for(var f=6,p=0;p1&&n.default.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: PPS Count = "+C),f++,p=0;p=i){n.default.w(this.TAG,"Malformed Nalu near timestamp "+p+", offset = "+c+", dataSize = "+i);break}var g=l.getUint32(c,!u);if(3===f&&(g>>>=8),g>i-f)return void n.default.w(this.TAG,"Malformed Nalus near timestamp "+p+", NaluSize > DataSize!");var _=31&l.getUint8(c+f);5===_&&(m=!0);var v=new Uint8Array(e,t+c,f+g),y={type:_,data:v};h.push(y),d+=v.byteLength,c+=f+g}if(h.length){var b=this._videoTrack,T={units:h,length:d,isKeyframe:m,dts:p,cts:o,pts:p+o};m&&(T.fileposition=a),b.samples.push(T),b.length+=d}},e}();t.default=l},"./src/demux/sps-parser.js": +/*!*********************************!*\ + !*** ./src/demux/sps-parser.js ***! + \*********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ./exp-golomb.js */"./src/demux/exp-golomb.js"),r=function(){function e(){}return e._ebsp2rbsp=function(e){for(var t=e,i=t.byteLength,n=new Uint8Array(i),r=0,a=0;a=2&&3===t[a]&&0===t[a-1]&&0===t[a-2]||(n[r]=t[a],r++);return new Uint8Array(n.buffer,0,r)},e.parseSPS=function(t){var i=e._ebsp2rbsp(t),r=new n.default(i);r.readByte();var a=r.readByte();r.readByte();var s=r.readByte();r.readUEG();var o=e.getProfileString(a),u=e.getLevelString(s),l=1,h=420,d=8;if((100===a||110===a||122===a||244===a||44===a||83===a||86===a||118===a||128===a||138===a||144===a)&&(3===(l=r.readUEG())&&r.readBits(1),l<=3&&(h=[0,420,422,444][l]),d=r.readUEG()+8,r.readUEG(),r.readBits(1),r.readBool()))for(var c=3!==l?8:12,f=0;f0&&L<16?(w=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][L-1],C=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][L-1]):255===L&&(w=r.readByte()<<8|r.readByte(),C=r.readByte()<<8|r.readByte())}if(r.readBool()&&r.readBool(),r.readBool()&&(r.readBits(4),r.readBool()&&r.readBits(24)),r.readBool()&&(r.readUEG(),r.readUEG()),r.readBool()){var x=r.readBits(32),D=r.readBits(32);k=r.readBool(),A=(P=D)/(I=2*x)}}var R=1;1===w&&1===C||(R=w/C);var O=0,U=0;0===l?(O=1,U=2-y):(O=3===l?1:2,U=(1===l?2:1)*(2-y));var M=16*(_+1),F=16*(v+1)*(2-y);M-=(b+T)*O,F-=(S+E)*U;var B=Math.ceil(M*R);return r.destroy(),r=null,{profile_string:o,level_string:u,bit_depth:d,ref_frames:g,chroma_format:h,chroma_format_string:e.getChromaFormatString(h),frame_rate:{fixed:k,fps:A,fps_den:I,fps_num:P},sar_ratio:{width:w,height:C},codec_size:{width:M,height:F},present_size:{width:B,height:F}}},e._skipScalingList=function(e,t){for(var i=8,n=8,r=0;r=15048,t=!r.default.msedge||e;return self.fetch&&self.ReadableStream&&t}catch(e){return!1}},t.prototype.destroy=function(){this.isWorking()&&this.abort(),e.prototype.destroy.call(this)},t.prototype.open=function(e,t){var i=this;this._dataSource=e,this._range=t;var n=e.url;this._config.reuseRedirectedURL&&null!=e.redirectedURL&&(n=e.redirectedURL);var r=this._seekHandler.getConfig(n,t),o=new self.Headers;if("object"==typeof r.headers){var u=r.headers;for(var l in u)u.hasOwnProperty(l)&&o.append(l,u[l])}var h={method:"GET",headers:o,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if("object"==typeof this._config.headers)for(var l in this._config.headers)o.append(l,this._config.headers[l]);!1===e.cors&&(h.mode="same-origin"),e.withCredentials&&(h.credentials="include"),e.referrerPolicy&&(h.referrerPolicy=e.referrerPolicy),self.AbortController&&(this._abortController=new self.AbortController,h.signal=this._abortController.signal),this._status=a.LoaderStatus.kConnecting,self.fetch(r.url,h).then((function(e){if(i._requestAbort)return i._status=a.LoaderStatus.kIdle,void e.body.cancel();if(e.ok&&e.status>=200&&e.status<=299){if(e.url!==r.url&&i._onURLRedirect){var t=i._seekHandler.removeURLParameters(e.url);i._onURLRedirect(t)}var n=e.headers.get("Content-Length");return null!=n&&(i._contentLength=parseInt(n),0!==i._contentLength&&i._onContentLengthKnown&&i._onContentLengthKnown(i._contentLength)),i._pump.call(i,e.body.getReader())}if(i._status=a.LoaderStatus.kError,!i._onError)throw new s.RuntimeException("FetchStreamLoader: Http code invalid, "+e.status+" "+e.statusText);i._onError(a.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:e.status,msg:e.statusText})})).catch((function(e){if(!i._abortController||!i._abortController.signal.aborted){if(i._status=a.LoaderStatus.kError,!i._onError)throw e;i._onError(a.LoaderErrors.EXCEPTION,{code:-1,msg:e.message})}}))},t.prototype.abort=function(){if(this._requestAbort=!0,(this._status!==a.LoaderStatus.kBuffering||!r.default.chrome)&&this._abortController)try{this._abortController.abort()}catch(e){}},t.prototype._pump=function(e){var t=this;return e.read().then((function(i){if(i.done)if(null!==t._contentLength&&t._receivedLength0&&(this._stashInitialSize=t.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=3145728,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,!1===t.enableStashBuffer&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=e,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(e.url),this._refTotalLength=e.filesize?e.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new r.default,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}return e.prototype.destroy=function(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null},e.prototype.isWorking=function(){return this._loader&&this._loader.isWorking()&&!this._paused},e.prototype.isPaused=function(){return this._paused},Object.defineProperty(e.prototype,"status",{get:function(){return this._loader.status},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"extraData",{get:function(){return this._extraData},set:function(e){this._extraData=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onDataArrival",{get:function(){return this._onDataArrival},set:function(e){this._onDataArrival=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSeeked",{get:function(){return this._onSeeked},set:function(e){this._onSeeked=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onError",{get:function(){return this._onError},set:function(e){this._onError=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onComplete",{get:function(){return this._onComplete},set:function(e){this._onComplete=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRedirect",{get:function(){return this._onRedirect},set:function(e){this._onRedirect=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRecoveredEarlyEof",{get:function(){return this._onRecoveredEarlyEof},set:function(e){this._onRecoveredEarlyEof=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentURL",{get:function(){return this._dataSource.url},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasRedirect",{get:function(){return null!=this._redirectedURL||null!=this._dataSource.redirectedURL},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentRedirectedURL",{get:function(){return this._redirectedURL||this._dataSource.redirectedURL},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentSpeed",{get:function(){return this._loaderClass===u.default?this._loader.currentSpeed:this._speedSampler.lastSecondKBps},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"loaderType",{get:function(){return this._loader.type},enumerable:!1,configurable:!0}),e.prototype._selectSeekHandler=function(){var e=this._config;if("range"===e.seekType)this._seekHandler=new h.default(this._config.rangeLoadZeroStart);else if("param"===e.seekType){var t=e.seekParamStart||"bstart",i=e.seekParamEnd||"bend";this._seekHandler=new d.default(t,i)}else{if("custom"!==e.seekType)throw new c.InvalidArgumentException("Invalid seekType in config: "+e.seekType);if("function"!=typeof e.customSeekHandler)throw new c.InvalidArgumentException("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new e.customSeekHandler}},e.prototype._selectLoader=function(){if(null!=this._config.customLoader)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=l.default;else if(s.default.isSupported())this._loaderClass=s.default;else if(o.default.isSupported())this._loaderClass=o.default;else{if(!u.default.isSupported())throw new c.RuntimeException("Your browser doesn't support xhr with arraybuffer responseType!");this._loaderClass=u.default}},e.prototype._createLoader=function(){this._loader=new this._loaderClass(this._seekHandler,this._config),!1===this._loader.needStashBuffer&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)},e.prototype.open=function(e){this._currentRange={from:0,to:-1},e&&(this._currentRange.from=e),this._speedSampler.reset(),e||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))},e.prototype.abort=function(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)},e.prototype.pause=function(){this.isWorking()&&(this._loader.abort(),0!==this._stashUsed?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)},e.prototype.resume=function(){if(this._paused){this._paused=!1;var e=this._resumeFrom;this._resumeFrom=0,this._internalSeek(e,!0)}},e.prototype.seek=function(e){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(e,!0)},e.prototype._internalSeek=function(e,t){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(t),this._loader.destroy(),this._loader=null;var i={from:e,to:-1};this._currentRange={from:i.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,i),this._onSeeked&&this._onSeeked()},e.prototype.updateUrl=function(e){if(!e||"string"!=typeof e||0===e.length)throw new c.InvalidArgumentException("Url must be a non-empty string!");this._dataSource.url=e},e.prototype._expandBuffer=function(e){for(var t=this._stashSize;t+10485760){var n=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(i,0,t).set(n,0)}this._stashBuffer=i,this._bufferSize=t}},e.prototype._normalizeSpeed=function(e){var t=this._speedNormalizeList,i=t.length-1,n=0,r=0,a=i;if(e=t[n]&&e=512&&e<=1024?Math.floor(1.5*e):2*e)>8192&&(t=8192);var i=1024*t+1048576;this._bufferSize0){var a=this._stashBuffer.slice(0,this._stashUsed);(u=this._dispatchChunks(a,this._stashByteStart))0&&(l=new Uint8Array(a,u),o.set(l,0),this._stashUsed=l.byteLength,this._stashByteStart+=u):(this._stashUsed=0,this._stashByteStart+=u),this._stashUsed+e.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+e.byteLength),o=new Uint8Array(this._stashBuffer,0,this._bufferSize)),o.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength}else(u=this._dispatchChunks(e,t))this._bufferSize&&(this._expandBuffer(s),o=new Uint8Array(this._stashBuffer,0,this._bufferSize)),o.set(new Uint8Array(e,u),0),this._stashUsed+=s,this._stashByteStart=t+u);else if(0===this._stashUsed){var s;(u=this._dispatchChunks(e,t))this._bufferSize&&this._expandBuffer(s),(o=new Uint8Array(this._stashBuffer,0,this._bufferSize)).set(new Uint8Array(e,u),0),this._stashUsed+=s,this._stashByteStart=t+u)}else{var o,u;if(this._stashUsed+e.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+e.byteLength),(o=new Uint8Array(this._stashBuffer,0,this._bufferSize)).set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength,(u=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart))0){var l=new Uint8Array(this._stashBuffer,u);o.set(l,0)}this._stashUsed-=u,this._stashByteStart+=u}}},e.prototype._flushStashBuffer=function(e){if(this._stashUsed>0){var t=this._stashBuffer.slice(0,this._stashUsed),i=this._dispatchChunks(t,this._stashByteStart),r=t.byteLength-i;if(i0){var a=new Uint8Array(this._stashBuffer,0,this._bufferSize),s=new Uint8Array(t,i);a.set(s,0),this._stashUsed=s.byteLength,this._stashByteStart+=i}return 0}n.default.w(this.TAG,r+" bytes unconsumed data remain when flush buffer, dropped")}return this._stashUsed=0,this._stashByteStart=0,r}return 0},e.prototype._onLoaderComplete=function(e,t){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)},e.prototype._onLoaderError=function(e,t){switch(n.default.e(this.TAG,"Loader error, code = "+t.code+", msg = "+t.msg),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,e=a.LoaderErrors.UNRECOVERABLE_EARLY_EOF),e){case a.LoaderErrors.EARLY_EOF:if(!this._config.isLive&&this._totalLength){var i=this._currentRange.to+1;return void(i0)for(var a=i.split("&"),s=0;s0;o[0]!==this._startName&&o[0]!==this._endName&&(u&&(r+="&"),r+=a[s])}return 0===r.length?t:t+"?"+r},e}();t.default=n},"./src/io/range-seek-handler.js": +/*!**************************************!*\ + !*** ./src/io/range-seek-handler.js ***! + \**************************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(e){this._zeroStart=e||!1}return e.prototype.getConfig=function(e,t){var i={};if(0!==t.from||-1!==t.to){var n=void 0;n=-1!==t.to?"bytes="+t.from.toString()+"-"+t.to.toString():"bytes="+t.from.toString()+"-",i.Range=n}else this._zeroStart&&(i.Range="bytes=0-");return{url:e,headers:i}},e.prototype.removeURLParameters=function(e){return e},e}();t.default=n},"./src/io/speed-sampler.js": +/*!*********************************!*\ + !*** ./src/io/speed-sampler.js ***! + \*********************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}return e.prototype.reset=function(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0},e.prototype.addBytes=function(e){0===this._firstCheckpoint?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=e,this._totalBytes+=e):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=e,this._totalBytes+=e):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=e,this._totalBytes+=e,this._lastCheckpoint=this._now())},Object.defineProperty(e.prototype,"currentKBps",{get:function(){this.addBytes(0);var e=(this._now()-this._lastCheckpoint)/1e3;return 0==e&&(e=1),this._intervalBytes/e/1024},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lastSecondKBps",{get:function(){return this.addBytes(0),0!==this._lastSecondBytes?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"averageKBps",{get:function(){var e=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/e/1024},enumerable:!1,configurable:!0}),e}();t.default=n},"./src/io/websocket-loader.js": +/*!************************************!*\ + !*** ./src/io/websocket-loader.js ***! + \************************************/function(e,t,i){"use strict";i.r(t);var n,r=i(/*! ./loader.js */"./src/io/loader.js"),a=i(/*! ../utils/exception.js */"./src/utils/exception.js"),s=(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),o=function(e){function t(){var t=e.call(this,"websocket-loader")||this;return t.TAG="WebSocketLoader",t._needStash=!0,t._ws=null,t._requestAbort=!1,t._receivedLength=0,t}return s(t,e),t.isSupported=function(){try{return void 0!==self.WebSocket}catch(e){return!1}},t.prototype.destroy=function(){this._ws&&this.abort(),e.prototype.destroy.call(this)},t.prototype.open=function(e){try{var t=this._ws=new self.WebSocket(e.url);t.binaryType="arraybuffer",t.onopen=this._onWebSocketOpen.bind(this),t.onclose=this._onWebSocketClose.bind(this),t.onmessage=this._onWebSocketMessage.bind(this),t.onerror=this._onWebSocketError.bind(this),this._status=r.LoaderStatus.kConnecting}catch(e){this._status=r.LoaderStatus.kError;var i={code:e.code,msg:e.message};if(!this._onError)throw new a.RuntimeException(i.msg);this._onError(r.LoaderErrors.EXCEPTION,i)}},t.prototype.abort=function(){var e=this._ws;!e||0!==e.readyState&&1!==e.readyState||(this._requestAbort=!0,e.close()),this._ws=null,this._status=r.LoaderStatus.kComplete},t.prototype._onWebSocketOpen=function(e){this._status=r.LoaderStatus.kBuffering},t.prototype._onWebSocketClose=function(e){!0!==this._requestAbort?(this._status=r.LoaderStatus.kComplete,this._onComplete&&this._onComplete(0,this._receivedLength-1)):this._requestAbort=!1},t.prototype._onWebSocketMessage=function(e){var t=this;if(e.data instanceof ArrayBuffer)this._dispatchArrayBuffer(e.data);else if(e.data instanceof Blob){var i=new FileReader;i.onload=function(){t._dispatchArrayBuffer(i.result)},i.readAsArrayBuffer(e.data)}else{this._status=r.LoaderStatus.kError;var n={code:-1,msg:"Unsupported WebSocket message type: "+e.data.constructor.name};if(!this._onError)throw new a.RuntimeException(n.msg);this._onError(r.LoaderErrors.EXCEPTION,n)}},t.prototype._dispatchArrayBuffer=function(e){var t=e,i=this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,i,this._receivedLength)},t.prototype._onWebSocketError=function(e){this._status=r.LoaderStatus.kError;var t={code:e.code,msg:e.message};if(!this._onError)throw new a.RuntimeException(t.msg);this._onError(r.LoaderErrors.EXCEPTION,t)},t}(r.BaseLoader);t.default=o},"./src/io/xhr-moz-chunked-loader.js": +/*!******************************************!*\ + !*** ./src/io/xhr-moz-chunked-loader.js ***! + \******************************************/function(e,t,i){"use strict";i.r(t);var n,r=i(/*! ../utils/logger.js */"./src/utils/logger.js"),a=i(/*! ./loader.js */"./src/io/loader.js"),s=i(/*! ../utils/exception.js */"./src/utils/exception.js"),o=(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),u=function(e){function t(t,i){var n=e.call(this,"xhr-moz-chunked-loader")||this;return n.TAG="MozChunkedLoader",n._seekHandler=t,n._config=i,n._needStash=!0,n._xhr=null,n._requestAbort=!1,n._contentLength=null,n._receivedLength=0,n}return o(t,e),t.isSupported=function(){try{var e=new XMLHttpRequest;return e.open("GET","https://example.com",!0),e.responseType="moz-chunked-arraybuffer","moz-chunked-arraybuffer"===e.responseType}catch(e){return r.default.w("MozChunkedLoader",e.message),!1}},t.prototype.destroy=function(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onloadend=null,this._xhr.onerror=null,this._xhr=null),e.prototype.destroy.call(this)},t.prototype.open=function(e,t){this._dataSource=e,this._range=t;var i=e.url;this._config.reuseRedirectedURL&&null!=e.redirectedURL&&(i=e.redirectedURL);var n=this._seekHandler.getConfig(i,t);this._requestURL=n.url;var r=this._xhr=new XMLHttpRequest;if(r.open("GET",n.url,!0),r.responseType="moz-chunked-arraybuffer",r.onreadystatechange=this._onReadyStateChange.bind(this),r.onprogress=this._onProgress.bind(this),r.onloadend=this._onLoadEnd.bind(this),r.onerror=this._onXhrError.bind(this),e.withCredentials&&(r.withCredentials=!0),"object"==typeof n.headers){var s=n.headers;for(var o in s)s.hasOwnProperty(o)&&r.setRequestHeader(o,s[o])}if("object"==typeof this._config.headers)for(var o in s=this._config.headers)s.hasOwnProperty(o)&&r.setRequestHeader(o,s[o]);this._status=a.LoaderStatus.kConnecting,r.send()},t.prototype.abort=function(){this._requestAbort=!0,this._xhr&&this._xhr.abort(),this._status=a.LoaderStatus.kComplete},t.prototype._onReadyStateChange=function(e){var t=e.target;if(2===t.readyState){if(null!=t.responseURL&&t.responseURL!==this._requestURL&&this._onURLRedirect){var i=this._seekHandler.removeURLParameters(t.responseURL);this._onURLRedirect(i)}if(0!==t.status&&(t.status<200||t.status>299)){if(this._status=a.LoaderStatus.kError,!this._onError)throw new s.RuntimeException("MozChunkedLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(a.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}else this._status=a.LoaderStatus.kBuffering}},t.prototype._onProgress=function(e){if(this._status!==a.LoaderStatus.kError){null===this._contentLength&&null!==e.total&&0!==e.total&&(this._contentLength=e.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));var t=e.target.response,i=this._range.from+this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,i,this._receivedLength)}},t.prototype._onLoadEnd=function(e){!0!==this._requestAbort?this._status!==a.LoaderStatus.kError&&(this._status=a.LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)):this._requestAbort=!1},t.prototype._onXhrError=function(e){this._status=a.LoaderStatus.kError;var t=0,i=null;if(this._contentLength&&e.loaded=this._contentLength&&(i=this._range.from+this._contentLength-1),this._currentRequestRange={from:t,to:i},this._internalOpen(this._dataSource,this._currentRequestRange)},t.prototype._internalOpen=function(e,t){this._lastTimeLoaded=0;var i=e.url;this._config.reuseRedirectedURL&&(null!=this._currentRedirectedURL?i=this._currentRedirectedURL:null!=e.redirectedURL&&(i=e.redirectedURL));var n=this._seekHandler.getConfig(i,t);this._currentRequestURL=n.url;var r=this._xhr=new XMLHttpRequest;if(r.open("GET",n.url,!0),r.responseType="arraybuffer",r.onreadystatechange=this._onReadyStateChange.bind(this),r.onprogress=this._onProgress.bind(this),r.onload=this._onLoad.bind(this),r.onerror=this._onXhrError.bind(this),e.withCredentials&&(r.withCredentials=!0),"object"==typeof n.headers){var a=n.headers;for(var s in a)a.hasOwnProperty(s)&&r.setRequestHeader(s,a[s])}if("object"==typeof this._config.headers)for(var s in a=this._config.headers)a.hasOwnProperty(s)&&r.setRequestHeader(s,a[s]);r.send()},t.prototype.abort=function(){this._requestAbort=!0,this._internalAbort(),this._status=s.LoaderStatus.kComplete},t.prototype._internalAbort=function(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)},t.prototype._onReadyStateChange=function(e){var t=e.target;if(2===t.readyState){if(null!=t.responseURL){var i=this._seekHandler.removeURLParameters(t.responseURL);t.responseURL!==this._currentRequestURL&&i!==this._currentRedirectedURL&&(this._currentRedirectedURL=i,this._onURLRedirect&&this._onURLRedirect(i))}if(t.status>=200&&t.status<=299){if(this._waitForTotalLength)return;this._status=s.LoaderStatus.kBuffering}else{if(this._status=s.LoaderStatus.kError,!this._onError)throw new o.RuntimeException("RangeLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(s.LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}}},t.prototype._onProgress=function(e){if(this._status!==s.LoaderStatus.kError){if(null===this._contentLength){var t=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,t=!0;var i=e.total;this._internalAbort(),null!=i&0!==i&&(this._totalLength=i)}if(-1===this._range.to?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,t)return void this._openSubRange();this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}var n=e.loaded-this._lastTimeLoaded;this._lastTimeLoaded=e.loaded,this._speedSampler.addBytes(n)}},t.prototype._normalizeSpeed=function(e){var t=this._chunkSizeKBList,i=t.length-1,n=0,r=0,a=i;if(e=t[n]&&e=3&&(t=this._speedSampler.currentKBps)),0!==t){var i=this._normalizeSpeed(t);this._currentSpeedNormalized!==i&&(this._currentSpeedNormalized=i,this._currentChunkSizeKB=i)}var n=e.target.response,r=this._range.from+this._receivedLength;this._receivedLength+=n.byteLength;var a=!1;null!=this._contentLength&&this._receivedLength0&&this._receivedLength0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new u.default(this._mediaDataSource,this._config),this._transmuxer.on(l.default.INIT_SEGMENT,(function(t,i){e._msectl.appendInitSegment(i)})),this._transmuxer.on(l.default.MEDIA_SEGMENT,(function(t,i){if(e._msectl.appendMediaSegment(i),e._config.lazyLoad&&!e._config.isLive){var n=e._mediaElement.currentTime;i.info.endDts>=1e3*(n+e._config.lazyLoadMaxDuration)&&null==e._progressChecker&&(a.default.v(e.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),e._suspendTransmuxer())}})),this._transmuxer.on(l.default.LOADING_COMPLETE,(function(){e._msectl.endOfStream(),e._emitter.emit(o.default.LOADING_COMPLETE)})),this._transmuxer.on(l.default.RECOVERED_EARLY_EOF,(function(){e._emitter.emit(o.default.RECOVERED_EARLY_EOF)})),this._transmuxer.on(l.default.IO_ERROR,(function(t,i){e._emitter.emit(o.default.ERROR,c.ErrorTypes.NETWORK_ERROR,t,i)})),this._transmuxer.on(l.default.DEMUX_ERROR,(function(t,i){e._emitter.emit(o.default.ERROR,c.ErrorTypes.MEDIA_ERROR,t,{code:-1,msg:i})})),this._transmuxer.on(l.default.MEDIA_INFO,(function(t){e._mediaInfo=t,e._emitter.emit(o.default.MEDIA_INFO,Object.assign({},t))})),this._transmuxer.on(l.default.METADATA_ARRIVED,(function(t){e._emitter.emit(o.default.METADATA_ARRIVED,t)})),this._transmuxer.on(l.default.SCRIPTDATA_ARRIVED,(function(t){e._emitter.emit(o.default.SCRIPTDATA_ARRIVED,t)})),this._transmuxer.on(l.default.STATISTICS_INFO,(function(t){e._statisticsInfo=e._fillStatisticsInfo(t),e._emitter.emit(o.default.STATISTICS_INFO,Object.assign({},e._statisticsInfo))})),this._transmuxer.on(l.default.RECOMMEND_SEEKPOINT,(function(t){e._mediaElement&&!e._config.accurateSeek&&(e._requestSetTime=!0,e._mediaElement.currentTime=t/1e3)})),this._transmuxer.open()))},e.prototype.unload=function(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)},e.prototype.play=function(){return this._mediaElement.play()},e.prototype.pause=function(){this._mediaElement.pause()},Object.defineProperty(e.prototype,"type",{get:function(){return this._type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffered",{get:function(){return this._mediaElement.buffered},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"duration",{get:function(){return this._mediaElement.duration},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"volume",{get:function(){return this._mediaElement.volume},set:function(e){this._mediaElement.volume=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"muted",{get:function(){return this._mediaElement.muted},set:function(e){this._mediaElement.muted=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentTime",{get:function(){return this._mediaElement?this._mediaElement.currentTime:0},set:function(e){this._mediaElement?this._internalSeek(e):this._pendingSeekTime=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"mediaInfo",{get:function(){return Object.assign({},this._mediaInfo)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"statisticsInfo",{get:function(){return null==this._statisticsInfo&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)},enumerable:!1,configurable:!0}),e.prototype._fillStatisticsInfo=function(e){if(e.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return e;var t=!0,i=0,n=0;if(this._mediaElement.getVideoPlaybackQuality){var r=this._mediaElement.getVideoPlaybackQuality();i=r.totalVideoFrames,n=r.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(i=this._mediaElement.webkitDecodedFrameCount,n=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=i,e.droppedFrames=n),e},e.prototype._onmseUpdateEnd=function(){if(this._config.lazyLoad&&!this._config.isLive){for(var e=this._mediaElement.buffered,t=this._mediaElement.currentTime,i=0,n=0;n=t+this._config.lazyLoadMaxDuration&&null==this._progressChecker&&(a.default.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}},e.prototype._onmseBufferFull=function(){a.default.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),null==this._progressChecker&&this._suspendTransmuxer()},e.prototype._suspendTransmuxer=function(){this._transmuxer&&(this._transmuxer.pause(),null==this._progressChecker&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))},e.prototype._checkProgressAndResume=function(){for(var e=this._mediaElement.currentTime,t=this._mediaElement.buffered,i=!1,n=0;n=r&&e=s-this._config.lazyLoadRecoverDuration&&(i=!0);break}}i&&(window.clearInterval(this._progressChecker),this._progressChecker=null,i&&(a.default.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))},e.prototype._isTimepointBuffered=function(e){for(var t=this._mediaElement.buffered,i=0;i=n&&e0){var r=this._mediaElement.buffered.start(0);(r<1&&e0&&t.currentTime0){var n=i.start(0);if(n<1&&t0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)},e.prototype.unload=function(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)},e.prototype.play=function(){return this._mediaElement.play()},e.prototype.pause=function(){this._mediaElement.pause()},Object.defineProperty(e.prototype,"type",{get:function(){return this._type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffered",{get:function(){return this._mediaElement.buffered},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"duration",{get:function(){return this._mediaElement.duration},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"volume",{get:function(){return this._mediaElement.volume},set:function(e){this._mediaElement.volume=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"muted",{get:function(){return this._mediaElement.muted},set:function(e){this._mediaElement.muted=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentTime",{get:function(){return this._mediaElement?this._mediaElement.currentTime:0},set:function(e){this._mediaElement?this._mediaElement.currentTime=e:this._pendingSeekTime=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"mediaInfo",{get:function(){var e={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(e.duration=Math.floor(1e3*this._mediaElement.duration),this._mediaElement instanceof HTMLVideoElement&&(e.width=this._mediaElement.videoWidth,e.height=this._mediaElement.videoHeight)),e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"statisticsInfo",{get:function(){var e={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return e;var t=!0,i=0,n=0;if(this._mediaElement.getVideoPlaybackQuality){var r=this._mediaElement.getVideoPlaybackQuality();i=r.totalVideoFrames,n=r.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(i=this._mediaElement.webkitDecodedFrameCount,n=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=i,e.droppedFrames=n),e},enumerable:!1,configurable:!0}),e.prototype._onvLoadedMetadata=function(e){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(a.default.MEDIA_INFO,this.mediaInfo)},e.prototype._reportStatisticsInfo=function(){this._emitter.emit(a.default.STATISTICS_INFO,this.statisticsInfo)},e}();t.default=u},"./src/player/player-errors.js": +/*!*************************************!*\ + !*** ./src/player/player-errors.js ***! + \*************************************/function(e,t,i){"use strict";i.r(t),i.d(t,{ErrorTypes:function(){return a},ErrorDetails:function(){return s}});var n=i(/*! ../io/loader.js */"./src/io/loader.js"),r=i(/*! ../demux/demux-errors.js */"./src/demux/demux-errors.js"),a={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},s={NETWORK_EXCEPTION:n.LoaderErrors.EXCEPTION,NETWORK_STATUS_CODE_INVALID:n.LoaderErrors.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:n.LoaderErrors.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:n.LoaderErrors.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:r.default.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:r.default.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:r.default.CODEC_UNSUPPORTED}},"./src/player/player-events.js": +/*!*************************************!*\ + !*** ./src/player/player-events.js ***! + \*************************************/function(e,t,i){"use strict";i.r(t),t.default={ERROR:"error",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info"}},"./src/remux/aac-silent.js": +/*!*********************************!*\ + !*** ./src/remux/aac-silent.js ***! + \*********************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){}return e.getSilentFrame=function(e,t){if("mp4a.40.2"===e){if(1===t)return new Uint8Array([0,200,0,128,35,128]);if(2===t)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===t)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(6===t)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])}else{if(1===t)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(2===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(3===t)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},e}();t.default=n},"./src/remux/mp4-generator.js": +/*!************************************!*\ + !*** ./src/remux/mp4-generator.js ***! + \************************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){}return e.init=function(){for(var t in e.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]},e.types)e.types.hasOwnProperty(t)&&(e.types[t]=[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]);var i=e.constants={};i.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),i.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),i.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),i.STSC=i.STCO=i.STTS,i.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),i.HDLR_VIDEO=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]),i.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),i.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),i.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),i.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])},e.box=function(e){for(var t=8,i=null,n=Array.prototype.slice.call(arguments,1),r=n.length,a=0;a>>24&255,i[1]=t>>>16&255,i[2]=t>>>8&255,i[3]=255&t,i.set(e,4);var s=8;for(a=0;a>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,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]))},e.trak=function(t){return e.box(e.types.trak,e.tkhd(t),e.mdia(t))},e.tkhd=function(t){var i=t.id,n=t.duration,r=t.presentWidth,a=t.presentHeight;return e.box(e.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n,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,r>>>8&255,255&r,0,0,a>>>8&255,255&a,0,0]))},e.mdia=function(t){return e.box(e.types.mdia,e.mdhd(t),e.hdlr(t),e.minf(t))},e.mdhd=function(t){var i=t.timescale,n=t.duration;return e.box(e.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,n>>>24&255,n>>>16&255,n>>>8&255,255&n,85,196,0,0]))},e.hdlr=function(t){var i=null;return i="audio"===t.type?e.constants.HDLR_AUDIO:e.constants.HDLR_VIDEO,e.box(e.types.hdlr,i)},e.minf=function(t){var i=null;return i="audio"===t.type?e.box(e.types.smhd,e.constants.SMHD):e.box(e.types.vmhd,e.constants.VMHD),e.box(e.types.minf,i,e.dinf(),e.stbl(t))},e.dinf=function(){return e.box(e.types.dinf,e.box(e.types.dref,e.constants.DREF))},e.stbl=function(t){return e.box(e.types.stbl,e.stsd(t),e.box(e.types.stts,e.constants.STTS),e.box(e.types.stsc,e.constants.STSC),e.box(e.types.stsz,e.constants.STSZ),e.box(e.types.stco,e.constants.STCO))},e.stsd=function(t){return"audio"===t.type?"mp3"===t.codec?e.box(e.types.stsd,e.constants.STSD_PREFIX,e.mp3(t)):e.box(e.types.stsd,e.constants.STSD_PREFIX,e.mp4a(t)):e.box(e.types.stsd,e.constants.STSD_PREFIX,e.avc1(t))},e.mp3=function(t){var i=t.channelCount,n=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,i,0,16,0,0,0,0,n>>>8&255,255&n,0,0]);return e.box(e.types[".mp3"],r)},e.mp4a=function(t){var i=t.channelCount,n=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,i,0,16,0,0,0,0,n>>>8&255,255&n,0,0]);return e.box(e.types.mp4a,r,e.esds(t))},e.esds=function(t){var i=t.config||[],n=i.length,r=new Uint8Array([0,0,0,0,3,23+n,0,1,0,4,15+n,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([n]).concat(i).concat([6,1,2]));return e.box(e.types.esds,r)},e.avc1=function(t){var i=t.avcc,n=t.codecWidth,r=t.codecHeight,a=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,n>>>8&255,255&n,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return e.box(e.types.avc1,a,e.box(e.types.avcC,i))},e.mvex=function(t){return e.box(e.types.mvex,e.trex(t))},e.trex=function(t){var i=t.id,n=new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return e.box(e.types.trex,n)},e.moof=function(t,i){return e.box(e.types.moof,e.mfhd(t.sequenceNumber),e.traf(t,i))},e.mfhd=function(t){var i=new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t]);return e.box(e.types.mfhd,i)},e.traf=function(t,i){var n=t.id,r=e.box(e.types.tfhd,new Uint8Array([0,0,0,0,n>>>24&255,n>>>16&255,n>>>8&255,255&n])),a=e.box(e.types.tfdt,new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i])),s=e.sdtp(t),o=e.trun(t,s.byteLength+16+16+8+16+8+8);return e.box(e.types.traf,r,a,o,s)},e.sdtp=function(t){for(var i=t.samples||[],n=i.length,r=new Uint8Array(4+n),a=0;a>>24&255,r>>>16&255,r>>>8&255,255&r,i>>>24&255,i>>>16&255,i>>>8&255,255&i],0);for(var o=0;o>>24&255,u>>>16&255,u>>>8&255,255&u,l>>>24&255,l>>>16&255,l>>>8&255,255&l,h.isLeading<<2|h.dependsOn,h.isDependedOn<<6|h.hasRedundancy<<4|h.isNonSync,0,0,d>>>24&255,d>>>16&255,d>>>8&255,255&d],12+16*o)}return e.box(e.types.trun,s)},e.mdat=function(t){return e.box(e.types.mdat,t)},e}();n.init(),t.default=n},"./src/remux/mp4-remuxer.js": +/*!**********************************!*\ + !*** ./src/remux/mp4-remuxer.js ***! + \**********************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! ../utils/logger.js */"./src/utils/logger.js"),r=i(/*! ./mp4-generator.js */"./src/remux/mp4-generator.js"),a=i(/*! ./aac-silent.js */"./src/remux/aac-silent.js"),s=i(/*! ../utils/browser.js */"./src/utils/browser.js"),o=i(/*! ../core/media-segment-info.js */"./src/core/media-segment-info.js"),u=i(/*! ../utils/exception.js */"./src/utils/exception.js"),l=function(){function e(e){this.TAG="MP4Remuxer",this._config=e,this._isLive=!0===e.isLive,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new o.MediaSegmentInfoList("audio"),this._videoSegmentInfoList=new o.MediaSegmentInfoList("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!(!s.default.chrome||!(s.default.version.major<50||50===s.default.version.major&&s.default.version.build<2661)),this._fillSilentAfterSeek=s.default.msedge||s.default.msie,this._mp3UseMpegAudio=!s.default.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}return e.prototype.destroy=function(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null},e.prototype.bindDataSource=function(e){return e.onDataAvailable=this.remux.bind(this),e.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this},Object.defineProperty(e.prototype,"onInitSegment",{get:function(){return this._onInitSegment},set:function(e){this._onInitSegment=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onMediaSegment",{get:function(){return this._onMediaSegment},set:function(e){this._onMediaSegment=e},enumerable:!1,configurable:!0}),e.prototype.insertDiscontinuity=function(){this._audioNextDts=this._videoNextDts=void 0},e.prototype.seek=function(e){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()},e.prototype.remux=function(e,t){if(!this._onMediaSegment)throw new u.IllegalStateException("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(e,t),this._remuxVideo(t),this._remuxAudio(e)},e.prototype._onTrackMetadataReceived=function(e,t){var i=null,n="mp4",a=t.codec;if("audio"===e)this._audioMeta=t,"mp3"===t.codec&&this._mp3UseMpegAudio?(n="mpeg",a="",i=new Uint8Array):i=r.default.generateInitSegment(t);else{if("video"!==e)return;this._videoMeta=t,i=r.default.generateInitSegment(t)}if(!this._onInitSegment)throw new u.IllegalStateException("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(e,{type:e,data:i.buffer,codec:a,container:e+"/"+n,mediaDuration:t.duration})},e.prototype._calculateDtsBase=function(e,t){this._dtsBaseInited||(e.samples&&e.samples.length&&(this._audioDtsBase=e.samples[0].dts),t.samples&&t.samples.length&&(this._videoDtsBase=t.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)},e.prototype.flushStashedSamples=function(){var e=this._videoStashedLastSample,t=this._audioStashedLastSample,i={type:"video",id:1,sequenceNumber:0,samples:[],length:0};null!=e&&(i.samples.push(e),i.length=e.length);var n={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};null!=t&&(n.samples.push(t),n.length=t.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(i,!0),this._remuxAudio(n,!0)},e.prototype._remuxAudio=function(e,t){if(null!=this._audioMeta){var i,u=e,l=u.samples,h=void 0,d=-1,c=this._audioMeta.refSampleDuration,f="mp3"===this._audioMeta.codec&&this._mp3UseMpegAudio,p=this._dtsBaseInited&&void 0===this._audioNextDts,m=!1;if(l&&0!==l.length&&(1!==l.length||t)){var g=0,_=null,v=0;f?(g=0,v=u.length):(g=8,v=8+u.length);var y=null;if(l.length>1&&(v-=(y=l.pop()).length),null!=this._audioStashedLastSample){var b=this._audioStashedLastSample;this._audioStashedLastSample=null,l.unshift(b),v+=b.length}null!=y&&(this._audioStashedLastSample=y);var T=l[0].dts-this._dtsBase;if(this._audioNextDts)h=T-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())h=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&"mp3"!==this._audioMeta.originalCodec&&(m=!0);else{var S=this._audioSegmentInfoList.getLastSampleBefore(T);if(null!=S){var E=T-(S.originalDts+S.duration);E<=3&&(E=0),h=T-(S.dts+S.duration+E)}else h=0}if(m){var w=T-h,C=this._videoSegmentInfoList.getLastSegmentBefore(T);if(null!=C&&C.beginDts=3*c&&this._fillAudioTimestampGap&&!s.default.safari){D=!0;var M,F=Math.floor(h/c);n.default.w(this.TAG,"Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.\noriginalDts: "+x+" ms, curRefDts: "+U+" ms, dtsCorrection: "+Math.round(h)+" ms, generate: "+F+" frames"),A=Math.floor(U),O=Math.floor(U+c)-A,null==(M=a.default.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount))&&(n.default.w(this.TAG,"Unable to generate silent frame for "+this._audioMeta.originalCodec+" with "+this._audioMeta.channelCount+" channels, repeat last frame"),M=L),R=[];for(var B=0;B=1?P[P.length-1].duration:Math.floor(c),this._audioNextDts=A+O;-1===d&&(d=A),P.push({dts:A,pts:A,cts:0,unit:b.unit,size:b.unit.byteLength,duration:O,originalDts:x,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),D&&P.push.apply(P,R)}}if(0===P.length)return u.samples=[],void(u.length=0);for(f?_=new Uint8Array(v):((_=new Uint8Array(v))[0]=v>>>24&255,_[1]=v>>>16&255,_[2]=v>>>8&255,_[3]=255&v,_.set(r.default.types.mdat,4)),I=0;I1&&(f-=(p=s.pop()).length),null!=this._videoStashedLastSample){var m=this._videoStashedLastSample;this._videoStashedLastSample=null,s.unshift(m),f+=m.length}null!=p&&(this._videoStashedLastSample=p);var g=s[0].dts-this._dtsBase;if(this._videoNextDts)u=g-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())u=0;else{var _=this._videoSegmentInfoList.getLastSampleBefore(g);if(null!=_){var v=g-(_.originalDts+_.duration);v<=3&&(v=0),u=g-(_.dts+_.duration+v)}else u=0}for(var y=new o.MediaSegmentInfo,b=[],T=0;T=1?b[b.length-1].duration:Math.floor(this._videoMeta.refSampleDuration),E){var P=new o.SampleInfo(w,A,k,m.dts,!0);P.fileposition=m.fileposition,y.appendSyncPoint(P)}b.push({dts:w,pts:A,cts:C,units:m.units,size:m.length,isKeyframe:E,duration:k,originalDts:S,flags:{isLeading:0,dependsOn:E?2:1,isDependedOn:E?1:0,hasRedundancy:0,isNonSync:E?0:1}})}for((c=new Uint8Array(f))[0]=f>>>24&255,c[1]=f>>>16&255,c[2]=f>>>8&255,c[3]=255&f,c.set(r.default.types.mdat,4),T=0;T=0&&/(rv)(?::| )([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(e)||[],i=/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(android)/.exec(e)||/(windows)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||[],r={browser:t[5]||t[3]||t[1]||"",version:t[2]||t[4]||"0",majorVersion:t[4]||t[2]||"0",platform:i[0]||""},a={};if(r.browser){a[r.browser]=!0;var s=r.majorVersion.split(".");a.version={major:parseInt(r.majorVersion,10),string:r.version},s.length>1&&(a.version.minor=parseInt(s[1],10)),s.length>2&&(a.version.build=parseInt(s[2],10))}for(var o in r.platform&&(a[r.platform]=!0),(a.chrome||a.opr||a.safari)&&(a.webkit=!0),(a.rv||a.iemobile)&&(a.rv&&delete a.rv,r.browser="msie",a.msie=!0),a.edge&&(delete a.edge,r.browser="msedge",a.msedge=!0),a.opr&&(r.browser="opera",a.opera=!0),a.safari&&a.android&&(r.browser="android",a.android=!0),a.name=r.browser,a.platform=r.platform,n)n.hasOwnProperty(o)&&delete n[o];Object.assign(n,a)}(),t.default=n},"./src/utils/exception.js": +/*!********************************!*\ + !*** ./src/utils/exception.js ***! + \********************************/function(e,t,i){"use strict";i.r(t),i.d(t,{RuntimeException:function(){return a},IllegalStateException:function(){return s},InvalidArgumentException:function(){return o},NotImplementedException:function(){return u}});var n,r=(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),a=function(){function e(e){this._message=e}return Object.defineProperty(e.prototype,"name",{get:function(){return"RuntimeException"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"message",{get:function(){return this._message},enumerable:!1,configurable:!0}),e.prototype.toString=function(){return this.name+": "+this.message},e}(),s=function(e){function t(t){return e.call(this,t)||this}return r(t,e),Object.defineProperty(t.prototype,"name",{get:function(){return"IllegalStateException"},enumerable:!1,configurable:!0}),t}(a),o=function(e){function t(t){return e.call(this,t)||this}return r(t,e),Object.defineProperty(t.prototype,"name",{get:function(){return"InvalidArgumentException"},enumerable:!1,configurable:!0}),t}(a),u=function(e){function t(t){return e.call(this,t)||this}return r(t,e),Object.defineProperty(t.prototype,"name",{get:function(){return"NotImplementedException"},enumerable:!1,configurable:!0}),t}(a)},"./src/utils/logger.js": +/*!*****************************!*\ + !*** ./src/utils/logger.js ***! + \*****************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=function(){function e(){}return e.e=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","error",n),e.ENABLE_ERROR&&(console.error?console.error(n):console.warn)},e.i=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","info",n),e.ENABLE_INFO&&console.info&&console.info(n)},e.w=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","warn",n),e.ENABLE_WARN&&console.warn},e.d=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","debug",n),e.ENABLE_DEBUG&&console.debug&&console.debug(n)},e.v=function(t,i){t&&!e.FORCE_GLOBAL_TAG||(t=e.GLOBAL_TAG);var n="["+t+"] > "+i;e.ENABLE_CALLBACK&&e.emitter.emit("log","verbose",n),e.ENABLE_VERBOSE},e}();a.GLOBAL_TAG="flv.js",a.FORCE_GLOBAL_TAG=!1,a.ENABLE_ERROR=!0,a.ENABLE_INFO=!0,a.ENABLE_WARN=!0,a.ENABLE_DEBUG=!0,a.ENABLE_VERBOSE=!0,a.ENABLE_CALLBACK=!1,a.emitter=new(r()),t.default=a},"./src/utils/logging-control.js": +/*!**************************************!*\ + !*** ./src/utils/logging-control.js ***! + \**************************************/function(e,t,i){"use strict";i.r(t);var n=i(/*! events */"./node_modules/events/events.js"),r=i.n(n),a=i(/*! ./logger.js */"./src/utils/logger.js"),s=function(){function e(){}return Object.defineProperty(e,"forceGlobalTag",{get:function(){return a.default.FORCE_GLOBAL_TAG},set:function(t){a.default.FORCE_GLOBAL_TAG=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"globalTag",{get:function(){return a.default.GLOBAL_TAG},set:function(t){a.default.GLOBAL_TAG=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableAll",{get:function(){return a.default.ENABLE_VERBOSE&&a.default.ENABLE_DEBUG&&a.default.ENABLE_INFO&&a.default.ENABLE_WARN&&a.default.ENABLE_ERROR},set:function(t){a.default.ENABLE_VERBOSE=t,a.default.ENABLE_DEBUG=t,a.default.ENABLE_INFO=t,a.default.ENABLE_WARN=t,a.default.ENABLE_ERROR=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableDebug",{get:function(){return a.default.ENABLE_DEBUG},set:function(t){a.default.ENABLE_DEBUG=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableVerbose",{get:function(){return a.default.ENABLE_VERBOSE},set:function(t){a.default.ENABLE_VERBOSE=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableInfo",{get:function(){return a.default.ENABLE_INFO},set:function(t){a.default.ENABLE_INFO=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableWarn",{get:function(){return a.default.ENABLE_WARN},set:function(t){a.default.ENABLE_WARN=t,e._notifyChange()},enumerable:!1,configurable:!0}),Object.defineProperty(e,"enableError",{get:function(){return a.default.ENABLE_ERROR},set:function(t){a.default.ENABLE_ERROR=t,e._notifyChange()},enumerable:!1,configurable:!0}),e.getConfig=function(){return{globalTag:a.default.GLOBAL_TAG,forceGlobalTag:a.default.FORCE_GLOBAL_TAG,enableVerbose:a.default.ENABLE_VERBOSE,enableDebug:a.default.ENABLE_DEBUG,enableInfo:a.default.ENABLE_INFO,enableWarn:a.default.ENABLE_WARN,enableError:a.default.ENABLE_ERROR,enableCallback:a.default.ENABLE_CALLBACK}},e.applyConfig=function(e){a.default.GLOBAL_TAG=e.globalTag,a.default.FORCE_GLOBAL_TAG=e.forceGlobalTag,a.default.ENABLE_VERBOSE=e.enableVerbose,a.default.ENABLE_DEBUG=e.enableDebug,a.default.ENABLE_INFO=e.enableInfo,a.default.ENABLE_WARN=e.enableWarn,a.default.ENABLE_ERROR=e.enableError,a.default.ENABLE_CALLBACK=e.enableCallback},e._notifyChange=function(){var t=e.emitter;if(t.listenerCount("change")>0){var i=e.getConfig();t.emit("change",i)}},e.registerListener=function(t){e.emitter.addListener("change",t)},e.removeListener=function(t){e.emitter.removeListener("change",t)},e.addLogListener=function(t){a.default.emitter.addListener("log",t),a.default.emitter.listenerCount("log")>0&&(a.default.ENABLE_CALLBACK=!0,e._notifyChange())},e.removeLogListener=function(t){a.default.emitter.removeListener("log",t),0===a.default.emitter.listenerCount("log")&&(a.default.ENABLE_CALLBACK=!1,e._notifyChange())},e}();s.emitter=new(r()),t.default=s},"./src/utils/polyfill.js": +/*!*******************************!*\ + !*** ./src/utils/polyfill.js ***! + \*******************************/function(e,t,i){"use strict";i.r(t);var n=function(){function e(){}return e.install=function(){Object.setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Object.assign=Object.assign||function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),i=1;i=128){t.push(String.fromCharCode(65535&s)),r+=2;continue}}else if(i[r]<240){if(n(i,r,2)&&(s=(15&i[r])<<12|(63&i[r+1])<<6|63&i[r+2])>=2048&&55296!=(63488&s)){t.push(String.fromCharCode(65535&s)),r+=3;continue}}else if(i[r]<248){var s;if(n(i,r,3)&&(s=(7&i[r])<<18|(63&i[r+1])<<12|(63&i[r+2])<<6|63&i[r+3])>65536&&s<1114112){s-=65536,t.push(String.fromCharCode(s>>>10|55296)),t.push(String.fromCharCode(1023&s|56320)),r+=4;continue}}t.push(String.fromCharCode(65533)),++r}return t.join("")}}},i={};function n(e){var r=i[e];if(void 0!==r)return r.exports;var a=i[e]={exports:{}};return t[e].call(a.exports,a,a.exports,n),a.exports}return n.m=t,n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n("./src/index.js")}()},"object"==typeof i&&"object"==typeof t?t.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof i?i.flvjs=r():n.flvjs=r()}).call(this,e("_process"))},{_process:44}],34:[function(e,t,i){(function(i){var n,r=void 0!==i?i:"undefined"!=typeof window?window:{},a=e("min-document");"undefined"!=typeof document?n=document:(n=r["__GLOBAL_DOCUMENT_CACHE@4"])||(n=r["__GLOBAL_DOCUMENT_CACHE@4"]=a),t.exports=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"min-document":31}],35:[function(e,t,i){(function(e){var i;i="undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:{},t.exports=i}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],36:[function(e,t,i){i.read=function(e,t,i,n,r){var a,s,o=8*r-n-1,u=(1<>1,h=-7,d=i?r-1:0,c=i?-1:1,f=e[t+d];for(d+=c,a=f&(1<<-h)-1,f>>=-h,h+=o;h>0;a=256*a+e[t+d],d+=c,h-=8);for(s=a&(1<<-h)-1,a>>=-h,h+=n;h>0;s=256*s+e[t+d],d+=c,h-=8);if(0===a)a=1-l;else{if(a===u)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,n),a-=l}return(f?-1:1)*s*Math.pow(2,a-n)},i.write=function(e,t,i,n,r,a){var s,o,u,l=8*a-r-1,h=(1<>1,c=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,p=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,s=h):(s=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-s))<1&&(s--,u*=2),(t+=s+d>=1?c/u:c*Math.pow(2,1-d))*u>=2&&(s++,u/=2),s+d>=h?(o=0,s=h):s+d>=1?(o=(t*u-1)*Math.pow(2,r),s+=d):(o=t*Math.pow(2,d-1)*Math.pow(2,r),s=0));r>=8;e[i+f]=255&o,f+=p,o/=256,r-=8);for(s=s<0;e[i+f]=255&s,f+=p,s/=256,l-=8);e[i+f-p]|=128*m}},{}],37:[function(e,t,i){t.exports=function(e){if(!e)return!1;var t=n.call(e);return"[object Function]"===t||"function"==typeof e&&"[object RegExp]"!==t||"undefined"!=typeof window&&(e===window.setTimeout||e===window.alert||e===window.confirm||e===window.prompt)};var n=Object.prototype.toString},{}],38:[function(e,t,i){function n(e){if(e&&"object"==typeof e){var t=e.which||e.keyCode||e.charCode;t&&(e=t)}if("number"==typeof e)return o[e];var i,n=String(e);return(i=r[n.toLowerCase()])?i:(i=a[n.toLowerCase()])||(1===n.length?n.charCodeAt(0):void 0)}n.isEventKey=function(e,t){if(e&&"object"==typeof e){var i=e.which||e.keyCode||e.charCode;if(null==i)return!1;if("string"==typeof t){var n;if(n=r[t.toLowerCase()])return n===i;if(n=a[t.toLowerCase()])return n===i}else if("number"==typeof t)return t===i;return!1}};var r=(i=t.exports=n).code=i.codes={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,"pause/break":19,"caps lock":20,esc:27,space:32,"page up":33,"page down":34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46,command:91,"left command":91,"right command":93,"numpad *":106,"numpad +":107,"numpad -":109,"numpad .":110,"numpad /":111,"num lock":144,"scroll lock":145,"my computer":182,"my calculator":183,";":186,"=":187,",":188,"-":189,".":190,"/":191,"`":192,"[":219,"\\":220,"]":221,"'":222},a=i.aliases={windows:91,"⇧":16,"⌥":18,"⌃":17,"⌘":91,ctl:17,control:17,option:18,pause:19,break:19,caps:20,return:13,escape:27,spc:32,spacebar:32,pgup:33,pgdn:34,ins:45,del:46,cmd:91}; +/*! + * Programatically add the following + */ +for(s=97;s<123;s++)r[String.fromCharCode(s)]=s-32;for(var s=48;s<58;s++)r[s-48]=s;for(s=1;s<13;s++)r["f"+s]=s+111;for(s=0;s<10;s++)r["numpad "+s]=s+96;var o=i.names=i.title={};for(s in r)o[r[s]]=s;for(var u in a)r[u]=a[u]},{}],39:[function(e,t,i){ +/*! @name m3u8-parser @version 4.7.0 @license Apache-2.0 */ +"use strict";Object.defineProperty(i,"__esModule",{value:!0});var n=e("@babel/runtime/helpers/inheritsLoose"),r=e("@videojs/vhs-utils/cjs/stream.js"),a=e("@babel/runtime/helpers/extends"),s=e("@babel/runtime/helpers/assertThisInitialized"),o=e("@videojs/vhs-utils/cjs/decode-b64-to-uint8-array.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=u(n),h=u(r),d=u(a),c=u(s),f=u(o),p=function(e){function t(){var t;return(t=e.call(this)||this).buffer="",t}return l.default(t,e),t.prototype.push=function(e){var t;for(this.buffer+=e,t=this.buffer.indexOf("\n");t>-1;t=this.buffer.indexOf("\n"))this.trigger("data",this.buffer.substring(0,t)),this.buffer=this.buffer.substring(t+1)},t}(h.default),m=String.fromCharCode(9),g=function(e){var t=/([0-9.]*)?@?([0-9.]*)?/.exec(e||""),i={};return t[1]&&(i.length=parseInt(t[1],10)),t[2]&&(i.offset=parseInt(t[2],10)),i},_=function(e){for(var t,i=e.split(new RegExp('(?:^|,)((?:[^=]*)=(?:"[^"]*"|[^,]*))')),n={},r=i.length;r--;)""!==i[r]&&((t=/([^=]*)=(.*)/.exec(i[r]).slice(1))[0]=t[0].replace(/^\s+|\s+$/g,""),t[1]=t[1].replace(/^\s+|\s+$/g,""),t[1]=t[1].replace(/^['"](.*)['"]$/g,"$1"),n[t[0]]=t[1]);return n},v=function(e){function t(){var t;return(t=e.call(this)||this).customParsers=[],t.tagMappers=[],t}l.default(t,e);var i=t.prototype;return i.push=function(e){var t,i,n=this;0!==(e=e.trim()).length&&("#"===e[0]?this.tagMappers.reduce((function(t,i){var n=i(e);return n===e?t:t.concat([n])}),[e]).forEach((function(e){for(var r=0;r0&&(s.duration=e.duration),0===e.duration&&(s.duration=.01,this.trigger("info",{message:"updating zero segment duration to a small value"})),this.manifest.segments=a},key:function(){if(e.attributes)if("NONE"!==e.attributes.METHOD)if(e.attributes.URI){if("com.apple.streamingkeydelivery"===e.attributes.KEYFORMAT)return this.manifest.contentProtection=this.manifest.contentProtection||{},void(this.manifest.contentProtection["com.apple.fps.1_0"]={attributes:e.attributes});if("urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"===e.attributes.KEYFORMAT){return-1===["SAMPLE-AES","SAMPLE-AES-CTR","SAMPLE-AES-CENC"].indexOf(e.attributes.METHOD)?void this.trigger("warn",{message:"invalid key method provided for Widevine"}):("SAMPLE-AES-CENC"===e.attributes.METHOD&&this.trigger("warn",{message:"SAMPLE-AES-CENC is deprecated, please use SAMPLE-AES-CTR instead"}),"data:text/plain;base64,"!==e.attributes.URI.substring(0,23)?void this.trigger("warn",{message:"invalid key URI provided for Widevine"}):e.attributes.KEYID&&"0x"===e.attributes.KEYID.substring(0,2)?(this.manifest.contentProtection=this.manifest.contentProtection||{},void(this.manifest.contentProtection["com.widevine.alpha"]={attributes:{schemeIdUri:e.attributes.KEYFORMAT,keyId:e.attributes.KEYID.substring(2)},pssh:f.default(e.attributes.URI.split(",")[1])})):void this.trigger("warn",{message:"invalid key ID provided for Widevine"}))}e.attributes.METHOD||this.trigger("warn",{message:"defaulting key method to AES-128"}),n={method:e.attributes.METHOD||"AES-128",uri:e.attributes.URI},void 0!==e.attributes.IV&&(n.iv=e.attributes.IV)}else this.trigger("warn",{message:"ignoring key declaration without URI"});else n=null;else this.trigger("warn",{message:"ignoring key declaration without attribute list"})},"media-sequence":function(){isFinite(e.number)?this.manifest.mediaSequence=e.number:this.trigger("warn",{message:"ignoring invalid media sequence: "+e.number})},"discontinuity-sequence":function(){isFinite(e.number)?(this.manifest.discontinuitySequence=e.number,h=e.number):this.trigger("warn",{message:"ignoring invalid discontinuity sequence: "+e.number})},"playlist-type":function(){/VOD|EVENT/.test(e.playlistType)?this.manifest.playlistType=e.playlistType:this.trigger("warn",{message:"ignoring unknown playlist type: "+e.playlist})},map:function(){i={},e.uri&&(i.uri=e.uri),e.byterange&&(i.byterange=e.byterange),n&&(i.key=n)},"stream-inf":function(){this.manifest.playlists=a,this.manifest.mediaGroups=this.manifest.mediaGroups||l,e.attributes?(s.attributes||(s.attributes={}),d.default(s.attributes,e.attributes)):this.trigger("warn",{message:"ignoring empty stream-inf attributes"})},media:function(){if(this.manifest.mediaGroups=this.manifest.mediaGroups||l,e.attributes&&e.attributes.TYPE&&e.attributes["GROUP-ID"]&&e.attributes.NAME){var i=this.manifest.mediaGroups[e.attributes.TYPE];i[e.attributes["GROUP-ID"]]=i[e.attributes["GROUP-ID"]]||{},t=i[e.attributes["GROUP-ID"]],(c={default:/yes/i.test(e.attributes.DEFAULT)}).default?c.autoselect=!0:c.autoselect=/yes/i.test(e.attributes.AUTOSELECT),e.attributes.LANGUAGE&&(c.language=e.attributes.LANGUAGE),e.attributes.URI&&(c.uri=e.attributes.URI),e.attributes["INSTREAM-ID"]&&(c.instreamId=e.attributes["INSTREAM-ID"]),e.attributes.CHARACTERISTICS&&(c.characteristics=e.attributes.CHARACTERISTICS),e.attributes.FORCED&&(c.forced=/yes/i.test(e.attributes.FORCED)),t[e.attributes.NAME]=c}else this.trigger("warn",{message:"ignoring incomplete or missing media group"})},discontinuity:function(){h+=1,s.discontinuity=!0,this.manifest.discontinuityStarts.push(a.length)},"program-date-time":function(){void 0===this.manifest.dateTimeString&&(this.manifest.dateTimeString=e.dateTimeString,this.manifest.dateTimeObject=e.dateTimeObject),s.dateTimeString=e.dateTimeString,s.dateTimeObject=e.dateTimeObject},targetduration:function(){!isFinite(e.duration)||e.duration<0?this.trigger("warn",{message:"ignoring invalid target duration: "+e.duration}):(this.manifest.targetDuration=e.duration,b.call(this,this.manifest))},start:function(){e.attributes&&!isNaN(e.attributes["TIME-OFFSET"])?this.manifest.start={timeOffset:e.attributes["TIME-OFFSET"],precise:e.attributes.PRECISE}:this.trigger("warn",{message:"ignoring start declaration without appropriate attribute list"})},"cue-out":function(){s.cueOut=e.data},"cue-out-cont":function(){s.cueOutCont=e.data},"cue-in":function(){s.cueIn=e.data},skip:function(){this.manifest.skip=y(e.attributes),this.warnOnMissingAttributes_("#EXT-X-SKIP",e.attributes,["SKIPPED-SEGMENTS"])},part:function(){var t=this;o=!0;var i=this.manifest.segments.length,n=y(e.attributes);s.parts=s.parts||[],s.parts.push(n),n.byterange&&(n.byterange.hasOwnProperty("offset")||(n.byterange.offset=g),g=n.byterange.offset+n.byterange.length);var r=s.parts.length-1;this.warnOnMissingAttributes_("#EXT-X-PART #"+r+" for segment #"+i,e.attributes,["URI","DURATION"]),this.manifest.renditionReports&&this.manifest.renditionReports.forEach((function(e,i){e.hasOwnProperty("lastPart")||t.trigger("warn",{message:"#EXT-X-RENDITION-REPORT #"+i+" lacks required attribute(s): LAST-PART"})}))},"server-control":function(){var t=this.manifest.serverControl=y(e.attributes);t.hasOwnProperty("canBlockReload")||(t.canBlockReload=!1,this.trigger("info",{message:"#EXT-X-SERVER-CONTROL defaulting CAN-BLOCK-RELOAD to false"})),b.call(this,this.manifest),t.canSkipDateranges&&!t.hasOwnProperty("canSkipUntil")&&this.trigger("warn",{message:"#EXT-X-SERVER-CONTROL lacks required attribute CAN-SKIP-UNTIL which is required when CAN-SKIP-DATERANGES is set"})},"preload-hint":function(){var t=this.manifest.segments.length,i=y(e.attributes),n=i.type&&"PART"===i.type;s.preloadHints=s.preloadHints||[],s.preloadHints.push(i),i.byterange&&(i.byterange.hasOwnProperty("offset")||(i.byterange.offset=n?g:0,n&&(g=i.byterange.offset+i.byterange.length)));var r=s.preloadHints.length-1;if(this.warnOnMissingAttributes_("#EXT-X-PRELOAD-HINT #"+r+" for segment #"+t,e.attributes,["TYPE","URI"]),i.type)for(var a=0;a=r&&console.debug("["+a.getDurationString(new Date-n,1e3)+"]","["+e+"]",t)},log:function(e,t){this.debug(e.msg)},info:function(e,t){2>=r&&console.info("["+a.getDurationString(new Date-n,1e3)+"]","["+e+"]",t)},warn:function(e,t){3>=r&&a.getDurationString(new Date-n,1e3)},error:function(e,t){4>=r&&console.error("["+a.getDurationString(new Date-n,1e3)+"]","["+e+"]",t)}});a.getDurationString=function(e,t){var i;function n(e,t){for(var i=(""+e).split(".");i[0].length0){for(var i="",n=0;n0&&(i+=","),i+="["+a.getDurationString(e.start(n))+","+a.getDurationString(e.end(n))+"]";return i}return"(empty)"},void 0!==i&&(i.Log=a);var s=function(e){if(!(e instanceof ArrayBuffer))throw"Needs an array buffer";this.buffer=e,this.dataview=new DataView(e),this.position=0};s.prototype.getPosition=function(){return this.position},s.prototype.getEndPosition=function(){return this.buffer.byteLength},s.prototype.getLength=function(){return this.buffer.byteLength},s.prototype.seek=function(e){var t=Math.max(0,Math.min(this.buffer.byteLength,e));return this.position=isNaN(t)||!isFinite(t)?0:t,!0},s.prototype.isEos=function(){return this.getPosition()>=this.getEndPosition()},s.prototype.readAnyInt=function(e,t){var i=0;if(this.position+e<=this.buffer.byteLength){switch(e){case 1:i=t?this.dataview.getInt8(this.position):this.dataview.getUint8(this.position);break;case 2:i=t?this.dataview.getInt16(this.position):this.dataview.getUint16(this.position);break;case 3:if(t)throw"No method for reading signed 24 bits values";i=this.dataview.getUint8(this.position)<<16,i|=this.dataview.getUint8(this.position)<<8,i|=this.dataview.getUint8(this.position);break;case 4:i=t?this.dataview.getInt32(this.position):this.dataview.getUint32(this.position);break;case 8:if(t)throw"No method for reading signed 64 bits values";i=this.dataview.getUint32(this.position)<<32,i|=this.dataview.getUint32(this.position);break;default:throw"readInt method not implemented for size: "+e}return this.position+=e,i}throw"Not enough bytes in buffer"},s.prototype.readUint8=function(){return this.readAnyInt(1,!1)},s.prototype.readUint16=function(){return this.readAnyInt(2,!1)},s.prototype.readUint24=function(){return this.readAnyInt(3,!1)},s.prototype.readUint32=function(){return this.readAnyInt(4,!1)},s.prototype.readUint64=function(){return this.readAnyInt(8,!1)},s.prototype.readString=function(e){if(this.position+e<=this.buffer.byteLength){for(var t="",i=0;ithis._byteLength&&(this._byteLength=t);else{for(i<1&&(i=1);t>i;)i*=2;var n=new ArrayBuffer(i),r=new Uint8Array(this._buffer);new Uint8Array(n,0,r.length).set(r),this.buffer=n,this._byteLength=t}}},o.prototype._trimAlloc=function(){if(this._byteLength!=this._buffer.byteLength){var e=new ArrayBuffer(this._byteLength),t=new Uint8Array(e),i=new Uint8Array(this._buffer,0,t.length);t.set(i),this.buffer=e}},o.BIG_ENDIAN=!1,o.LITTLE_ENDIAN=!0,o.prototype._byteLength=0,Object.defineProperty(o.prototype,"byteLength",{get:function(){return this._byteLength-this._byteOffset}}),Object.defineProperty(o.prototype,"buffer",{get:function(){return this._trimAlloc(),this._buffer},set:function(e){this._buffer=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(o.prototype,"byteOffset",{get:function(){return this._byteOffset},set:function(e){this._byteOffset=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(o.prototype,"dataView",{get:function(){return this._dataView},set:function(e){this._byteOffset=e.byteOffset,this._buffer=e.buffer,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._byteOffset+e.byteLength}}),o.prototype.seek=function(e){var t=Math.max(0,Math.min(this.byteLength,e));this.position=isNaN(t)||!isFinite(t)?0:t},o.prototype.isEof=function(){return this.position>=this._byteLength},o.prototype.mapUint8Array=function(e){this._realloc(1*e);var t=new Uint8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=1*e,t},o.prototype.readInt32Array=function(e,t){e=null==e?this.byteLength-this.position/4:e;var i=new Int32Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readInt16Array=function(e,t){e=null==e?this.byteLength-this.position/2:e;var i=new Int16Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readInt8Array=function(e){e=null==e?this.byteLength-this.position:e;var t=new Int8Array(e);return o.memcpy(t.buffer,0,this.buffer,this.byteOffset+this.position,e*t.BYTES_PER_ELEMENT),this.position+=t.byteLength,t},o.prototype.readUint32Array=function(e,t){e=null==e?this.byteLength-this.position/4:e;var i=new Uint32Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readUint16Array=function(e,t){e=null==e?this.byteLength-this.position/2:e;var i=new Uint16Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readUint8Array=function(e){e=null==e?this.byteLength-this.position:e;var t=new Uint8Array(e);return o.memcpy(t.buffer,0,this.buffer,this.byteOffset+this.position,e*t.BYTES_PER_ELEMENT),this.position+=t.byteLength,t},o.prototype.readFloat64Array=function(e,t){e=null==e?this.byteLength-this.position/8:e;var i=new Float64Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readFloat32Array=function(e,t){e=null==e?this.byteLength-this.position/4:e;var i=new Float32Array(e);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,e*i.BYTES_PER_ELEMENT),o.arrayToNative(i,null==t?this.endianness:t),this.position+=i.byteLength,i},o.prototype.readInt32=function(e){var t=this._dataView.getInt32(this.position,null==e?this.endianness:e);return this.position+=4,t},o.prototype.readInt16=function(e){var t=this._dataView.getInt16(this.position,null==e?this.endianness:e);return this.position+=2,t},o.prototype.readInt8=function(){var e=this._dataView.getInt8(this.position);return this.position+=1,e},o.prototype.readUint32=function(e){var t=this._dataView.getUint32(this.position,null==e?this.endianness:e);return this.position+=4,t},o.prototype.readUint16=function(e){var t=this._dataView.getUint16(this.position,null==e?this.endianness:e);return this.position+=2,t},o.prototype.readUint8=function(){var e=this._dataView.getUint8(this.position);return this.position+=1,e},o.prototype.readFloat32=function(e){var t=this._dataView.getFloat32(this.position,null==e?this.endianness:e);return this.position+=4,t},o.prototype.readFloat64=function(e){var t=this._dataView.getFloat64(this.position,null==e?this.endianness:e);return this.position+=8,t},o.endianness=new Int8Array(new Int16Array([1]).buffer)[0]>0,o.memcpy=function(e,t,i,n,r){var a=new Uint8Array(e,t,r),s=new Uint8Array(i,n,r);a.set(s)},o.arrayToNative=function(e,t){return t==this.endianness?e:this.flipArrayEndianness(e)},o.nativeToEndian=function(e,t){return this.endianness==t?e:this.flipArrayEndianness(e)},o.flipArrayEndianness=function(e){for(var t=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),i=0;ir;n--,r++){var a=t[r];t[r]=t[n],t[n]=a}return e},o.prototype.failurePosition=0,String.fromCharCodeUint8=function(e){for(var t=[],i=0;i>16),this.writeUint8((65280&e)>>8),this.writeUint8(255&e)},o.prototype.adjustUint32=function(e,t){var i=this.position;this.seek(e),this.writeUint32(t),this.seek(i)},o.prototype.mapInt32Array=function(e,t){this._realloc(4*e);var i=new Int32Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=4*e,i},o.prototype.mapInt16Array=function(e,t){this._realloc(2*e);var i=new Int16Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=2*e,i},o.prototype.mapInt8Array=function(e){this._realloc(1*e);var t=new Int8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=1*e,t},o.prototype.mapUint32Array=function(e,t){this._realloc(4*e);var i=new Uint32Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=4*e,i},o.prototype.mapUint16Array=function(e,t){this._realloc(2*e);var i=new Uint16Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=2*e,i},o.prototype.mapFloat64Array=function(e,t){this._realloc(8*e);var i=new Float64Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=8*e,i},o.prototype.mapFloat32Array=function(e,t){this._realloc(4*e);var i=new Float32Array(this._buffer,this.byteOffset+this.position,e);return o.arrayToNative(i,null==t?this.endianness:t),this.position+=4*e,i};var l=function(e){this.buffers=[],this.bufferIndex=-1,e&&(this.insertBuffer(e),this.bufferIndex=0)};(l.prototype=new o(new ArrayBuffer,0,o.BIG_ENDIAN)).initialized=function(){var e;return this.bufferIndex>-1||(this.buffers.length>0?0===(e=this.buffers[0]).fileStart?(this.buffer=e,this.bufferIndex=0,a.debug("MultiBufferStream","Stream ready for parsing"),!0):(a.warn("MultiBufferStream","The first buffer should have a fileStart of 0"),this.logBufferLevel(),!1):(a.warn("MultiBufferStream","No buffer to start parsing from"),this.logBufferLevel(),!1))},ArrayBuffer.concat=function(e,t){a.debug("ArrayBuffer","Trying to create a new buffer of size: "+(e.byteLength+t.byteLength));var i=new Uint8Array(e.byteLength+t.byteLength);return i.set(new Uint8Array(e),0),i.set(new Uint8Array(t),e.byteLength),i.buffer},l.prototype.reduceBuffer=function(e,t,i){var n;return(n=new Uint8Array(i)).set(new Uint8Array(e,t,i)),n.buffer.fileStart=e.fileStart+t,n.buffer.usedBytes=0,n.buffer},l.prototype.insertBuffer=function(e){for(var t=!0,i=0;in.byteLength){this.buffers.splice(i,1),i--;continue}a.warn("MultiBufferStream","Buffer (fileStart: "+e.fileStart+" - Length: "+e.byteLength+") already appended, ignoring")}else e.fileStart+e.byteLength<=n.fileStart||(e=this.reduceBuffer(e,0,n.fileStart-e.fileStart)),a.debug("MultiBufferStream","Appending new buffer (fileStart: "+e.fileStart+" - Length: "+e.byteLength+")"),this.buffers.splice(i,0,e),0===i&&(this.buffer=e);t=!1;break}if(e.fileStart0)){t=!1;break}e=this.reduceBuffer(e,r,s)}}t&&(a.debug("MultiBufferStream","Appending new buffer (fileStart: "+e.fileStart+" - Length: "+e.byteLength+")"),this.buffers.push(e),0===i&&(this.buffer=e))},l.prototype.logBufferLevel=function(e){var t,i,n,r,s,o=[],u="";for(n=0,r=0,t=0;t0&&(u+=s.end-1+"]");var l=e?a.info:a.debug;0===this.buffers.length?l("MultiBufferStream","No more buffer in memory"):l("MultiBufferStream",this.buffers.length+" stored buffer(s) ("+n+"/"+r+" bytes): "+u)},l.prototype.cleanBuffers=function(){var e,t;for(e=0;e"+this.buffer.byteLength+")"),!0}return!1}return!1},l.prototype.findPosition=function(e,t,i){var n,r=null,s=-1;for(n=!0===e?0:this.bufferIndex;n=t?(a.debug("MultiBufferStream","Found position in existing buffer #"+s),s):-1},l.prototype.findEndContiguousBuf=function(e){var t,i,n,r=void 0!==e?e:this.bufferIndex;if(i=this.buffers[r],this.buffers.length>r+1)for(t=r+1;t>3;return 31===n&&i.data.length>=2&&(n=32+((7&i.data[0])<<3)+((224&i.data[1])>>5)),n}return null},i.DecoderConfigDescriptor=function(e){i.Descriptor.call(this,4,e)},i.DecoderConfigDescriptor.prototype=new i.Descriptor,i.DecoderConfigDescriptor.prototype.parse=function(e){this.oti=e.readUint8(),this.streamType=e.readUint8(),this.bufferSize=e.readUint24(),this.maxBitrate=e.readUint32(),this.avgBitrate=e.readUint32(),this.size-=13,this.parseRemainingDescriptors(e)},i.DecoderSpecificInfo=function(e){i.Descriptor.call(this,5,e)},i.DecoderSpecificInfo.prototype=new i.Descriptor,i.SLConfigDescriptor=function(e){i.Descriptor.call(this,6,e)},i.SLConfigDescriptor.prototype=new i.Descriptor,this};void 0!==i&&(i.MPEG4DescriptorParser=h);var d={ERR_INVALID_DATA:-1,ERR_NOT_ENOUGH_DATA:0,OK:1,BASIC_BOXES:["mdat","idat","free","skip","meco","strk"],FULL_BOXES:["hmhd","nmhd","iods","xml ","bxml","ipro","mere"],CONTAINER_BOXES:[["moov",["trak","pssh"]],["trak"],["edts"],["mdia"],["minf"],["dinf"],["stbl",["sgpd","sbgp"]],["mvex",["trex"]],["moof",["traf"]],["traf",["trun","sgpd","sbgp"]],["vttc"],["tref"],["iref"],["mfra",["tfra"]],["meco"],["hnti"],["hinf"],["strk"],["strd"],["sinf"],["rinf"],["schi"],["trgr"],["udta",["kind"]],["iprp",["ipma"]],["ipco"]],boxCodes:[],fullBoxCodes:[],containerBoxCodes:[],sampleEntryCodes:{},sampleGroupEntryCodes:[],trackGroupTypes:[],UUIDBoxes:{},UUIDs:[],initialize:function(){d.FullBox.prototype=new d.Box,d.ContainerBox.prototype=new d.Box,d.SampleEntry.prototype=new d.Box,d.TrackGroupTypeBox.prototype=new d.FullBox,d.BASIC_BOXES.forEach((function(e){d.createBoxCtor(e)})),d.FULL_BOXES.forEach((function(e){d.createFullBoxCtor(e)})),d.CONTAINER_BOXES.forEach((function(e){d.createContainerBoxCtor(e[0],null,e[1])}))},Box:function(e,t,i){this.type=e,this.size=t,this.uuid=i},FullBox:function(e,t,i){d.Box.call(this,e,t,i),this.flags=0,this.version=0},ContainerBox:function(e,t,i){d.Box.call(this,e,t,i),this.boxes=[]},SampleEntry:function(e,t,i,n){d.ContainerBox.call(this,e,t),this.hdr_size=i,this.start=n},SampleGroupEntry:function(e){this.grouping_type=e},TrackGroupTypeBox:function(e,t){d.FullBox.call(this,e,t)},createBoxCtor:function(e,t){d.boxCodes.push(e),d[e+"Box"]=function(t){d.Box.call(this,e,t)},d[e+"Box"].prototype=new d.Box,t&&(d[e+"Box"].prototype.parse=t)},createFullBoxCtor:function(e,t){d[e+"Box"]=function(t){d.FullBox.call(this,e,t)},d[e+"Box"].prototype=new d.FullBox,d[e+"Box"].prototype.parse=function(e){this.parseFullHeader(e),t&&t.call(this,e)}},addSubBoxArrays:function(e){if(e){this.subBoxNames=e;for(var t=e.length,i=0;ii?(a.error("BoxParser","Box of type '"+h+"' has a size "+l+" greater than its container size "+i),{code:d.ERR_NOT_ENOUGH_DATA,type:h,size:l,hdr_size:u,start:o}):o+l>e.getEndPosition()?(e.seek(o),a.info("BoxParser","Not enough data in stream to parse the entire '"+h+"' box"),{code:d.ERR_NOT_ENOUGH_DATA,type:h,size:l,hdr_size:u,start:o}):t?{code:d.OK,type:h,size:l,hdr_size:u,start:o}:(d[h+"Box"]?n=new d[h+"Box"](l):"uuid"!==h?(a.warn("BoxParser","Unknown box type: '"+h+"'"),(n=new d.Box(h,l)).has_unparsed_data=!0):d.UUIDBoxes[s]?n=new d.UUIDBoxes[s](l):(a.warn("BoxParser","Unknown uuid type: '"+s+"'"),(n=new d.Box(h,l)).uuid=s,n.has_unparsed_data=!0),n.hdr_size=u,n.start=o,n.write===d.Box.prototype.write&&"mdat"!==n.type&&(a.info("BoxParser","'"+c+"' box writing not yet implemented, keeping unparsed data in memory for later write"),n.parseDataAndRewind(e)),n.parse(e),(r=e.getPosition()-(n.start+n.size))<0?(a.warn("BoxParser","Parsing of box '"+c+"' did not read the entire indicated box data size (missing "+-r+" bytes), seeking forward"),e.seek(n.start+n.size)):r>0&&(a.error("BoxParser","Parsing of box '"+c+"' read "+r+" more bytes than the indicated box data size, seeking backwards"),e.seek(n.start+n.size)),{code:d.OK,box:n,size:n.size})},d.Box.prototype.parse=function(e){"mdat"!=this.type?this.data=e.readUint8Array(this.size-this.hdr_size):0===this.size?e.seek(e.getEndPosition()):e.seek(this.start+this.size)},d.Box.prototype.parseDataAndRewind=function(e){this.data=e.readUint8Array(this.size-this.hdr_size),e.position-=this.size-this.hdr_size},d.FullBox.prototype.parseDataAndRewind=function(e){this.parseFullHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size),this.hdr_size-=4,e.position-=this.size-this.hdr_size},d.FullBox.prototype.parseFullHeader=function(e){this.version=e.readUint8(),this.flags=e.readUint24(),this.hdr_size+=4},d.FullBox.prototype.parse=function(e){this.parseFullHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size)},d.ContainerBox.prototype.parse=function(e){for(var t,i;e.getPosition()>10&31,t[1]=this.language>>5&31,t[2]=31&this.language,this.languageString=String.fromCharCode(t[0]+96,t[1]+96,t[2]+96)},d.SAMPLE_ENTRY_TYPE_VISUAL="Visual",d.SAMPLE_ENTRY_TYPE_AUDIO="Audio",d.SAMPLE_ENTRY_TYPE_HINT="Hint",d.SAMPLE_ENTRY_TYPE_METADATA="Metadata",d.SAMPLE_ENTRY_TYPE_SUBTITLE="Subtitle",d.SAMPLE_ENTRY_TYPE_SYSTEM="System",d.SAMPLE_ENTRY_TYPE_TEXT="Text",d.SampleEntry.prototype.parseHeader=function(e){e.readUint8Array(6),this.data_reference_index=e.readUint16(),this.hdr_size+=8},d.SampleEntry.prototype.parse=function(e){this.parseHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size)},d.SampleEntry.prototype.parseDataAndRewind=function(e){this.parseHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size),this.hdr_size-=8,e.position-=this.size-this.hdr_size},d.SampleEntry.prototype.parseFooter=function(e){d.ContainerBox.prototype.parse.call(this,e)},d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_HINT),d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_METADATA),d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_SUBTITLE),d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_SYSTEM),d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_TEXT),d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,(function(e){var t;this.parseHeader(e),e.readUint16(),e.readUint16(),e.readUint32Array(3),this.width=e.readUint16(),this.height=e.readUint16(),this.horizresolution=e.readUint32(),this.vertresolution=e.readUint32(),e.readUint32(),this.frame_count=e.readUint16(),t=Math.min(31,e.readUint8()),this.compressorname=e.readString(t),t<31&&e.readString(31-t),this.depth=e.readUint16(),e.readUint16(),this.parseFooter(e)})),d.createMediaSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_AUDIO,(function(e){this.parseHeader(e),e.readUint32Array(2),this.channel_count=e.readUint16(),this.samplesize=e.readUint16(),e.readUint16(),e.readUint16(),this.samplerate=e.readUint32()/65536,this.parseFooter(e)})),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"avc1"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"avc2"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"avc3"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"avc4"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"av01"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"hvc1"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"hev1"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_AUDIO,"mp4a"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_AUDIO,"ac-3"),d.createSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_AUDIO,"ec-3"),d.createEncryptedSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_VISUAL,"encv"),d.createEncryptedSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_AUDIO,"enca"),d.createEncryptedSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_SUBTITLE,"encu"),d.createEncryptedSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_SYSTEM,"encs"),d.createEncryptedSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_TEXT,"enct"),d.createEncryptedSampleEntryCtor(d.SAMPLE_ENTRY_TYPE_METADATA,"encm"),d.createBoxCtor("av1C",(function(e){var t=e.readUint8();if(t>>7&!1)a.error("av1C marker problem");else if(this.version=127&t,1===this.version)if(t=e.readUint8(),this.seq_profile=t>>5&7,this.seq_level_idx_0=31&t,t=e.readUint8(),this.seq_tier_0=t>>7&1,this.high_bitdepth=t>>6&1,this.twelve_bit=t>>5&1,this.monochrome=t>>4&1,this.chroma_subsampling_x=t>>3&1,this.chroma_subsampling_y=t>>2&1,this.chroma_sample_position=3&t,t=e.readUint8(),this.reserved_1=t>>5&7,0===this.reserved_1){if(this.initial_presentation_delay_present=t>>4&1,1===this.initial_presentation_delay_present)this.initial_presentation_delay_minus_one=15&t;else if(this.reserved_2=15&t,0!==this.reserved_2)return void a.error("av1C reserved_2 parsing problem");var i=this.size-this.hdr_size-4;this.configOBUs=e.readUint8Array(i)}else a.error("av1C reserved_1 parsing problem");else a.error("av1C version "+this.version+" not supported")})),d.createBoxCtor("avcC",(function(e){var t,i;for(this.configurationVersion=e.readUint8(),this.AVCProfileIndication=e.readUint8(),this.profile_compatibility=e.readUint8(),this.AVCLevelIndication=e.readUint8(),this.lengthSizeMinusOne=3&e.readUint8(),this.nb_SPS_nalus=31&e.readUint8(),i=this.size-this.hdr_size-6,this.SPS=[],t=0;t0&&(this.ext=e.readUint8Array(i))})),d.createBoxCtor("btrt",(function(e){this.bufferSizeDB=e.readUint32(),this.maxBitrate=e.readUint32(),this.avgBitrate=e.readUint32()})),d.createBoxCtor("clap",(function(e){this.cleanApertureWidthN=e.readUint32(),this.cleanApertureWidthD=e.readUint32(),this.cleanApertureHeightN=e.readUint32(),this.cleanApertureHeightD=e.readUint32(),this.horizOffN=e.readUint32(),this.horizOffD=e.readUint32(),this.vertOffN=e.readUint32(),this.vertOffD=e.readUint32()})),d.createBoxCtor("clli",(function(e){this.max_content_light_level=e.readUint16(),this.max_pic_average_light_level=e.readUint16()})),d.createFullBoxCtor("co64",(function(e){var t,i;if(t=e.readUint32(),this.chunk_offsets=[],0===this.version)for(i=0;i>7}else("rICC"===this.colour_type||"prof"===this.colour_type)&&(this.ICC_profile=e.readUint8Array(this.size-4))})),d.createFullBoxCtor("cprt",(function(e){this.parseLanguage(e),this.notice=e.readCString()})),d.createFullBoxCtor("cslg",(function(e){0===this.version&&(this.compositionToDTSShift=e.readInt32(),this.leastDecodeToDisplayDelta=e.readInt32(),this.greatestDecodeToDisplayDelta=e.readInt32(),this.compositionStartTime=e.readInt32(),this.compositionEndTime=e.readInt32())})),d.createFullBoxCtor("ctts",(function(e){var t,i;if(t=e.readUint32(),this.sample_counts=[],this.sample_offsets=[],0===this.version)for(i=0;i>6,this.bsid=t>>1&31,this.bsmod=(1&t)<<2|i>>6&3,this.acmod=i>>3&7,this.lfeon=i>>2&1,this.bit_rate_code=3&i|n>>5&7})),d.createBoxCtor("dec3",(function(e){var t=e.readUint16();this.data_rate=t>>3,this.num_ind_sub=7&t,this.ind_subs=[];for(var i=0;i>6,n.bsid=r>>1&31,n.bsmod=(1&r)<<4|a>>4&15,n.acmod=a>>1&7,n.lfeon=1&a,n.num_dep_sub=s>>1&15,n.num_dep_sub>0&&(n.chan_loc=(1&s)<<8|e.readUint8())}})),d.createFullBoxCtor("dfLa",(function(e){var t=[],i=["STREAMINFO","PADDING","APPLICATION","SEEKTABLE","VORBIS_COMMENT","CUESHEET","PICTURE","RESERVED"];for(this.parseFullHeader(e);;){var n=e.readUint8(),r=Math.min(127&n,i.length-1);if(r?e.readUint8Array(e.readUint24()):(e.readUint8Array(13),this.samplerate=e.readUint32()>>12,e.readUint8Array(20)),t.push(i[r]),128&n)break}this.numMetadataBlocks=t.length+" ("+t.join(", ")+")"})),d.createBoxCtor("dimm",(function(e){this.bytessent=e.readUint64()})),d.createBoxCtor("dmax",(function(e){this.time=e.readUint32()})),d.createBoxCtor("dmed",(function(e){this.bytessent=e.readUint64()})),d.createFullBoxCtor("dref",(function(e){var t,i;this.entries=[];for(var n=e.readUint32(),r=0;r=4;)this.compatible_brands[i]=e.readString(4),t-=4,i++})),d.createFullBoxCtor("hdlr",(function(e){0===this.version&&(e.readUint32(),this.handler=e.readString(4),e.readUint32Array(3),this.name=e.readString(this.size-this.hdr_size-20),"\0"===this.name[this.name.length-1]&&(this.name=this.name.slice(0,-1)))})),d.createBoxCtor("hvcC",(function(e){var t,i,n,r;this.configurationVersion=e.readUint8(),r=e.readUint8(),this.general_profile_space=r>>6,this.general_tier_flag=(32&r)>>5,this.general_profile_idc=31&r,this.general_profile_compatibility=e.readUint32(),this.general_constraint_indicator=e.readUint8Array(6),this.general_level_idc=e.readUint8(),this.min_spatial_segmentation_idc=4095&e.readUint16(),this.parallelismType=3&e.readUint8(),this.chroma_format_idc=3&e.readUint8(),this.bit_depth_luma_minus8=7&e.readUint8(),this.bit_depth_chroma_minus8=7&e.readUint8(),this.avgFrameRate=e.readUint16(),r=e.readUint8(),this.constantFrameRate=r>>6,this.numTemporalLayers=(13&r)>>3,this.temporalIdNested=(4&r)>>2,this.lengthSizeMinusOne=3&r,this.nalu_arrays=[];var a=e.readUint8();for(t=0;t>7,s.nalu_type=63&r;var o=e.readUint16();for(i=0;i>4&15,this.length_size=15&t,t=e.readUint8(),this.base_offset_size=t>>4&15,1===this.version||2===this.version?this.index_size=15&t:this.index_size=0,this.items=[];var i=0;if(this.version<2)i=e.readUint16();else{if(2!==this.version)throw"version of iloc box not supported";i=e.readUint32()}for(var n=0;n=2&&(2===this.version?this.item_ID=e.readUint16():3===this.version&&(this.item_ID=e.readUint32()),this.item_protection_index=e.readUint16(),this.item_type=e.readString(4),this.item_name=e.readCString(),"mime"===this.item_type?(this.content_type=e.readCString(),this.content_encoding=e.readCString()):"uri "===this.item_type&&(this.item_uri_type=e.readCString()))})),d.createFullBoxCtor("ipma",(function(e){var t,i;for(entry_count=e.readUint32(),this.associations=[],t=0;t>7==1,1&this.flags?s.property_index=(127&a)<<8|e.readUint8():s.property_index=127&a}}})),d.createFullBoxCtor("iref",(function(e){var t,i;for(this.references=[];e.getPosition()>7,n.assignment_type=127&r,n.assignment_type){case 0:n.grouping_type=e.readString(4);break;case 1:n.grouping_type=e.readString(4),n.grouping_type_parameter=e.readUint32();break;case 2:case 3:break;case 4:n.sub_track_id=e.readUint32();break;default:a.warn("BoxParser","Unknown leva assignement type")}}})),d.createBoxCtor("maxr",(function(e){this.period=e.readUint32(),this.bytes=e.readUint32()})),d.createBoxCtor("mdcv",(function(e){this.display_primaries=[],this.display_primaries[0]={},this.display_primaries[0].x=e.readUint16(),this.display_primaries[0].y=e.readUint16(),this.display_primaries[1]={},this.display_primaries[1].x=e.readUint16(),this.display_primaries[1].y=e.readUint16(),this.display_primaries[2]={},this.display_primaries[2].x=e.readUint16(),this.display_primaries[2].y=e.readUint16(),this.white_point={},this.white_point.x=e.readUint16(),this.white_point.y=e.readUint16(),this.max_display_mastering_luminance=e.readUint32(),this.min_display_mastering_luminance=e.readUint32()})),d.createFullBoxCtor("mdhd",(function(e){1==this.version?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.timescale=e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.timescale=e.readUint32(),this.duration=e.readUint32()),this.parseLanguage(e),e.readUint16()})),d.createFullBoxCtor("mehd",(function(e){1&this.flags&&(a.warn("BoxParser","mehd box incorrectly uses flags set to 1, converting version to 1"),this.version=1),1==this.version?this.fragment_duration=e.readUint64():this.fragment_duration=e.readUint32()})),d.createFullBoxCtor("meta",(function(e){this.boxes=[],d.ContainerBox.prototype.parse.call(this,e)})),d.createFullBoxCtor("mfhd",(function(e){this.sequence_number=e.readUint32()})),d.createFullBoxCtor("mfro",(function(e){this._size=e.readUint32()})),d.createFullBoxCtor("mvhd",(function(e){1==this.version?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.timescale=e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.timescale=e.readUint32(),this.duration=e.readUint32()),this.rate=e.readUint32(),this.volume=e.readUint16()>>8,e.readUint16(),e.readUint32Array(2),this.matrix=e.readUint32Array(9),e.readUint32Array(6),this.next_track_id=e.readUint32()})),d.createBoxCtor("npck",(function(e){this.packetssent=e.readUint32()})),d.createBoxCtor("nump",(function(e){this.packetssent=e.readUint64()})),d.createFullBoxCtor("padb",(function(e){var t=e.readUint32();this.padbits=[];for(var i=0;i0){var t=e.readUint32();this.kid=[];for(var i=0;i0&&(this.data=e.readUint8Array(n))})),d.createFullBoxCtor("clef",(function(e){this.width=e.readUint32(),this.height=e.readUint32()})),d.createFullBoxCtor("enof",(function(e){this.width=e.readUint32(),this.height=e.readUint32()})),d.createFullBoxCtor("prof",(function(e){this.width=e.readUint32(),this.height=e.readUint32()})),d.createContainerBoxCtor("tapt",null,["clef","prof","enof"]),d.createBoxCtor("rtp ",(function(e){this.descriptionformat=e.readString(4),this.sdptext=e.readString(this.size-this.hdr_size-4)})),d.createFullBoxCtor("saio",(function(e){1&this.flags&&(this.aux_info_type=e.readUint32(),this.aux_info_type_parameter=e.readUint32());var t=e.readUint32();this.offset=[];for(var i=0;i>7,this.avgRateFlag=t>>6&1,this.durationFlag&&(this.duration=e.readUint32()),this.avgRateFlag&&(this.accurateStatisticsFlag=e.readUint8(),this.avgBitRate=e.readUint16(),this.avgFrameRate=e.readUint16()),this.dependency=[];for(var i=e.readUint8(),n=0;n>7,this.num_leading_samples=127&t})),d.createSampleGroupCtor("rash",(function(e){if(this.operation_point_count=e.readUint16(),this.description_length!==2+(1===this.operation_point_count?2:6*this.operation_point_count)+9)a.warn("BoxParser","Mismatch in "+this.grouping_type+" sample group length"),this.data=e.readUint8Array(this.description_length-2);else{if(1===this.operation_point_count)this.target_rate_share=e.readUint16();else{this.target_rate_share=[],this.available_bitrate=[];for(var t=0;t>4,this.skip_byte_block=15&t,this.isProtected=e.readUint8(),this.Per_Sample_IV_Size=e.readUint8(),this.KID=d.parseHex16(e),this.constant_IV_size=0,this.constant_IV=0,1===this.isProtected&&0===this.Per_Sample_IV_Size&&(this.constant_IV_size=e.readUint8(),this.constant_IV=e.readUint8Array(this.constant_IV_size))})),d.createSampleGroupCtor("stsa",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),d.createSampleGroupCtor("sync",(function(e){var t=e.readUint8();this.NAL_unit_type=63&t})),d.createSampleGroupCtor("tele",(function(e){var t=e.readUint8();this.level_independently_decodable=t>>7})),d.createSampleGroupCtor("tsas",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),d.createSampleGroupCtor("tscl",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),d.createSampleGroupCtor("vipr",(function(e){a.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")})),d.createFullBoxCtor("sbgp",(function(e){this.grouping_type=e.readString(4),1===this.version?this.grouping_type_parameter=e.readUint32():this.grouping_type_parameter=0,this.entries=[];for(var t=e.readUint32(),i=0;i>6,this.sample_depends_on[n]=t>>4&3,this.sample_is_depended_on[n]=t>>2&3,this.sample_has_redundancy[n]=3&t})),d.createFullBoxCtor("senc"),d.createFullBoxCtor("sgpd",(function(e){this.grouping_type=e.readString(4),a.debug("BoxParser","Found Sample Groups of type "+this.grouping_type),1===this.version?this.default_length=e.readUint32():this.default_length=0,this.version>=2&&(this.default_group_description_index=e.readUint32()),this.entries=[];for(var t=e.readUint32(),i=0;i>31&1,n.referenced_size=2147483647&r,n.subsegment_duration=e.readUint32(),r=e.readUint32(),n.starts_with_SAP=r>>31&1,n.SAP_type=r>>28&7,n.SAP_delta_time=268435455&r}})),d.SingleItemTypeReferenceBox=function(e,t,i,n){d.Box.call(this,e,t),this.hdr_size=i,this.start=n},d.SingleItemTypeReferenceBox.prototype=new d.Box,d.SingleItemTypeReferenceBox.prototype.parse=function(e){this.from_item_ID=e.readUint16();var t=e.readUint16();this.references=[];for(var i=0;i>4&15,this.sample_sizes[t+1]=15&n}else if(8===this.field_size)for(t=0;t0)for(i=0;i>4&15,this.default_skip_byte_block=15&t}this.default_isProtected=e.readUint8(),this.default_Per_Sample_IV_Size=e.readUint8(),this.default_KID=d.parseHex16(e),1===this.default_isProtected&&0===this.default_Per_Sample_IV_Size&&(this.default_constant_IV_size=e.readUint8(),this.default_constant_IV=e.readUint8Array(this.default_constant_IV_size))})),d.createFullBoxCtor("tfdt",(function(e){1==this.version?this.baseMediaDecodeTime=e.readUint64():this.baseMediaDecodeTime=e.readUint32()})),d.createFullBoxCtor("tfhd",(function(e){var t=0;this.track_id=e.readUint32(),this.size-this.hdr_size>t&&this.flags&d.TFHD_FLAG_BASE_DATA_OFFSET?(this.base_data_offset=e.readUint64(),t+=8):this.base_data_offset=0,this.size-this.hdr_size>t&&this.flags&d.TFHD_FLAG_SAMPLE_DESC?(this.default_sample_description_index=e.readUint32(),t+=4):this.default_sample_description_index=0,this.size-this.hdr_size>t&&this.flags&d.TFHD_FLAG_SAMPLE_DUR?(this.default_sample_duration=e.readUint32(),t+=4):this.default_sample_duration=0,this.size-this.hdr_size>t&&this.flags&d.TFHD_FLAG_SAMPLE_SIZE?(this.default_sample_size=e.readUint32(),t+=4):this.default_sample_size=0,this.size-this.hdr_size>t&&this.flags&d.TFHD_FLAG_SAMPLE_FLAGS?(this.default_sample_flags=e.readUint32(),t+=4):this.default_sample_flags=0})),d.createFullBoxCtor("tfra",(function(e){this.track_ID=e.readUint32(),e.readUint24();var t=e.readUint8();this.length_size_of_traf_num=t>>4&3,this.length_size_of_trun_num=t>>2&3,this.length_size_of_sample_num=3&t,this.entries=[];for(var i=e.readUint32(),n=0;n>8,e.readUint16(),this.matrix=e.readInt32Array(9),this.width=e.readUint32(),this.height=e.readUint32()})),d.createBoxCtor("tmax",(function(e){this.time=e.readUint32()})),d.createBoxCtor("tmin",(function(e){this.time=e.readUint32()})),d.createBoxCtor("totl",(function(e){this.bytessent=e.readUint32()})),d.createBoxCtor("tpay",(function(e){this.bytessent=e.readUint32()})),d.createBoxCtor("tpyl",(function(e){this.bytessent=e.readUint64()})),d.TrackGroupTypeBox.prototype.parse=function(e){this.parseFullHeader(e),this.track_group_id=e.readUint32()},d.createTrackGroupCtor("msrc"),d.TrackReferenceTypeBox=function(e,t,i,n){d.Box.call(this,e,t),this.hdr_size=i,this.start=n},d.TrackReferenceTypeBox.prototype=new d.Box,d.TrackReferenceTypeBox.prototype.parse=function(e){this.track_ids=e.readUint32Array((this.size-this.hdr_size)/4)},d.trefBox.prototype.parse=function(e){for(var t,i;e.getPosition()t&&this.flags&d.TRUN_FLAGS_DATA_OFFSET?(this.data_offset=e.readInt32(),t+=4):this.data_offset=0,this.size-this.hdr_size>t&&this.flags&d.TRUN_FLAGS_FIRST_FLAG?(this.first_sample_flags=e.readUint32(),t+=4):this.first_sample_flags=0,this.sample_duration=[],this.sample_size=[],this.sample_flags=[],this.sample_composition_time_offset=[],this.size-this.hdr_size>t)for(var i=0;i0&&(this.location=e.readCString())})),d.createUUIDBox("a5d40b30e81411ddba2f0800200c9a66",!0,!1,(function(e){this.LiveServerManifest=e.readString(this.size-this.hdr_size).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")})),d.createUUIDBox("d08a4f1810f34a82b6c832d8aba183d3",!0,!1,(function(e){this.system_id=d.parseHex16(e);var t=e.readUint32();t>0&&(this.data=e.readUint8Array(t))})),d.createUUIDBox("a2394f525a9b4f14a2446c427c648df4",!0,!1),d.createUUIDBox("8974dbce7be74c5184f97148f9882554",!0,!1,(function(e){this.default_AlgorithmID=e.readUint24(),this.default_IV_size=e.readUint8(),this.default_KID=d.parseHex16(e)})),d.createUUIDBox("d4807ef2ca3946958e5426cb9e46a79f",!0,!1,(function(e){this.fragment_count=e.readUint8(),this.entries=[];for(var t=0;t>4,this.chromaSubsampling=t>>1&7,this.videoFullRangeFlag=1&t,this.colourPrimaries=e.readUint8(),this.transferCharacteristics=e.readUint8(),this.matrixCoefficients=e.readUint8(),this.codecIntializationDataSize=e.readUint16(),this.codecIntializationData=e.readUint8Array(this.codecIntializationDataSize)):(this.profile=e.readUint8(),this.level=e.readUint8(),t=e.readUint8(),this.bitDepth=t>>4&15,this.colorSpace=15&t,t=e.readUint8(),this.chromaSubsampling=t>>4&15,this.transferFunction=t>>1&7,this.videoFullRangeFlag=1&t,this.codecIntializationDataSize=e.readUint16(),this.codecIntializationData=e.readUint8Array(this.codecIntializationDataSize))})),d.createBoxCtor("vttC",(function(e){this.text=e.readString(this.size-this.hdr_size)})),d.SampleEntry.prototype.isVideo=function(){return!1},d.SampleEntry.prototype.isAudio=function(){return!1},d.SampleEntry.prototype.isSubtitle=function(){return!1},d.SampleEntry.prototype.isMetadata=function(){return!1},d.SampleEntry.prototype.isHint=function(){return!1},d.SampleEntry.prototype.getCodec=function(){return this.type.replace(".","")},d.SampleEntry.prototype.getWidth=function(){return""},d.SampleEntry.prototype.getHeight=function(){return""},d.SampleEntry.prototype.getChannelCount=function(){return""},d.SampleEntry.prototype.getSampleRate=function(){return""},d.SampleEntry.prototype.getSampleSize=function(){return""},d.VisualSampleEntry.prototype.isVideo=function(){return!0},d.VisualSampleEntry.prototype.getWidth=function(){return this.width},d.VisualSampleEntry.prototype.getHeight=function(){return this.height},d.AudioSampleEntry.prototype.isAudio=function(){return!0},d.AudioSampleEntry.prototype.getChannelCount=function(){return this.channel_count},d.AudioSampleEntry.prototype.getSampleRate=function(){return this.samplerate},d.AudioSampleEntry.prototype.getSampleSize=function(){return this.samplesize},d.SubtitleSampleEntry.prototype.isSubtitle=function(){return!0},d.MetadataSampleEntry.prototype.isMetadata=function(){return!0},d.decimalToHex=function(e,t){var i=Number(e).toString(16);for(t=null==t?t=2:t;i.length>=1;t+=d.decimalToHex(n,0),t+=".",0===this.hvcC.general_tier_flag?t+="L":t+="H",t+=this.hvcC.general_level_idc;var r=!1,a="";for(e=5;e>=0;e--)(this.hvcC.general_constraint_indicator[e]||r)&&(a="."+d.decimalToHex(this.hvcC.general_constraint_indicator[e],0)+a,r=!0);t+=a}return t},d.mp4aSampleEntry.prototype.getCodec=function(){var e=d.SampleEntry.prototype.getCodec.call(this);if(this.esds&&this.esds.esd){var t=this.esds.esd.getOTI(),i=this.esds.esd.getAudioConfig();return e+"."+d.decimalToHex(t)+(i?"."+i:"")}return e},d.stxtSampleEntry.prototype.getCodec=function(){var e=d.SampleEntry.prototype.getCodec.call(this);return this.mime_format?e+"."+this.mime_format:e},d.av01SampleEntry.prototype.getCodec=function(){var e,t=d.SampleEntry.prototype.getCodec.call(this);return 2===this.av1C.seq_profile&&1===this.av1C.high_bitdepth?e=1===this.av1C.twelve_bit?"12":"10":this.av1C.seq_profile<=2&&(e=1===this.av1C.high_bitdepth?"10":"08"),t+"."+this.av1C.seq_profile+"."+this.av1C.seq_level_idx_0+(this.av1C.seq_tier_0?"H":"M")+"."+e},d.Box.prototype.writeHeader=function(e,t){this.size+=8,this.size>u&&(this.size+=8),"uuid"===this.type&&(this.size+=16),a.debug("BoxWriter","Writing box "+this.type+" of size: "+this.size+" at position "+e.getPosition()+(t||"")),this.size>u?e.writeUint32(1):(this.sizePosition=e.getPosition(),e.writeUint32(this.size)),e.writeString(this.type,null,4),"uuid"===this.type&&e.writeUint8Array(this.uuid),this.size>u&&e.writeUint64(this.size)},d.FullBox.prototype.writeHeader=function(e){this.size+=4,d.Box.prototype.writeHeader.call(this,e," v="+this.version+" f="+this.flags),e.writeUint8(this.version),e.writeUint24(this.flags)},d.Box.prototype.write=function(e){"mdat"===this.type?this.data&&(this.size=this.data.length,this.writeHeader(e),e.writeUint8Array(this.data)):(this.size=this.data?this.data.length:0,this.writeHeader(e),this.data&&e.writeUint8Array(this.data))},d.ContainerBox.prototype.write=function(e){this.size=0,this.writeHeader(e);for(var t=0;t=2&&e.writeUint32(this.default_sample_description_index),e.writeUint32(this.entries.length),t=0;t0)for(t=0;t+1-1||e[i]instanceof d.Box||t[i]instanceof d.Box||void 0===e[i]||void 0===t[i]||"function"==typeof e[i]||"function"==typeof t[i]||e.subBoxNames&&e.subBoxNames.indexOf(i.slice(0,4))>-1||t.subBoxNames&&t.subBoxNames.indexOf(i.slice(0,4))>-1||"data"===i||"start"===i||"size"===i||"creation_time"===i||"modification_time"===i||d.DIFF_PRIMITIVE_ARRAY_PROP_NAMES.indexOf(i)>-1||e[i]===t[i]))return!1;return!0},d.boxEqual=function(e,t){if(!d.boxEqualFields(e,t))return!1;for(var i=0;i=t?e:new Array(t-e.length+1).join(i)+e}function r(e){var t=Math.floor(e/3600),i=Math.floor((e-3600*t)/60),r=Math.floor(e-3600*t-60*i),a=Math.floor(1e3*(e-3600*t-60*i-r));return n(t,2)+":"+n(i,2)+":"+n(r,2)+"."+n(a,3)}for(var a=this.parseSample(i),s="",o=0;o1)for(t=1;t-1&&this.fragmentedTracks.splice(t,1)},m.prototype.setExtractionOptions=function(e,t,i){var n=this.getTrackById(e);if(n){var r={};this.extractedTracks.push(r),r.id=e,r.user=t,r.trak=n,n.nextSample=0,r.nb_samples=1e3,r.samples=[],i&&i.nbSamples&&(r.nb_samples=i.nbSamples)}},m.prototype.unsetExtractionOptions=function(e){for(var t=-1,i=0;i-1&&this.extractedTracks.splice(t,1)},m.prototype.parse=function(){var e,t;if(!this.restoreParsePosition||this.restoreParsePosition())for(;;){if(this.hasIncompleteMdat&&this.hasIncompleteMdat()){if(this.processIncompleteMdat())continue;return}if(this.saveParsePosition&&this.saveParsePosition(),(e=d.parseOneBox(this.stream,!1)).code===d.ERR_NOT_ENOUGH_DATA){if(this.processIncompleteBox){if(this.processIncompleteBox(e))continue;return}return}var i;switch(i="uuid"!==(t=e.box).type?t.type:t.uuid,this.boxes.push(t),i){case"mdat":this.mdats.push(t);break;case"moof":this.moofs.push(t);break;case"moov":this.moovStartFound=!0,0===this.mdats.length&&(this.isProgressive=!0);default:void 0!==this[i]&&a.warn("ISOFile","Duplicate Box of type: "+i+", overriding previous occurrence"),this[i]=t}this.updateUsedBytes&&this.updateUsedBytes(t,e)}},m.prototype.checkBuffer=function(e){if(null==e)throw"Buffer must be defined and non empty";if(void 0===e.fileStart)throw"Buffer must have a fileStart property";return 0===e.byteLength?(a.warn("ISOFile","Ignoring empty buffer (fileStart: "+e.fileStart+")"),this.stream.logBufferLevel(),!1):(a.info("ISOFile","Processing buffer (fileStart: "+e.fileStart+")"),e.usedBytes=0,this.stream.insertBuffer(e),this.stream.logBufferLevel(),!!this.stream.initialized()||(a.warn("ISOFile","Not ready to start parsing"),!1))},m.prototype.appendBuffer=function(e,t){var i;if(this.checkBuffer(e))return this.parse(),this.moovStartFound&&!this.moovStartSent&&(this.moovStartSent=!0,this.onMoovStart&&this.onMoovStart()),this.moov?(this.sampleListBuilt||(this.buildSampleLists(),this.sampleListBuilt=!0),this.updateSampleLists(),this.onReady&&!this.readySent&&(this.readySent=!0,this.onReady(this.getInfo())),this.processSamples(t),this.nextSeekPosition?(i=this.nextSeekPosition,this.nextSeekPosition=void 0):i=this.nextParsePosition,this.stream.getEndFilePositionAfter&&(i=this.stream.getEndFilePositionAfter(i))):i=this.nextParsePosition?this.nextParsePosition:0,this.sidx&&this.onSidx&&!this.sidxSent&&(this.onSidx(this.sidx),this.sidxSent=!0),this.meta&&(this.flattenItemInfo&&!this.itemListBuilt&&(this.flattenItemInfo(),this.itemListBuilt=!0),this.processItems&&this.processItems(this.onItem)),this.stream.cleanBuffers&&(a.info("ISOFile","Done processing buffer (fileStart: "+e.fileStart+") - next buffer to fetch should have a fileStart position of "+i),this.stream.logBufferLevel(),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0),a.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize())),i},m.prototype.getInfo=function(){var e,t,i,n,r,a={},s=new Date("1904-01-01T00:00:00Z").getTime();if(this.moov)for(a.hasMoov=!0,a.duration=this.moov.mvhd.duration,a.timescale=this.moov.mvhd.timescale,a.isFragmented=null!=this.moov.mvex,a.isFragmented&&this.moov.mvex.mehd&&(a.fragment_duration=this.moov.mvex.mehd.fragment_duration),a.isProgressive=this.isProgressive,a.hasIOD=null!=this.moov.iods,a.brands=[],a.brands.push(this.ftyp.major_brand),a.brands=a.brands.concat(this.ftyp.compatible_brands),a.created=new Date(s+1e3*this.moov.mvhd.creation_time),a.modified=new Date(s+1e3*this.moov.mvhd.modification_time),a.tracks=[],a.audioTracks=[],a.videoTracks=[],a.subtitleTracks=[],a.metadataTracks=[],a.hintTracks=[],a.otherTracks=[],e=0;e0?a.mime+='video/mp4; codecs="':a.audioTracks&&a.audioTracks.length>0?a.mime+='audio/mp4; codecs="':a.mime+='application/mp4; codecs="',e=0;e=i.samples.length)&&(a.info("ISOFile","Sending fragmented data on track #"+n.id+" for samples ["+Math.max(0,i.nextSample-n.nb_samples)+","+(i.nextSample-1)+"]"),a.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize()),this.onSegment&&this.onSegment(n.id,n.user,n.segmentStream.buffer,i.nextSample,e||i.nextSample>=i.samples.length),n.segmentStream=null,n!==this.fragmentedTracks[t]))break}}if(null!==this.onSamples)for(t=0;t=i.samples.length)&&(a.debug("ISOFile","Sending samples on track #"+s.id+" for sample "+i.nextSample),this.onSamples&&this.onSamples(s.id,s.user,s.samples),s.samples=[],s!==this.extractedTracks[t]))break}}}},m.prototype.getBox=function(e){var t=this.getBoxes(e,!0);return t.length?t[0]:null},m.prototype.getBoxes=function(e,t){var i=[];return m._sweep.call(this,e,i,t),i},m._sweep=function(e,t,i){for(var n in this.type&&this.type==e&&t.push(this),this.boxes){if(t.length&&i)return;m._sweep.call(this.boxes[n],e,t,i)}},m.prototype.getTrackSamplesInfo=function(e){var t=this.getTrackById(e);return t?t.samples:void 0},m.prototype.getTrackSample=function(e,t){var i=this.getTrackById(e);return this.getSample(i,t)},m.prototype.releaseUsedSamples=function(e,t){var i=0,n=this.getTrackById(e);n.lastValidSample||(n.lastValidSample=0);for(var r=n.lastValidSample;re*r.timescale){l=n-1;break}t&&r.is_sync&&(u=n)}for(t&&(l=u),e=i.samples[l].cts,i.nextSample=l;i.samples[l].alreadyRead===i.samples[l].size&&i.samples[l+1];)l++;return s=i.samples[l].offset+i.samples[l].alreadyRead,a.info("ISOFile","Seeking to "+(t?"RAP":"")+" sample #"+i.nextSample+" on track "+i.tkhd.track_id+", time "+a.getDurationString(e,o)+" and offset: "+s),{offset:s,time:e/o}},m.prototype.seek=function(e,t){var i,n,r,s=this.moov,o={offset:1/0,time:1/0};if(this.moov){for(r=0;r-1){s=o;break}switch(s){case"Visual":r.add("vmhd").set("graphicsmode",0).set("opcolor",[0,0,0]),a.set("width",t.width).set("height",t.height).set("horizresolution",72<<16).set("vertresolution",72<<16).set("frame_count",1).set("compressorname",t.type+" Compressor").set("depth",24);break;case"Audio":r.add("smhd").set("balance",t.balance||0),a.set("channel_count",t.channel_count||2).set("samplesize",t.samplesize||16).set("samplerate",t.samplerate||65536);break;case"Hint":r.add("hmhd");break;case"Subtitle":switch(r.add("sthd"),t.type){case"stpp":a.set("namespace",t.namespace||"nonamespace").set("schema_location",t.schema_location||"").set("auxiliary_mime_types",t.auxiliary_mime_types||"")}break;case"Metadata":case"System":default:r.add("nmhd")}t.description&&a.addBox(t.description),t.description_boxes&&t.description_boxes.forEach((function(e){a.addBox(e)})),r.add("dinf").add("dref").addEntry((new d["url Box"]).set("flags",1));var h=r.add("stbl");return h.add("stsd").addEntry(a),h.add("stts").set("sample_counts",[]).set("sample_deltas",[]),h.add("stsc").set("first_chunk",[]).set("samples_per_chunk",[]).set("sample_description_index",[]),h.add("stco").set("chunk_offsets",[]),h.add("stsz").set("sample_sizes",[]),this.moov.mvex.add("trex").set("track_id",t.id).set("default_sample_description_index",t.default_sample_description_index||1).set("default_sample_duration",t.default_sample_duration||0).set("default_sample_size",t.default_sample_size||0).set("default_sample_flags",t.default_sample_flags||0),this.buildTrakSampleLists(i),t.id}},d.Box.prototype.computeSize=function(e){var t=e||new o;t.endianness=o.BIG_ENDIAN,this.write(t)},m.prototype.addSample=function(e,t,i){var n=i||{},r={},a=this.getTrackById(e);if(null!==a){r.number=a.samples.length,r.track_id=a.tkhd.track_id,r.timescale=a.mdia.mdhd.timescale,r.description_index=n.sample_description_index?n.sample_description_index-1:0,r.description=a.mdia.minf.stbl.stsd.entries[r.description_index],r.data=t,r.size=t.length,r.alreadyRead=r.size,r.duration=n.duration||1,r.cts=n.cts||0,r.dts=n.dts||0,r.is_sync=n.is_sync||!1,r.is_leading=n.is_leading||0,r.depends_on=n.depends_on||0,r.is_depended_on=n.is_depended_on||0,r.has_redundancy=n.has_redundancy||0,r.degradation_priority=n.degradation_priority||0,r.offset=0,r.subsamples=n.subsamples,a.samples.push(r),a.samples_size+=r.size,a.samples_duration+=r.duration,this.processSamples();var s=m.createSingleSampleMoof(r);return this.addBox(s),s.computeSize(),s.trafs[0].truns[0].data_offset=s.size+8,this.add("mdat").data=t,r}},m.createSingleSampleMoof=function(e){var t=new d.moofBox;t.add("mfhd").set("sequence_number",this.nextMoofNumber),this.nextMoofNumber++;var i=t.add("traf");return i.add("tfhd").set("track_id",e.track_id).set("flags",d.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),i.add("tfdt").set("baseMediaDecodeTime",e.dts),i.add("trun").set("flags",d.TRUN_FLAGS_DATA_OFFSET|d.TRUN_FLAGS_DURATION|d.TRUN_FLAGS_SIZE|d.TRUN_FLAGS_FLAGS|d.TRUN_FLAGS_CTS_OFFSET).set("data_offset",0).set("first_sample_flags",0).set("sample_count",1).set("sample_duration",[e.duration]).set("sample_size",[e.size]).set("sample_flags",[0]).set("sample_composition_time_offset",[e.cts-e.dts]),t},m.prototype.lastMoofIndex=0,m.prototype.samplesDataSize=0,m.prototype.resetTables=function(){var e,t,i,n,r,a;for(this.initial_duration=this.moov.mvhd.duration,this.moov.mvhd.duration=0,e=0;e=2&&(u=r[s].grouping_type+"/0",(o=new l(r[s].grouping_type,0)).is_fragment=!0,t.sample_groups_info[u]||(t.sample_groups_info[u]=o))}else for(s=0;s=2&&(u=n[s].grouping_type+"/0",o=new l(n[s].grouping_type,0),e.sample_groups_info[u]||(e.sample_groups_info[u]=o))},m.setSampleGroupProperties=function(e,t,i,n){var r,a;for(r in t.sample_groups=[],n){var s;if(t.sample_groups[r]={},t.sample_groups[r].grouping_type=n[r].grouping_type,t.sample_groups[r].grouping_type_parameter=n[r].grouping_type_parameter,i>=n[r].last_sample_in_run&&(n[r].last_sample_in_run<0&&(n[r].last_sample_in_run=0),n[r].entry_index++,n[r].entry_index<=n[r].sbgp.entries.length-1&&(n[r].last_sample_in_run+=n[r].sbgp.entries[n[r].entry_index].sample_count)),n[r].entry_index<=n[r].sbgp.entries.length-1?t.sample_groups[r].group_description_index=n[r].sbgp.entries[n[r].entry_index].group_description_index:t.sample_groups[r].group_description_index=-1,0!==t.sample_groups[r].group_description_index)s=n[r].fragment_description?n[r].fragment_description:n[r].description,t.sample_groups[r].group_description_index>0?(a=t.sample_groups[r].group_description_index>65535?(t.sample_groups[r].group_description_index>>16)-1:t.sample_groups[r].group_description_index-1,s&&a>=0&&(t.sample_groups[r].description=s.entries[a])):s&&s.version>=2&&s.default_group_description_index>0&&(t.sample_groups[r].description=s.entries[s.default_group_description_index-1])}},m.process_sdtp=function(e,t,i){t&&(e?(t.is_leading=e.is_leading[i],t.depends_on=e.sample_depends_on[i],t.is_depended_on=e.sample_is_depended_on[i],t.has_redundancy=e.sample_has_redundancy[i]):(t.is_leading=0,t.depends_on=0,t.is_depended_on=0,t.has_redundancy=0))},m.prototype.buildSampleLists=function(){var e,t;for(e=0;ey&&(b++,y<0&&(y=0),y+=a.sample_counts[b]),t>0?(e.samples[t-1].duration=a.sample_deltas[b],e.samples_duration+=e.samples[t-1].duration,A.dts=e.samples[t-1].dts+e.samples[t-1].duration):A.dts=0,s?(t>=T&&(S++,T<0&&(T=0),T+=s.sample_counts[S]),A.cts=e.samples[t].dts+s.sample_offsets[S]):A.cts=A.dts,o?(t==o.sample_numbers[E]-1?(A.is_sync=!0,E++):(A.is_sync=!1,A.degradation_priority=0),l&&l.entries[w].sample_delta+C==t+1&&(A.subsamples=l.entries[w].subsamples,C+=l.entries[w].sample_delta,w++)):A.is_sync=!0,m.process_sdtp(e.mdia.minf.stbl.sdtp,A,A.number),A.degradation_priority=c?c.priority[t]:0,l&&l.entries[w].sample_delta+C==t&&(A.subsamples=l.entries[w].subsamples,C+=l.entries[w].sample_delta),(h.length>0||d.length>0)&&m.setSampleGroupProperties(e,A,t,e.sample_groups_info)}t>0&&(e.samples[t-1].duration=Math.max(e.mdia.mdhd.duration-e.samples[t-1].dts,0),e.samples_duration+=e.samples[t-1].duration)}},m.prototype.updateSampleLists=function(){var e,t,i,n,r,a,s,o,u,l,h,c,f,p,g;if(void 0!==this.moov)for(;this.lastMoofIndex0&&m.initSampleGroups(c,h,h.sbgps,c.mdia.minf.stbl.sgpds,h.sgpds),t=0;t0?p.dts=c.samples[c.samples.length-2].dts+c.samples[c.samples.length-2].duration:(h.tfdt?p.dts=h.tfdt.baseMediaDecodeTime:p.dts=0,c.first_traf_merged=!0),p.cts=p.dts,_.flags&d.TRUN_FLAGS_CTS_OFFSET&&(p.cts=p.dts+_.sample_composition_time_offset[i]),g=s,_.flags&d.TRUN_FLAGS_FLAGS?g=_.sample_flags[i]:0===i&&_.flags&d.TRUN_FLAGS_FIRST_FLAG&&(g=_.first_sample_flags),p.is_sync=!(g>>16&1),p.is_leading=g>>26&3,p.depends_on=g>>24&3,p.is_depended_on=g>>22&3,p.has_redundancy=g>>20&3,p.degradation_priority=65535&g;var v=!!(h.tfhd.flags&d.TFHD_FLAG_BASE_DATA_OFFSET),y=!!(h.tfhd.flags&d.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),b=!!(_.flags&d.TRUN_FLAGS_DATA_OFFSET),T=0;T=v?h.tfhd.base_data_offset:y||0===t?l.start:o,p.offset=0===t&&0===i?b?T+_.data_offset:T:o,o=p.offset+p.size,(h.sbgps.length>0||h.sgpds.length>0||c.mdia.minf.stbl.sbgps.length>0||c.mdia.minf.stbl.sgpds.length>0)&&m.setSampleGroupProperties(c,p,p.number_in_traf,h.sample_groups_info)}}if(h.subs){c.has_fragment_subsamples=!0;var S=h.first_sample_index;for(t=0;t-1))return null;var s=(i=this.stream.buffers[r]).byteLength-(n.offset+n.alreadyRead-i.fileStart);if(n.size-n.alreadyRead<=s)return a.debug("ISOFile","Getting sample #"+t+" data (alreadyRead: "+n.alreadyRead+" offset: "+(n.offset+n.alreadyRead-i.fileStart)+" read size: "+(n.size-n.alreadyRead)+" full size: "+n.size+")"),o.memcpy(n.data.buffer,n.alreadyRead,i,n.offset+n.alreadyRead-i.fileStart,n.size-n.alreadyRead),i.usedBytes+=n.size-n.alreadyRead,this.stream.logBufferLevel(),n.alreadyRead=n.size,n;if(0===s)return null;a.debug("ISOFile","Getting sample #"+t+" partial data (alreadyRead: "+n.alreadyRead+" offset: "+(n.offset+n.alreadyRead-i.fileStart)+" read size: "+s+" full size: "+n.size+")"),o.memcpy(n.data.buffer,n.alreadyRead,i,n.offset+n.alreadyRead-i.fileStart,s),n.alreadyRead+=s,i.usedBytes+=s,this.stream.logBufferLevel()}},m.prototype.releaseSample=function(e,t){var i=e.samples[t];return i.data?(this.samplesDataSize-=i.size,i.data=null,i.alreadyRead=0,i.size):0},m.prototype.getAllocatedSampleDataSize=function(){return this.samplesDataSize},m.prototype.getCodecs=function(){var e,t="";for(e=0;e0&&(t+=","),t+=this.moov.traks[e].mdia.minf.stbl.stsd.entries[0].getCodec()}return t},m.prototype.getTrexById=function(e){var t;if(!this.moov||!this.moov.mvex)return null;for(t=0;t0&&(i.protection=r.ipro.protections[r.iinf.item_infos[e].protection_index-1]),r.iinf.item_infos[e].item_type?i.type=r.iinf.item_infos[e].item_type:i.type="mime",i.content_type=r.iinf.item_infos[e].content_type,i.content_encoding=r.iinf.item_infos[e].content_encoding;if(r.iloc)for(e=0;e0){var c=r.iprp.ipco.boxes[d.property_index-1];i.properties[c.type]=c,i.properties.boxes.push(c)}}}}}},m.prototype.getItem=function(e){var t,i;if(!this.meta)return null;if(!(i=this.items[e]).data&&i.size)i.data=new Uint8Array(i.size),i.alreadyRead=0,this.itemsDataSize+=i.size,a.debug("ISOFile","Allocating item #"+e+" of size "+i.size+" (total: "+this.itemsDataSize+")");else if(i.alreadyRead===i.size)return i;for(var n=0;n-1))return null;var u=(t=this.stream.buffers[s]).byteLength-(r.offset+r.alreadyRead-t.fileStart);if(!(r.length-r.alreadyRead<=u))return a.debug("ISOFile","Getting item #"+e+" extent #"+n+" partial data (alreadyRead: "+r.alreadyRead+" offset: "+(r.offset+r.alreadyRead-t.fileStart)+" read size: "+u+" full extent size: "+r.length+" full item size: "+i.size+")"),o.memcpy(i.data.buffer,i.alreadyRead,t,r.offset+r.alreadyRead-t.fileStart,u),r.alreadyRead+=u,i.alreadyRead+=u,t.usedBytes+=u,this.stream.logBufferLevel(),null;a.debug("ISOFile","Getting item #"+e+" extent #"+n+" data (alreadyRead: "+r.alreadyRead+" offset: "+(r.offset+r.alreadyRead-t.fileStart)+" read size: "+(r.length-r.alreadyRead)+" full extent size: "+r.length+" full item size: "+i.size+")"),o.memcpy(i.data.buffer,i.alreadyRead,t,r.offset+r.alreadyRead-t.fileStart,r.length-r.alreadyRead),t.usedBytes+=r.length-r.alreadyRead,this.stream.logBufferLevel(),i.alreadyRead+=r.length-r.alreadyRead,r.alreadyRead=r.length}}return i.alreadyRead===i.size?i:null},m.prototype.releaseItem=function(e){var t=this.items[e];if(t.data){this.itemsDataSize-=t.size,t.data=null,t.alreadyRead=0;for(var i=0;i0?this.moov.traks[e].samples[0].duration:0),t.push(n)}return t},d.Box.prototype.printHeader=function(e){this.size+=8,this.size>u&&(this.size+=8),"uuid"===this.type&&(this.size+=16),e.log(e.indent+"size:"+this.size),e.log(e.indent+"type:"+this.type)},d.FullBox.prototype.printHeader=function(e){this.size+=4,d.Box.prototype.printHeader.call(this,e),e.log(e.indent+"version:"+this.version),e.log(e.indent+"flags:"+this.flags)},d.Box.prototype.print=function(e){this.printHeader(e)},d.ContainerBox.prototype.print=function(e){this.printHeader(e);for(var t=0;t>8)),e.log(e.indent+"matrix: "+this.matrix.join(", ")),e.log(e.indent+"next_track_id: "+this.next_track_id)},d.tkhdBox.prototype.print=function(e){d.FullBox.prototype.printHeader.call(this,e),e.log(e.indent+"creation_time: "+this.creation_time),e.log(e.indent+"modification_time: "+this.modification_time),e.log(e.indent+"track_id: "+this.track_id),e.log(e.indent+"duration: "+this.duration),e.log(e.indent+"volume: "+(this.volume>>8)),e.log(e.indent+"matrix: "+this.matrix.join(", ")),e.log(e.indent+"layer: "+this.layer),e.log(e.indent+"alternate_group: "+this.alternate_group),e.log(e.indent+"width: "+this.width),e.log(e.indent+"height: "+this.height)};var g={createFile:function(e,t){var i=void 0===e||e,n=new m(t);return n.discardMdatData=!i,n}};void 0!==i&&(i.createFile=g.createFile)},{}],41:[function(e,t,i){ +/*! @name mpd-parser @version 0.19.0 @license Apache-2.0 */ +"use strict";Object.defineProperty(i,"__esModule",{value:!0});var n=e("@videojs/vhs-utils/cjs/resolve-url"),r=e("global/window"),a=e("@videojs/vhs-utils/cjs/decode-b64-to-uint8-array"),s=e("@xmldom/xmldom");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=o(n),l=o(r),h=o(a),d=function(e){return!!e&&"object"==typeof e},c=function e(){for(var t=arguments.length,i=new Array(t),n=0;n=0&&(f.minimumUpdatePeriod=1e3*u),t&&(f.locations=t),"dynamic"===s&&(f.suggestedPresentationDelay=o);var p=0===f.playlists.length;return h.length&&(f.mediaGroups.AUDIO.audio=function(e,t,i){var n;void 0===t&&(t={}),void 0===i&&(i=!1);var r=e.reduce((function(e,r){var a=r.attributes.role&&r.attributes.role.value||"",s=r.attributes.lang||"",o=r.attributes.label||"main";if(s&&!r.attributes.label){var u=a?" ("+a+")":"";o=""+r.attributes.lang+u}e[o]||(e[o]={language:s,autoselect:!0,default:"main"===a,playlists:[],uri:""});var l=I(function(e,t){var i,n=e.attributes,r=e.segments,a=e.sidx,s={attributes:(i={NAME:n.id,BANDWIDTH:n.bandwidth,CODECS:n.codecs},i["PROGRAM-ID"]=1,i),uri:"",endList:"static"===n.type,timeline:n.periodIndex,resolvedUri:"",targetDuration:n.duration,segments:r,mediaSequence:r.length?r[0].number:1};return n.contentProtection&&(s.contentProtection=n.contentProtection),a&&(s.sidx=a),t&&(s.attributes.AUDIO="audio",s.attributes.SUBTITLES="subs"),s}(r,i),t);return e[o].playlists.push(l),void 0===n&&"main"===a&&((n=r).default=!0),e}),{});n||(r[Object.keys(r)[0]].default=!0);return r}(h,i,p)),d.length&&(f.mediaGroups.SUBTITLES.subs=function(e,t){return void 0===t&&(t={}),e.reduce((function(e,i){var n=i.attributes.lang||"text";return e[n]||(e[n]={language:n,default:!1,autoselect:!1,playlists:[],uri:""}),e[n].playlists.push(I(function(e){var t,i=e.attributes,n=e.segments;void 0===n&&(n=[{uri:i.baseUrl,timeline:i.periodIndex,resolvedUri:i.baseUrl||"",duration:i.sourceDuration,number:0}],i.duration=i.sourceDuration);var r=((t={NAME:i.id,BANDWIDTH:i.bandwidth})["PROGRAM-ID"]=1,t);return i.codecs&&(r.CODECS=i.codecs),{attributes:r,uri:"",endList:"static"===i.type,timeline:i.periodIndex,resolvedUri:i.baseUrl||"",targetDuration:i.duration,segments:n,mediaSequence:n.length?n[0].number:1}}(i),t)),e}),{})}(d,i)),c.length&&(f.mediaGroups["CLOSED-CAPTIONS"].cc=c.reduce((function(e,t){return t?(t.forEach((function(t){var i=t.channel,n=t.language;e[n]={autoselect:!1,default:!1,instreamId:i,language:n},t.hasOwnProperty("aspectRatio")&&(e[n].aspectRatio=t.aspectRatio),t.hasOwnProperty("easyReader")&&(e[n].easyReader=t.easyReader),t.hasOwnProperty("3D")&&(e[n]["3D"]=t["3D"])})),e):e}),{})),f},M=function(e,t,i){var n=e.NOW,r=e.clientOffset,a=e.availabilityStartTime,s=e.timescale,o=void 0===s?1:s,u=e.start,l=void 0===u?0:u,h=e.minimumUpdatePeriod,d=(n+r)/1e3+(void 0===h?0:h)-(a+l);return Math.ceil((d*o-t)/i)},F=function(e,t){for(var i=e.type,n=e.minimumUpdatePeriod,r=void 0===n?0:n,a=e.media,s=void 0===a?"":a,o=e.sourceDuration,u=e.timescale,l=void 0===u?1:u,h=e.startNumber,d=void 0===h?1:h,c=e.periodIndex,f=[],p=-1,m=0;mp&&(p=y);var b=void 0;if(v<0){var T=m+1;b=T===t.length?"dynamic"===i&&r>0&&s.indexOf("$Number$")>0?M(e,p,_):(o*l-p)/_:(t[T].t-p)/_}else b=v+1;for(var S=d+f.length+b,E=d+f.length;E=r?a:""+new Array(r-a.length+1).join("0")+a)}}(t))},j=function(e,t){var i={RepresentationID:e.id,Bandwidth:e.bandwidth||0},n=e.initialization,r=void 0===n?{sourceURL:"",range:""}:n,a=T({baseUrl:e.baseUrl,source:N(r.sourceURL,i),range:r.range});return function(e,t){return e.duration||t?e.duration?w(e):F(e,t):[{number:e.startNumber||1,duration:e.sourceDuration,time:0,timeline:e.periodIndex}]}(e,t).map((function(t){i.Number=t.number,i.Time=t.time;var n=N(e.media||"",i),r=e.timescale||1,s=e.presentationTimeOffset||0,o=e.periodStart+(t.time-s)/r;return{uri:n,timeline:t.timeline,duration:t.duration,resolvedUri:u.default(e.baseUrl||"",n),map:a,number:t.number,presentationTime:o}}))},V=function(e,t){var i=e.duration,n=e.segmentUrls,r=void 0===n?[]:n,a=e.periodStart;if(!i&&!t||i&&t)throw new Error(y);var s,o=r.map((function(t){return function(e,t){var i=e.baseUrl,n=e.initialization,r=void 0===n?{}:n,a=T({baseUrl:i,source:r.sourceURL,range:r.range}),s=T({baseUrl:i,source:t.media,range:t.mediaRange});return s.map=a,s}(e,t)}));return i&&(s=w(e)),t&&(s=F(e,t)),s.map((function(t,i){if(o[i]){var n=o[i],r=e.timescale||1,s=e.presentationTimeOffset||0;return n.timeline=t.timeline,n.duration=t.duration,n.number=t.number,n.presentationTime=a+(t.time-s)/r,n}})).filter((function(e){return e}))},H=function(e){var t,i,n=e.attributes,r=e.segmentInfo;r.template?(i=j,t=c(n,r.template)):r.base?(i=C,t=c(n,r.base)):r.list&&(i=V,t=c(n,r.list));var a={attributes:n};if(!i)return a;var s=i(t,r.segmentTimeline);if(t.duration){var o=t,u=o.duration,l=o.timescale,h=void 0===l?1:l;t.duration=u/h}else s.length?t.duration=s.reduce((function(e,t){return Math.max(e,Math.ceil(t.duration))}),0):t.duration=0;return a.attributes=t,a.segments=s,r.base&&t.indexRange&&(a.sidx=s[0],a.segments=[]),a},z=function(e){return e.map(H)},G=function(e,t){return p(e.childNodes).filter((function(e){return e.tagName===t}))},W=function(e){return e.textContent.trim()},Y=function(e){var t=/P(?:(\d*)Y)?(?:(\d*)M)?(?:(\d*)D)?(?:T(?:(\d*)H)?(?:(\d*)M)?(?:([\d.]*)S)?)?/.exec(e);if(!t)return 0;var i=t.slice(1),n=i[0],r=i[1],a=i[2],s=i[3],o=i[4],u=i[5];return 31536e3*parseFloat(n||0)+2592e3*parseFloat(r||0)+86400*parseFloat(a||0)+3600*parseFloat(s||0)+60*parseFloat(o||0)+parseFloat(u||0)},q={mediaPresentationDuration:function(e){return Y(e)},availabilityStartTime:function(e){return/^\d+-\d+-\d+T\d+:\d+:\d+(\.\d+)?$/.test(t=e)&&(t+="Z"),Date.parse(t)/1e3;var t},minimumUpdatePeriod:function(e){return Y(e)},suggestedPresentationDelay:function(e){return Y(e)},type:function(e){return e},timeShiftBufferDepth:function(e){return Y(e)},start:function(e){return Y(e)},width:function(e){return parseInt(e,10)},height:function(e){return parseInt(e,10)},bandwidth:function(e){return parseInt(e,10)},startNumber:function(e){return parseInt(e,10)},timescale:function(e){return parseInt(e,10)},presentationTimeOffset:function(e){return parseInt(e,10)},duration:function(e){var t=parseInt(e,10);return isNaN(t)?Y(e):t},d:function(e){return parseInt(e,10)},t:function(e){return parseInt(e,10)},r:function(e){return parseInt(e,10)},DEFAULT:function(e){return e}},K=function(e){return e&&e.attributes?p(e.attributes).reduce((function(e,t){var i=q[t.name]||q.DEFAULT;return e[t.name]=i(t.value),e}),{}):{}},X={"urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b":"org.w3.clearkey","urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":"com.widevine.alpha","urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":"com.microsoft.playready","urn:uuid:f239e769-efa3-4850-9c16-a903c6932efb":"com.adobe.primetime"},Q=function(e,t){return t.length?f(e.map((function(e){return t.map((function(t){return u.default(e,W(t))}))}))):e},$=function(e){var t=G(e,"SegmentTemplate")[0],i=G(e,"SegmentList")[0],n=i&&G(i,"SegmentURL").map((function(e){return c({tag:"SegmentURL"},K(e))})),r=G(e,"SegmentBase")[0],a=i||t,s=a&&G(a,"SegmentTimeline")[0],o=i||r||t,u=o&&G(o,"Initialization")[0],l=t&&K(t);l&&u?l.initialization=u&&K(u):l&&l.initialization&&(l.initialization={sourceURL:l.initialization});var h={template:l,segmentTimeline:s&&G(s,"S").map((function(e){return K(e)})),list:i&&c(K(i),{segmentUrls:n,initialization:K(u)}),base:r&&c(K(r),{initialization:K(u)})};return Object.keys(h).forEach((function(e){h[e]||delete h[e]})),h},J=function(e,t,i){return function(n){var r,a=K(n),s=Q(t,G(n,"BaseURL")),o=G(n,"Role")[0],u={role:K(o)},l=c(e,a,u),d=G(n,"Accessibility")[0],p="urn:scte:dash:cc:cea-608:2015"===(r=K(d)).schemeIdUri?r.value.split(";").map((function(e){var t,i;if(i=e,/^CC\d=/.test(e)){var n=e.split("=");t=n[0],i=n[1]}else/^CC\d$/.test(e)&&(t=e);return{channel:t,language:i}})):"urn:scte:dash:cc:cea-708:2015"===r.schemeIdUri?r.value.split(";").map((function(e){var t={channel:void 0,language:void 0,aspectRatio:1,easyReader:0,"3D":0};if(/=/.test(e)){var i=e.split("="),n=i[0],r=i[1],a=void 0===r?"":r;t.channel=n,t.language=e,a.split(",").forEach((function(e){var i=e.split(":"),n=i[0],r=i[1];"lang"===n?t.language=r:"er"===n?t.easyReader=Number(r):"war"===n?t.aspectRatio=Number(r):"3D"===n&&(t["3D"]=Number(r))}))}else t.language=e;return t.channel&&(t.channel="SERVICE"+t.channel),t})):void 0;p&&(l=c(l,{captionServices:p}));var m=G(n,"Label")[0];if(m&&m.childNodes.length){var g=m.childNodes[0].nodeValue.trim();l=c(l,{label:g})}var _=G(n,"ContentProtection").reduce((function(e,t){var i=K(t),n=X[i.schemeIdUri];if(n){e[n]={attributes:i};var r=G(t,"cenc:pssh")[0];if(r){var a=W(r),s=a&&h.default(a);e[n].pssh=s}}return e}),{});Object.keys(_).length&&(l=c(l,{contentProtection:_}));var v=$(n),y=G(n,"Representation"),b=c(i,v);return f(y.map(function(e,t,i){return function(n){var r=G(n,"BaseURL"),a=Q(t,r),s=c(e,K(n)),o=$(n);return a.map((function(e){return{segmentInfo:c(i,o),attributes:c(s,{baseUrl:e})}}))}}(l,s,b)))}},Z=function(e,t){return function(i,n){var r=Q(t,G(i.node,"BaseURL")),a=parseInt(i.attributes.id,10),s=l.default.isNaN(a)?n:a,o=c(e,{periodIndex:s,periodStart:i.attributes.start});"number"==typeof i.attributes.duration&&(o.periodDuration=i.attributes.duration);var u=G(i.node,"AdaptationSet"),h=$(i.node);return f(u.map(J(o,r,h)))}},ee=function(e,t){void 0===t&&(t={});var i=t,n=i.manifestUri,r=void 0===n?"":n,a=i.NOW,s=void 0===a?Date.now():a,o=i.clientOffset,u=void 0===o?0:o,l=G(e,"Period");if(!l.length)throw new Error(m);var h=G(e,"Location"),d=K(e),c=Q([r],G(e,"BaseURL"));d.type=d.type||"static",d.sourceDuration=d.mediaPresentationDuration||0,d.NOW=s,d.clientOffset=u,h.length&&(d.locations=h.map(W));var p=[];return l.forEach((function(e,t){var i=K(e),n=p[t-1];i.start=function(e){var t=e.attributes,i=e.priorPeriodAttributes,n=e.mpdType;return"number"==typeof t.start?t.start:i&&"number"==typeof i.start&&"number"==typeof i.duration?i.start+i.duration:i||"static"!==n?null:0}({attributes:i,priorPeriodAttributes:n?n.attributes:null,mpdType:d.type}),p.push({node:e,attributes:i})})),{locations:d.locations,representationInfo:f(p.map(Z(d,c)))}},te=function(e){if(""===e)throw new Error(g);var t,i,n=new s.DOMParser;try{i=(t=n.parseFromString(e,"application/xml"))&&"MPD"===t.documentElement.tagName?t.documentElement:null}catch(e){}if(!i||i&&i.getElementsByTagName("parsererror").length>0)throw new Error(_);return i};i.VERSION="0.19.0",i.addSidxSegmentsToPlaylist=A,i.generateSidxKey=k,i.inheritAttributes=ee,i.parse=function(e,t){void 0===t&&(t={});var i=ee(te(e),t),n=z(i.representationInfo);return U(n,i.locations,t.sidxMapping)},i.parseUTCTiming=function(e){return function(e){var t=G(e,"UTCTiming")[0];if(!t)return null;var i=K(t);switch(i.schemeIdUri){case"urn:mpeg:dash:utc:http-head:2014":case"urn:mpeg:dash:utc:http-head:2012":i.method="HEAD";break;case"urn:mpeg:dash:utc:http-xsdate:2014":case"urn:mpeg:dash:utc:http-iso:2014":case"urn:mpeg:dash:utc:http-xsdate:2012":case"urn:mpeg:dash:utc:http-iso:2012":i.method="GET";break;case"urn:mpeg:dash:utc:direct:2014":case"urn:mpeg:dash:utc:direct:2012":i.method="DIRECT",i.value=Date.parse(i.value);break;case"urn:mpeg:dash:utc:http-ntp:2014":case"urn:mpeg:dash:utc:ntp:2014":case"urn:mpeg:dash:utc:sntp:2014":default:throw new Error(b)}return i}(te(e))},i.stringToMpdXml=te,i.toM3u8=U,i.toPlaylists=z},{"@videojs/vhs-utils/cjs/decode-b64-to-uint8-array":13,"@videojs/vhs-utils/cjs/resolve-url":20,"@xmldom/xmldom":28,"global/window":35}],42:[function(e,t,i){var n=Math.pow(2,32);t.exports=function(e){var t=new DataView(e.buffer,e.byteOffset,e.byteLength),i={version:e[0],flags:new Uint8Array(e.subarray(1,4)),references:[],referenceId:t.getUint32(4),timescale:t.getUint32(8)},r=12;0===i.version?(i.earliestPresentationTime=t.getUint32(r),i.firstOffset=t.getUint32(r+4),r+=8):(i.earliestPresentationTime=t.getUint32(r)*n+t.getUint32(r+4),i.firstOffset=t.getUint32(r+8)*n+t.getUint32(r+12),r+=16),r+=2;var a=t.getUint16(r);for(r+=2;a>0;r+=12,a--)i.references.push({referenceType:(128&e[r])>>>7,referencedSize:2147483647&t.getUint32(r),subsegmentDuration:t.getUint32(r+4),startsWithSap:!!(128&e[r+8]),sapType:(112&e[r+8])>>>4,sapDeltaTime:268435455&t.getUint32(r+8)});return i}},{}],43:[function(e,t,i){var n,r,a,s,o,u,l;n=function(e){return 9e4*e},r=function(e,t){return e*t},a=function(e){return e/9e4},s=function(e,t){return e/t},o=function(e,t){return n(s(e,t))},u=function(e,t){return r(a(e),t)},l=function(e,t,i){return a(i?e:e-t)},t.exports={ONE_SECOND_IN_TS:9e4,secondsToVideoTs:n,secondsToAudioTs:r,videoTsToSeconds:a,audioTsToSeconds:s,audioTsToVideoTs:o,videoTsToAudioTs:u,metadataTsToSeconds:l}},{}],44:[function(e,t,i){var n,r,a=t.exports={};function s(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function u(e){if(n===setTimeout)return setTimeout(e,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:s}catch(e){n=s}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var l,h=[],d=!1,c=-1;function f(){d&&l&&(d=!1,l.length?h=l.concat(h):c=-1,h.length&&p())}function p(){if(!d){var e=u(f);d=!0;for(var t=h.length;t;){for(l=h,h=[];++c1)for(var i=1;i + * Copyright Brightcove, Inc. + * Available under Apache License Version 2.0 + * + * + * Includes vtt.js + * Available under Apache License Version 2.0 + * + */ +"use strict";var n=e("global/window"),r=e("global/document"),a=e("@babel/runtime/helpers/extends"),s=e("@babel/runtime/helpers/assertThisInitialized"),o=e("@babel/runtime/helpers/inheritsLoose"),u=e("safe-json-parse/tuple"),l=e("keycode"),h=e("@videojs/xhr"),d=e("videojs-vtt.js"),c=e("@babel/runtime/helpers/construct"),f=e("@babel/runtime/helpers/inherits"),p=e("@videojs/vhs-utils/cjs/resolve-url.js"),m=e("m3u8-parser"),g=e("@videojs/vhs-utils/cjs/codecs.js"),_=e("@videojs/vhs-utils/cjs/media-types.js"),v=e("mpd-parser"),y=e("mux.js/lib/tools/parse-sidx"),b=e("@videojs/vhs-utils/cjs/id3-helpers"),T=e("@videojs/vhs-utils/cjs/containers"),S=e("@videojs/vhs-utils/cjs/byte-helpers"),E=e("mux.js/lib/utils/clock");function w(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}for(var C,A=w(n),k=w(r),P=w(a),I=w(s),L=w(o),x=w(u),D=w(l),R=w(h),O=w(d),U=w(c),M=w(f),F=w(p),B=w(y),N={},j=function(e,t){return N[e]=N[e]||[],t&&(N[e]=N[e].concat(t)),N[e]},V=function(e,t){var i=j(e).indexOf(t);return!(i<=-1)&&(N[e]=N[e].slice(),N[e].splice(i,1),!0)},H={prefixed:!0},z=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror","fullscreen"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror","-webkit-full-screen"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror","-moz-full-screen"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError","-ms-fullscreen"]],G=z[0],W=0;W0?o:0)}if(A.default.console){var u=A.default.console[i];u||"debug"!==i||(u=A.default.console.info||A.default.console.log),u&&a&&s.test(i)&&u[Array.isArray(r)?"apply":"call"](A.default.console,r)}}}(t,r),r.createLogger=function(i){return e(t+": "+i)},r.levels={all:"debug|log|warn|error",off:"",debug:"debug|log|warn|error",info:"log|warn|error",warn:"warn|error",error:"error",DEFAULT:n},r.level=function(e){if("string"==typeof e){if(!r.levels.hasOwnProperty(e))throw new Error('"'+e+'" in not a valid log level');n=e}return n},(r.history=function(){return q?[].concat(q):[]}).filter=function(e){return(q||[]).filter((function(t){return new RegExp(".*"+e+".*").test(t[0])}))},r.history.clear=function(){q&&(q.length=0)},r.history.disable=function(){null!==q&&(q.length=0,q=null)},r.history.enable=function(){null===q&&(q=[])},r.error=function(){for(var e=arguments.length,t=new Array(e),r=0;r1?t-1:0),n=1;n=0)throw new Error("class has illegal whitespace characters")}function ke(){return k.default===A.default.document}function Pe(e){return ee(e)&&1===e.nodeType}function Ie(){try{return A.default.parent!==A.default.self}catch(e){return!0}}function Le(e){return function(t,i){if(!Ce(t))return k.default[e](null);Ce(i)&&(i=k.default.querySelector(i));var n=Pe(i)?i:k.default;return n[e]&&n[e](t)}}function xe(e,t,i,n){void 0===e&&(e="div"),void 0===t&&(t={}),void 0===i&&(i={});var r=k.default.createElement(e);return Object.getOwnPropertyNames(t).forEach((function(e){var i=t[e];-1!==e.indexOf("aria-")||"role"===e||"type"===e?(K.warn("Setting attributes in the second argument of createEl()\nhas been deprecated. Use the third argument instead.\ncreateEl(type, properties, attributes). Attempting to set "+e+" to "+i+"."),r.setAttribute(e,i)):"textContent"===e?De(r,i):r[e]===i&&"tabIndex"!==e||(r[e]=i)})),Object.getOwnPropertyNames(i).forEach((function(e){r.setAttribute(e,i[e])})),n&&$e(r,n),r}function De(e,t){return void 0===e.textContent?e.innerText=t:e.textContent=t,e}function Re(e,t){t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e)}function Oe(e,t){return Ae(t),e.classList?e.classList.contains(t):(i=t,new RegExp("(^|\\s)"+i+"($|\\s)")).test(e.className);var i}function Ue(e,t){return e.classList?e.classList.add(t):Oe(e,t)||(e.className=(e.className+" "+t).trim()),e}function Me(e,t){return e?(e.classList?e.classList.remove(t):(Ae(t),e.className=e.className.split(/\s+/).filter((function(e){return e!==t})).join(" ")),e):(K.warn("removeClass was called with an element that doesn't exist"),null)}function Fe(e,t,i){var n=Oe(e,t);if("function"==typeof i&&(i=i(e,t)),"boolean"!=typeof i&&(i=!n),i!==n)return i?Ue(e,t):Me(e,t),e}function Be(e,t){Object.getOwnPropertyNames(t).forEach((function(i){var n=t[i];null==n||!1===n?e.removeAttribute(i):e.setAttribute(i,!0===n?"":n)}))}function Ne(e){var t={},i=",autoplay,controls,playsinline,loop,muted,default,defaultMuted,";if(e&&e.attributes&&e.attributes.length>0)for(var n=e.attributes,r=n.length-1;r>=0;r--){var a=n[r].name,s=n[r].value;"boolean"!=typeof e[a]&&-1===i.indexOf(","+a+",")||(s=null!==s),t[a]=s}return t}function je(e,t){return e.getAttribute(t)}function Ve(e,t,i){e.setAttribute(t,i)}function He(e,t){e.removeAttribute(t)}function ze(){k.default.body.focus(),k.default.onselectstart=function(){return!1}}function Ge(){k.default.onselectstart=function(){return!0}}function We(e){if(e&&e.getBoundingClientRect&&e.parentNode){var t=e.getBoundingClientRect(),i={};return["bottom","height","left","right","top","width"].forEach((function(e){void 0!==t[e]&&(i[e]=t[e])})),i.height||(i.height=parseFloat(ie(e,"height"))),i.width||(i.width=parseFloat(ie(e,"width"))),i}}function Ye(e){if(!e||e&&!e.offsetParent)return{left:0,top:0,width:0,height:0};for(var t=e.offsetWidth,i=e.offsetHeight,n=0,r=0;e.offsetParent&&e!==k.default[H.fullscreenElement];)n+=e.offsetLeft,r+=e.offsetTop,e=e.offsetParent;return{left:n,top:r,width:t,height:i}}function qe(e,t){var i={x:0,y:0};if(Se)for(var n=e;n&&"html"!==n.nodeName.toLowerCase();){var r=ie(n,"transform");if(/^matrix/.test(r)){var a=r.slice(7,-1).split(/,\s/).map(Number);i.x+=a[4],i.y+=a[5]}else if(/^matrix3d/.test(r)){var s=r.slice(9,-1).split(/,\s/).map(Number);i.x+=s[12],i.y+=s[13]}n=n.parentNode}var o={},u=Ye(t.target),l=Ye(e),h=l.width,d=l.height,c=t.offsetY-(l.top-u.top),f=t.offsetX-(l.left-u.left);return t.changedTouches&&(f=t.changedTouches[0].pageX-l.left,c=t.changedTouches[0].pageY+l.top,Se&&(f-=i.x,c-=i.y)),o.y=1-Math.max(0,Math.min(1,c/d)),o.x=Math.max(0,Math.min(1,f/h)),o}function Ke(e){return ee(e)&&3===e.nodeType}function Xe(e){for(;e.firstChild;)e.removeChild(e.firstChild);return e}function Qe(e){return"function"==typeof e&&(e=e()),(Array.isArray(e)?e:[e]).map((function(e){return"function"==typeof e&&(e=e()),Pe(e)||Ke(e)?e:"string"==typeof e&&/\S/.test(e)?k.default.createTextNode(e):void 0})).filter((function(e){return e}))}function $e(e,t){return Qe(t).forEach((function(t){return e.appendChild(t)})),e}function Je(e,t){return $e(Xe(e),t)}function Ze(e){return void 0===e.button&&void 0===e.buttons||(0===e.button&&void 0===e.buttons||("mouseup"===e.type&&0===e.button&&0===e.buttons||0===e.button&&1===e.buttons))}var et,tt=Le("querySelector"),it=Le("querySelectorAll"),nt=Object.freeze({__proto__:null,isReal:ke,isEl:Pe,isInFrame:Ie,createEl:xe,textContent:De,prependTo:Re,hasClass:Oe,addClass:Ue,removeClass:Me,toggleClass:Fe,setAttributes:Be,getAttributes:Ne,getAttribute:je,setAttribute:Ve,removeAttribute:He,blockTextSelection:ze,unblockTextSelection:Ge,getBoundingClientRect:We,findPosition:Ye,getPointerPosition:qe,isTextNode:Ke,emptyEl:Xe,normalizeContent:Qe,appendContent:$e,insertContent:Je,isSingleLeftClick:Ze,$:tt,$$:it}),rt=!1,at=function(){if(!1!==et.options.autoSetup){var e=Array.prototype.slice.call(k.default.getElementsByTagName("video")),t=Array.prototype.slice.call(k.default.getElementsByTagName("audio")),i=Array.prototype.slice.call(k.default.getElementsByTagName("video-js")),n=e.concat(t,i);if(n&&n.length>0)for(var r=0,a=n.length;r-1&&(r={passive:!0}),e.addEventListener(t,n.dispatcher,r)}else e.attachEvent&&e.attachEvent("on"+t,n.dispatcher)}function bt(e,t,i){if(pt.has(e)){var n=pt.get(e);if(n.handlers){if(Array.isArray(t))return gt(bt,e,t,i);var r=function(e,t){n.handlers[t]=[],mt(e,t)};if(void 0!==t){var a=n.handlers[t];if(a)if(i){if(i.guid)for(var s=0;s=t&&(e.apply(void 0,arguments),i=n)}},Pt=function(){};Pt.prototype.allowedEvents_={},Pt.prototype.on=function(e,t){var i=this.addEventListener;this.addEventListener=function(){},yt(this,e,t),this.addEventListener=i},Pt.prototype.addEventListener=Pt.prototype.on,Pt.prototype.off=function(e,t){bt(this,e,t)},Pt.prototype.removeEventListener=Pt.prototype.off,Pt.prototype.one=function(e,t){var i=this.addEventListener;this.addEventListener=function(){},St(this,e,t),this.addEventListener=i},Pt.prototype.any=function(e,t){var i=this.addEventListener;this.addEventListener=function(){},Et(this,e,t),this.addEventListener=i},Pt.prototype.trigger=function(e){var t=e.type||e;"string"==typeof e&&(e={type:t}),e=_t(e),this.allowedEvents_[t]&&this["on"+t]&&this["on"+t](e),Tt(this,e)},Pt.prototype.dispatchEvent=Pt.prototype.trigger,Pt.prototype.queueTrigger=function(e){var t=this;wt||(wt=new Map);var i=e.type||e,n=wt.get(this);n||(n=new Map,wt.set(this,n));var r=n.get(i);n.delete(i),A.default.clearTimeout(r);var a=A.default.setTimeout((function(){0===n.size&&(n=null,wt.delete(t)),t.trigger(e)}),0);n.set(i,a)};var It=function(e){return"function"==typeof e.name?e.name():"string"==typeof e.name?e.name:e.name_?e.name_:e.constructor&&e.constructor.name?e.constructor.name:typeof e},Lt=function(e){return e instanceof Pt||!!e.eventBusEl_&&["on","one","off","trigger"].every((function(t){return"function"==typeof e[t]}))},xt=function(e){return"string"==typeof e&&/\S/.test(e)||Array.isArray(e)&&!!e.length},Dt=function(e,t,i){if(!e||!e.nodeName&&!Lt(e))throw new Error("Invalid target for "+It(t)+"#"+i+"; must be a DOM node or evented object.")},Rt=function(e,t,i){if(!xt(e))throw new Error("Invalid event type for "+It(t)+"#"+i+"; must be a non-empty string or array.")},Ot=function(e,t,i){if("function"!=typeof e)throw new Error("Invalid listener for "+It(t)+"#"+i+"; must be a function.")},Ut=function(e,t,i){var n,r,a,s=t.length<3||t[0]===e||t[0]===e.eventBusEl_;return s?(n=e.eventBusEl_,t.length>=3&&t.shift(),r=t[0],a=t[1]):(n=t[0],r=t[1],a=t[2]),Dt(n,e,i),Rt(r,e,i),Ot(a,e,i),{isTargetingSelf:s,target:n,type:r,listener:a=At(e,a)}},Mt=function(e,t,i,n){Dt(e,e,t),e.nodeName?Ct[t](e,i,n):e[t](i,n)},Ft={on:function(){for(var e=this,t=arguments.length,i=new Array(t),n=0;n=0;e--)this.children_[e].dispose&&this.children_[e].dispose();this.children_=null,this.childIndex_=null,this.childNameIndex_=null,this.parentComponent_=null,this.el_&&(this.el_.parentNode&&this.el_.parentNode.removeChild(this.el_),this.el_=null),this.player_=null}},t.isDisposed=function(){return Boolean(this.isDisposed_)},t.player=function(){return this.player_},t.options=function(e){return e?(this.options_=zt(this.options_,e),this.options_):this.options_},t.el=function(){return this.el_},t.createEl=function(e,t,i){return xe(e,t,i)},t.localize=function(e,t,i){void 0===i&&(i=e);var n=this.player_.language&&this.player_.language(),r=this.player_.languages&&this.player_.languages(),a=r&&r[n],s=n&&n.split("-")[0],o=r&&r[s],u=i;return a&&a[e]?u=a[e]:o&&o[e]&&(u=o[e]),t&&(u=u.replace(/\{(\d+)\}/g,(function(e,i){var n=t[i-1],r=n;return void 0===n&&(r=e),r}))),u},t.handleLanguagechange=function(){},t.contentEl=function(){return this.contentEl_||this.el_},t.id=function(){return this.id_},t.name=function(){return this.name_},t.children=function(){return this.children_},t.getChildById=function(e){return this.childIndex_[e]},t.getChild=function(e){if(e)return this.childNameIndex_[e]},t.getDescendant=function(){for(var e=arguments.length,t=new Array(e),i=0;i=0;i--)if(this.children_[i]===e){t=!0,this.children_.splice(i,1);break}if(t){e.parentComponent_=null,this.childIndex_[e.id()]=null,this.childNameIndex_[Ht(e.name())]=null,this.childNameIndex_[Vt(e.name())]=null;var n=e.el();n&&n.parentNode===this.contentEl()&&this.contentEl().removeChild(e.el())}}},t.initChildren=function(){var t=this,i=this.options_.children;if(i){var n,r=this.options_,a=e.getComponent("Tech");(n=Array.isArray(i)?i:Object.keys(i)).concat(Object.keys(this.options_).filter((function(e){return!n.some((function(t){return"string"==typeof t?e===t:e===t.name}))}))).map((function(e){var n,r;return"string"==typeof e?r=i[n=e]||t.options_[n]||{}:(n=e.name,r=e),{name:n,opts:r}})).filter((function(t){var i=e.getComponent(t.opts.componentClass||Ht(t.name));return i&&!a.isTech(i)})).forEach((function(e){var i=e.name,n=e.opts;if(void 0!==r[i]&&(n=r[i]),!1!==n){!0===n&&(n={}),n.playerOptions=t.options_.playerOptions;var a=t.addChild(i,n);a&&(t[i]=a)}}))}},t.buildCSSClass=function(){return""},t.ready=function(e,t){if(void 0===t&&(t=!1),e)return this.isReady_?void(t?e.call(this):this.setTimeout(e,1)):(this.readyQueue_=this.readyQueue_||[],void this.readyQueue_.push(e))},t.triggerReady=function(){this.isReady_=!0,this.setTimeout((function(){var e=this.readyQueue_;this.readyQueue_=[],e&&e.length>0&&e.forEach((function(e){e.call(this)}),this),this.trigger("ready")}),1)},t.$=function(e,t){return tt(e,t||this.contentEl())},t.$$=function(e,t){return it(e,t||this.contentEl())},t.hasClass=function(e){return Oe(this.el_,e)},t.addClass=function(e){Ue(this.el_,e)},t.removeClass=function(e){Me(this.el_,e)},t.toggleClass=function(e,t){Fe(this.el_,e,t)},t.show=function(){this.removeClass("vjs-hidden")},t.hide=function(){this.addClass("vjs-hidden")},t.lockShowing=function(){this.addClass("vjs-lock-showing")},t.unlockShowing=function(){this.removeClass("vjs-lock-showing")},t.getAttribute=function(e){return je(this.el_,e)},t.setAttribute=function(e,t){Ve(this.el_,e,t)},t.removeAttribute=function(e){He(this.el_,e)},t.width=function(e,t){return this.dimension("width",e,t)},t.height=function(e,t){return this.dimension("height",e,t)},t.dimensions=function(e,t){this.width(e,!0),this.height(t)},t.dimension=function(e,t,i){if(void 0!==t)return null!==t&&t==t||(t=0),-1!==(""+t).indexOf("%")||-1!==(""+t).indexOf("px")?this.el_.style[e]=t:this.el_.style[e]="auto"===t?"":t+"px",void(i||this.trigger("componentresize"));if(!this.el_)return 0;var n=this.el_.style[e],r=n.indexOf("px");return-1!==r?parseInt(n.slice(0,r),10):parseInt(this.el_["offset"+Ht(e)],10)},t.currentDimension=function(e){var t=0;if("width"!==e&&"height"!==e)throw new Error("currentDimension only accepts width or height value");if(t=ie(this.el_,e),0===(t=parseFloat(t))||isNaN(t)){var i="offset"+Ht(e);t=this.el_[i]}return t},t.currentDimensions=function(){return{width:this.currentDimension("width"),height:this.currentDimension("height")}},t.currentWidth=function(){return this.currentDimension("width")},t.currentHeight=function(){return this.currentDimension("height")},t.focus=function(){this.el_.focus()},t.blur=function(){this.el_.blur()},t.handleKeyDown=function(e){this.player_&&(e.stopPropagation(),this.player_.handleKeyDown(e))},t.handleKeyPress=function(e){this.handleKeyDown(e)},t.emitTapEvents=function(){var e,t=0,i=null;this.on("touchstart",(function(n){1===n.touches.length&&(i={pageX:n.touches[0].pageX,pageY:n.touches[0].pageY},t=A.default.performance.now(),e=!0)})),this.on("touchmove",(function(t){if(t.touches.length>1)e=!1;else if(i){var n=t.touches[0].pageX-i.pageX,r=t.touches[0].pageY-i.pageY;Math.sqrt(n*n+r*r)>10&&(e=!1)}}));var n=function(){e=!1};this.on("touchleave",n),this.on("touchcancel",n),this.on("touchend",(function(n){(i=null,!0===e)&&(A.default.performance.now()-t<200&&(n.preventDefault(),this.trigger("tap")))}))},t.enableTouchActivity=function(){if(this.player()&&this.player().reportUserActivity){var e,t=At(this.player(),this.player().reportUserActivity);this.on("touchstart",(function(){t(),this.clearInterval(e),e=this.setInterval(t,250)}));var i=function(i){t(),this.clearInterval(e)};this.on("touchmove",t),this.on("touchend",i),this.on("touchcancel",i)}},t.setTimeout=function(e,t){var i,n=this;return e=At(this,e),this.clearTimersOnDispose_(),i=A.default.setTimeout((function(){n.setTimeoutIds_.has(i)&&n.setTimeoutIds_.delete(i),e()}),t),this.setTimeoutIds_.add(i),i},t.clearTimeout=function(e){return this.setTimeoutIds_.has(e)&&(this.setTimeoutIds_.delete(e),A.default.clearTimeout(e)),e},t.setInterval=function(e,t){e=At(this,e),this.clearTimersOnDispose_();var i=A.default.setInterval(e,t);return this.setIntervalIds_.add(i),i},t.clearInterval=function(e){return this.setIntervalIds_.has(e)&&(this.setIntervalIds_.delete(e),A.default.clearInterval(e)),e},t.requestAnimationFrame=function(e){var t,i=this;return this.supportsRaf_?(this.clearTimersOnDispose_(),e=At(this,e),t=A.default.requestAnimationFrame((function(){i.rafIds_.has(t)&&i.rafIds_.delete(t),e()})),this.rafIds_.add(t),t):this.setTimeout(e,1e3/60)},t.requestNamedAnimationFrame=function(e,t){var i=this;if(!this.namedRafs_.has(e)){this.clearTimersOnDispose_(),t=At(this,t);var n=this.requestAnimationFrame((function(){t(),i.namedRafs_.has(e)&&i.namedRafs_.delete(e)}));return this.namedRafs_.set(e,n),e}},t.cancelNamedAnimationFrame=function(e){this.namedRafs_.has(e)&&(this.cancelAnimationFrame(this.namedRafs_.get(e)),this.namedRafs_.delete(e))},t.cancelAnimationFrame=function(e){return this.supportsRaf_?(this.rafIds_.has(e)&&(this.rafIds_.delete(e),A.default.cancelAnimationFrame(e)),e):this.clearTimeout(e)},t.clearTimersOnDispose_=function(){var e=this;this.clearingTimersOnDispose_||(this.clearingTimersOnDispose_=!0,this.one("dispose",(function(){[["namedRafs_","cancelNamedAnimationFrame"],["rafIds_","cancelAnimationFrame"],["setTimeoutIds_","clearTimeout"],["setIntervalIds_","clearInterval"]].forEach((function(t){var i=t[0],n=t[1];e[i].forEach((function(t,i){return e[n](i)}))})),e.clearingTimersOnDispose_=!1})))},e.registerComponent=function(t,i){if("string"!=typeof t||!t)throw new Error('Illegal component name, "'+t+'"; must be a non-empty string.');var n,r=e.getComponent("Tech"),a=r&&r.isTech(i),s=e===i||e.prototype.isPrototypeOf(i.prototype);if(a||!s)throw n=a?"techs must be registered using Tech.registerTech()":"must be a Component subclass",new Error('Illegal component, "'+t+'"; '+n+".");t=Ht(t),e.components_||(e.components_={});var o=e.getComponent("Player");if("Player"===t&&o&&o.players){var u=o.players,l=Object.keys(u);if(u&&l.length>0&&l.map((function(e){return u[e]})).every(Boolean))throw new Error("Can not register Player component after player has been created.")}return e.components_[t]=i,e.components_[Vt(t)]=i,i},e.getComponent=function(t){if(t&&e.components_)return e.components_[t]},e}();function Xt(e,t,i,n){return function(e,t,i){if("number"!=typeof t||t<0||t>i)throw new Error("Failed to execute '"+e+"' on 'TimeRanges': The index provided ("+t+") is non-numeric or out of bounds (0-"+i+").")}(e,n,i.length-1),i[n][t]}function Qt(e){var t;return t=void 0===e||0===e.length?{length:0,start:function(){throw new Error("This TimeRanges object is empty")},end:function(){throw new Error("This TimeRanges object is empty")}}:{length:e.length,start:Xt.bind(null,"start",0,e),end:Xt.bind(null,"end",1,e)},A.default.Symbol&&A.default.Symbol.iterator&&(t[A.default.Symbol.iterator]=function(){return(e||[]).values()}),t}function $t(e,t){return Array.isArray(e)?Qt(e):void 0===e||void 0===t?Qt():Qt([[e,t]])}function Jt(e,t){var i,n,r=0;if(!t)return 0;e&&e.length||(e=$t(0,0));for(var a=0;at&&(n=t),r+=n-i;return r/t}function Zt(e){if(e instanceof Zt)return e;"number"==typeof e?this.code=e:"string"==typeof e?this.message=e:ee(e)&&("number"==typeof e.code&&(this.code=e.code),Z(this,e)),this.message||(this.message=Zt.defaultMessages[this.code]||"")}Kt.prototype.supportsRaf_="function"==typeof A.default.requestAnimationFrame&&"function"==typeof A.default.cancelAnimationFrame,Kt.registerComponent("Component",Kt),Zt.prototype.code=0,Zt.prototype.message="",Zt.prototype.status=null,Zt.errorTypes=["MEDIA_ERR_CUSTOM","MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED","MEDIA_ERR_ENCRYPTED"],Zt.defaultMessages={1:"You aborted the media playback",2:"A network error caused the media download to fail part-way.",3:"The media playback was aborted due to a corruption problem or because the media used features your browser did not support.",4:"The media could not be loaded, either because the server or network failed or because the format is not supported.",5:"The media is encrypted and we do not have the keys to decrypt it."};for(var ei=0;ei=0;n--)if(t[n].enabled){li(t,t[n]);break}return(i=e.call(this,t)||this).changing_=!1,i}L.default(t,e);var i=t.prototype;return i.addTrack=function(t){var i=this;t.enabled&&li(this,t),e.prototype.addTrack.call(this,t),t.addEventListener&&(t.enabledChange_=function(){i.changing_||(i.changing_=!0,li(i,t),i.changing_=!1,i.trigger("change"))},t.addEventListener("enabledchange",t.enabledChange_))},i.removeTrack=function(t){e.prototype.removeTrack.call(this,t),t.removeEventListener&&t.enabledChange_&&(t.removeEventListener("enabledchange",t.enabledChange_),t.enabledChange_=null)},t}(oi),di=function(e,t){for(var i=0;i=0;n--)if(t[n].selected){di(t,t[n]);break}return(i=e.call(this,t)||this).changing_=!1,Object.defineProperty(I.default(i),"selectedIndex",{get:function(){for(var e=0;e0&&(A.default.console&&A.default.console.groupCollapsed&&A.default.console.groupCollapsed("Text Track parsing errors for "+t.src),n.forEach((function(e){return K.error(e)})),A.default.console&&A.default.console.groupEnd&&A.default.console.groupEnd()),i.flush()},ki=function(e,t){var i={uri:e},n=wi(e);n&&(i.cors=n);var r="use-credentials"===t.tech_.crossOrigin();r&&(i.withCredentials=r),R.default(i,At(this,(function(e,i,n){if(e)return K.error(e,i);t.loaded_=!0,"function"!=typeof A.default.WebVTT?t.tech_&&t.tech_.any(["vttjsloaded","vttjserror"],(function(e){if("vttjserror"!==e.type)return Ai(n,t);K.error("vttjs failed to load, stopping trying to process "+t.src)})):Ai(n,t)})))},Pi=function(e){function t(t){var i;if(void 0===t&&(t={}),!t.tech)throw new Error("A tech was not provided.");var n=zt(t,{kind:vi[t.kind]||"subtitles",language:t.language||t.srclang||""}),r=yi[n.mode]||"disabled",a=n.default;"metadata"!==n.kind&&"chapters"!==n.kind||(r="hidden"),(i=e.call(this,n)||this).tech_=n.tech,i.cues_=[],i.activeCues_=[],i.preload_=!1!==i.tech_.preloadTextTracks;var s=new mi(i.cues_),o=new mi(i.activeCues_),u=!1,l=At(I.default(i),(function(){this.tech_.isReady_&&!this.tech_.isDisposed()&&(this.activeCues=this.activeCues,u&&(this.trigger("cuechange"),u=!1))}));return i.tech_.one("dispose",(function(){i.tech_.off("timeupdate",l)})),"disabled"!==r&&i.tech_.on("timeupdate",l),Object.defineProperties(I.default(i),{default:{get:function(){return a},set:function(){}},mode:{get:function(){return r},set:function(e){yi[e]&&r!==e&&(r=e,this.preload_||"disabled"===r||0!==this.cues.length||ki(this.src,this),this.tech_.off("timeupdate",l),"disabled"!==r&&this.tech_.on("timeupdate",l),this.trigger("modechange"))}},cues:{get:function(){return this.loaded_?s:null},set:function(){}},activeCues:{get:function(){if(!this.loaded_)return null;if(0===this.cues.length)return o;for(var e=this.tech_.currentTime(),t=[],i=0,n=this.cues.length;i=e||r.startTime===r.endTime&&r.startTime<=e&&r.startTime+.5>=e)&&t.push(r)}if(u=!1,t.length!==this.activeCues_.length)u=!0;else for(var a=0;a0)return void this.trigger("vttjsloaded");var t=k.default.createElement("script");t.src=this.options_["vtt.js"]||"https://vjs.zencdn.net/vttjs/0.14.1/vtt.min.js",t.onload=function(){e.trigger("vttjsloaded")},t.onerror=function(){e.trigger("vttjserror")},this.on("dispose",(function(){t.onload=null,t.onerror=null})),A.default.WebVTT=!0,this.el().parentNode.appendChild(t)}else this.ready(this.addWebVttScript_)},i.emulateTextTracks=function(){var e=this,t=this.textTracks(),i=this.remoteTextTracks(),n=function(e){return t.addTrack(e.track)},r=function(e){return t.removeTrack(e.track)};i.on("addtrack",n),i.on("removetrack",r),this.addWebVttScript_();var a=function(){return e.trigger("texttrackchange")},s=function(){a();for(var e=0;e=0;r--){var a=e[r];a[t]&&a[t](n,i)}}(e,i,o,s),o}var Vi={buffered:1,currentTime:1,duration:1,muted:1,played:1,paused:1,seekable:1,volume:1,ended:1},Hi={setCurrentTime:1,setMuted:1,setVolume:1},zi={play:1,pause:1};function Gi(e){return function(t,i){return t===Bi?Bi:i[e]?i[e](t):t}}var Wi={opus:"video/ogg",ogv:"video/ogg",mp4:"video/mp4",mov:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",m4a:"audio/mp4",mp3:"audio/mpeg",aac:"audio/aac",caf:"audio/x-caf",flac:"audio/flac",oga:"audio/ogg",wav:"audio/wav",m3u8:"application/x-mpegURL",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",png:"image/png",svg:"image/svg+xml",webp:"image/webp"},Yi=function(e){void 0===e&&(e="");var t=Ei(e);return Wi[t.toLowerCase()]||""};function qi(e){if(!e.type){var t=Yi(e.src);t&&(e.type=t)}return e}var Ki=function(e){function t(t,i,n){var r,a=zt({createEl:!1},i);if(r=e.call(this,t,a,n)||this,i.playerOptions.sources&&0!==i.playerOptions.sources.length)t.src(i.playerOptions.sources);else for(var s=0,o=i.playerOptions.techOrder;s0;!this.player_.tech(!0)||(ge||fe)&&t||this.player_.tech(!0).focus(),this.player_.paused()?ii(this.player_.play()):this.player_.pause()}},t}(Xi);Kt.registerComponent("PosterImage",Qi);var $i={monospace:"monospace",sansSerif:"sans-serif",serif:"serif",monospaceSansSerif:'"Andale Mono", "Lucida Console", monospace',monospaceSerif:'"Courier New", monospace',proportionalSansSerif:"sans-serif",proportionalSerif:"serif",casual:'"Comic Sans MS", Impact, fantasy',script:'"Monotype Corsiva", cursive',smallcaps:'"Andale Mono", "Lucida Console", monospace, sans-serif'};function Ji(e,t){var i;if(4===e.length)i=e[1]+e[1]+e[2]+e[2]+e[3]+e[3];else{if(7!==e.length)throw new Error("Invalid color code provided, "+e+"; must be formatted as e.g. #f0e or #f604e2.");i=e.slice(1)}return"rgba("+parseInt(i.slice(0,2),16)+","+parseInt(i.slice(2,4),16)+","+parseInt(i.slice(4,6),16)+","+t+")"}function Zi(e,t,i){try{e.style[t]=i}catch(e){return}}var en=function(e){function t(t,i,n){var r;r=e.call(this,t,i,n)||this;var a=function(e){return r.updateDisplay(e)};return t.on("loadstart",(function(e){return r.toggleDisplay(e)})),t.on("texttrackchange",a),t.on("loadedmetadata",(function(e){return r.preselectTrack(e)})),t.ready(At(I.default(r),(function(){if(t.tech_&&t.tech_.featuresNativeTextTracks)this.hide();else{t.on("fullscreenchange",a),t.on("playerresize",a),A.default.addEventListener("orientationchange",a),t.on("dispose",(function(){return A.default.removeEventListener("orientationchange",a)}));for(var e=this.options_.playerOptions.tracks||[],i=0;i0;return ii(t),void(!this.player_.tech(!0)||(ge||fe)&&i||this.player_.tech(!0).focus())}var n=this.player_.getChild("controlBar"),r=n&&n.getChild("playToggle");if(r){var a=function(){return r.focus()};ti(t)?t.then(a,(function(){})):this.setTimeout(a,1)}else this.player_.tech(!0).focus()},i.handleKeyDown=function(t){this.mouseused_=!1,e.prototype.handleKeyDown.call(this,t)},i.handleMouseDown=function(e){this.mouseused_=!0},t}(nn);rn.prototype.controlText_="Play Video",Kt.registerComponent("BigPlayButton",rn);var an=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).controlText(i&&i.controlText||n.localize("Close")),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-close-button "+e.prototype.buildCSSClass.call(this)},i.handleClick=function(e){this.trigger({type:"close",bubbles:!1})},i.handleKeyDown=function(t){D.default.isEventKey(t,"Esc")?(t.preventDefault(),t.stopPropagation(),this.trigger("click")):e.prototype.handleKeyDown.call(this,t)},t}(nn);Kt.registerComponent("CloseButton",an);var sn=function(e){function t(t,i){var n;return void 0===i&&(i={}),n=e.call(this,t,i)||this,i.replay=void 0===i.replay||i.replay,n.on(t,"play",(function(e){return n.handlePlay(e)})),n.on(t,"pause",(function(e){return n.handlePause(e)})),i.replay&&n.on(t,"ended",(function(e){return n.handleEnded(e)})),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-play-control "+e.prototype.buildCSSClass.call(this)},i.handleClick=function(e){this.player_.paused()?ii(this.player_.play()):this.player_.pause()},i.handleSeeked=function(e){this.removeClass("vjs-ended"),this.player_.paused()?this.handlePause(e):this.handlePlay(e)},i.handlePlay=function(e){this.removeClass("vjs-ended"),this.removeClass("vjs-paused"),this.addClass("vjs-playing"),this.controlText("Pause")},i.handlePause=function(e){this.removeClass("vjs-playing"),this.addClass("vjs-paused"),this.controlText("Play")},i.handleEnded=function(e){var t=this;this.removeClass("vjs-playing"),this.addClass("vjs-ended"),this.controlText("Replay"),this.one(this.player_,"seeked",(function(e){return t.handleSeeked(e)}))},t}(nn);sn.prototype.controlText_="Play",Kt.registerComponent("PlayToggle",sn);var on=function(e,t){e=e<0?0:e;var i=Math.floor(e%60),n=Math.floor(e/60%60),r=Math.floor(e/3600),a=Math.floor(t/60%60),s=Math.floor(t/3600);return(isNaN(e)||e===1/0)&&(r=n=i="-"),(r=r>0||s>0?r+":":"")+(n=((r||a>=10)&&n<10?"0"+n:n)+":")+(i=i<10?"0"+i:i)},un=on;function ln(e,t){return void 0===t&&(t=e),un(e,t)}var hn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,["timeupdate","ended"],(function(e){return n.updateContent(e)})),n.updateTextNode_(),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){var t=this.buildCSSClass(),i=e.prototype.createEl.call(this,"div",{className:t+" vjs-time-control vjs-control"}),n=xe("span",{className:"vjs-control-text",textContent:this.localize(this.labelText_)+" "},{role:"presentation"});return i.appendChild(n),this.contentEl_=xe("span",{className:t+"-display"},{"aria-live":"off",role:"presentation"}),i.appendChild(this.contentEl_),i},i.dispose=function(){this.contentEl_=null,this.textNode_=null,e.prototype.dispose.call(this)},i.updateTextNode_=function(e){var t=this;void 0===e&&(e=0),e=ln(e),this.formattedTime_!==e&&(this.formattedTime_=e,this.requestNamedAnimationFrame("TimeDisplay#updateTextNode_",(function(){if(t.contentEl_){var e=t.textNode_;e&&t.contentEl_.firstChild!==e&&(e=null,K.warn("TimeDisplay#updateTextnode_: Prevented replacement of text node element since it was no longer a child of this node. Appending a new node instead.")),t.textNode_=k.default.createTextNode(t.formattedTime_),t.textNode_&&(e?t.contentEl_.replaceChild(t.textNode_,e):t.contentEl_.appendChild(t.textNode_))}})))},i.updateContent=function(e){},t}(Kt);hn.prototype.labelText_="Time",hn.prototype.controlText_="Time",Kt.registerComponent("TimeDisplay",hn);var dn=function(e){function t(){return e.apply(this,arguments)||this}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-current-time"},i.updateContent=function(e){var t;t=this.player_.ended()?this.player_.duration():this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime(),this.updateTextNode_(t)},t}(hn);dn.prototype.labelText_="Current Time",dn.prototype.controlText_="Current Time",Kt.registerComponent("CurrentTimeDisplay",dn);var cn=function(e){function t(t,i){var n,r=function(e){return n.updateContent(e)};return(n=e.call(this,t,i)||this).on(t,"durationchange",r),n.on(t,"loadstart",r),n.on(t,"loadedmetadata",r),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-duration"},i.updateContent=function(e){var t=this.player_.duration();this.updateTextNode_(t)},t}(hn);cn.prototype.labelText_="Duration",cn.prototype.controlText_="Duration",Kt.registerComponent("DurationDisplay",cn);var fn=function(e){function t(){return e.apply(this,arguments)||this}return L.default(t,e),t.prototype.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-time-control vjs-time-divider"},{"aria-hidden":!0}),i=e.prototype.createEl.call(this,"div"),n=e.prototype.createEl.call(this,"span",{textContent:"/"});return i.appendChild(n),t.appendChild(i),t},t}(Kt);Kt.registerComponent("TimeDivider",fn);var pn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,"durationchange",(function(e){return n.updateContent(e)})),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-remaining-time"},i.createEl=function(){var t=e.prototype.createEl.call(this);return t.insertBefore(xe("span",{},{"aria-hidden":!0},"-"),this.contentEl_),t},i.updateContent=function(e){var t;"number"==typeof this.player_.duration()&&(t=this.player_.ended()?0:this.player_.remainingTimeDisplay?this.player_.remainingTimeDisplay():this.player_.remainingTime(),this.updateTextNode_(t))},t}(hn);pn.prototype.labelText_="Remaining Time",pn.prototype.controlText_="Remaining Time",Kt.registerComponent("RemainingTimeDisplay",pn);var mn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).updateShowing(),n.on(n.player(),"durationchange",(function(e){return n.updateShowing(e)})),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-live-control vjs-control"});return this.contentEl_=xe("div",{className:"vjs-live-display"},{"aria-live":"off"}),this.contentEl_.appendChild(xe("span",{className:"vjs-control-text",textContent:this.localize("Stream Type")+" "})),this.contentEl_.appendChild(k.default.createTextNode(this.localize("LIVE"))),t.appendChild(this.contentEl_),t},i.dispose=function(){this.contentEl_=null,e.prototype.dispose.call(this)},i.updateShowing=function(e){this.player().duration()===1/0?this.show():this.hide()},t}(Kt);Kt.registerComponent("LiveDisplay",mn);var gn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).updateLiveEdgeStatus(),n.player_.liveTracker&&(n.updateLiveEdgeStatusHandler_=function(e){return n.updateLiveEdgeStatus(e)},n.on(n.player_.liveTracker,"liveedgechange",n.updateLiveEdgeStatusHandler_)),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){var t=e.prototype.createEl.call(this,"button",{className:"vjs-seek-to-live-control vjs-control"});return this.textEl_=xe("span",{className:"vjs-seek-to-live-text",textContent:this.localize("LIVE")},{"aria-hidden":"true"}),t.appendChild(this.textEl_),t},i.updateLiveEdgeStatus=function(){!this.player_.liveTracker||this.player_.liveTracker.atLiveEdge()?(this.setAttribute("aria-disabled",!0),this.addClass("vjs-at-live-edge"),this.controlText("Seek to live, currently playing live")):(this.setAttribute("aria-disabled",!1),this.removeClass("vjs-at-live-edge"),this.controlText("Seek to live, currently behind live"))},i.handleClick=function(){this.player_.liveTracker.seekToLiveEdge()},i.dispose=function(){this.player_.liveTracker&&this.off(this.player_.liveTracker,"liveedgechange",this.updateLiveEdgeStatusHandler_),this.textEl_=null,e.prototype.dispose.call(this)},t}(nn);gn.prototype.controlText_="Seek to live, currently playing live",Kt.registerComponent("SeekToLive",gn);var _n=function(e,t,i){return e=Number(e),Math.min(i,Math.max(t,isNaN(e)?t:e))},vn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).handleMouseDown_=function(e){return n.handleMouseDown(e)},n.handleMouseUp_=function(e){return n.handleMouseUp(e)},n.handleKeyDown_=function(e){return n.handleKeyDown(e)},n.handleClick_=function(e){return n.handleClick(e)},n.handleMouseMove_=function(e){return n.handleMouseMove(e)},n.update_=function(e){return n.update(e)},n.bar=n.getChild(n.options_.barName),n.vertical(!!n.options_.vertical),n.enable(),n}L.default(t,e);var i=t.prototype;return i.enabled=function(){return this.enabled_},i.enable=function(){this.enabled()||(this.on("mousedown",this.handleMouseDown_),this.on("touchstart",this.handleMouseDown_),this.on("keydown",this.handleKeyDown_),this.on("click",this.handleClick_),this.on(this.player_,"controlsvisible",this.update),this.playerEvent&&this.on(this.player_,this.playerEvent,this.update),this.removeClass("disabled"),this.setAttribute("tabindex",0),this.enabled_=!0)},i.disable=function(){if(this.enabled()){var e=this.bar.el_.ownerDocument;this.off("mousedown",this.handleMouseDown_),this.off("touchstart",this.handleMouseDown_),this.off("keydown",this.handleKeyDown_),this.off("click",this.handleClick_),this.off(this.player_,"controlsvisible",this.update_),this.off(e,"mousemove",this.handleMouseMove_),this.off(e,"mouseup",this.handleMouseUp_),this.off(e,"touchmove",this.handleMouseMove_),this.off(e,"touchend",this.handleMouseUp_),this.removeAttribute("tabindex"),this.addClass("disabled"),this.playerEvent&&this.off(this.player_,this.playerEvent,this.update),this.enabled_=!1}},i.createEl=function(t,i,n){return void 0===i&&(i={}),void 0===n&&(n={}),i.className=i.className+" vjs-slider",i=Z({tabIndex:0},i),n=Z({role:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},n),e.prototype.createEl.call(this,t,i,n)},i.handleMouseDown=function(e){var t=this.bar.el_.ownerDocument;"mousedown"===e.type&&e.preventDefault(),"touchstart"!==e.type||pe||e.preventDefault(),ze(),this.addClass("vjs-sliding"),this.trigger("slideractive"),this.on(t,"mousemove",this.handleMouseMove_),this.on(t,"mouseup",this.handleMouseUp_),this.on(t,"touchmove",this.handleMouseMove_),this.on(t,"touchend",this.handleMouseUp_),this.handleMouseMove(e)},i.handleMouseMove=function(e){},i.handleMouseUp=function(){var e=this.bar.el_.ownerDocument;Ge(),this.removeClass("vjs-sliding"),this.trigger("sliderinactive"),this.off(e,"mousemove",this.handleMouseMove_),this.off(e,"mouseup",this.handleMouseUp_),this.off(e,"touchmove",this.handleMouseMove_),this.off(e,"touchend",this.handleMouseUp_),this.update()},i.update=function(){var e=this;if(this.el_&&this.bar){var t=this.getProgress();return t===this.progress_||(this.progress_=t,this.requestNamedAnimationFrame("Slider#update",(function(){var i=e.vertical()?"height":"width";e.bar.el().style[i]=(100*t).toFixed(2)+"%"}))),t}},i.getProgress=function(){return Number(_n(this.getPercent(),0,1).toFixed(4))},i.calculateDistance=function(e){var t=qe(this.el_,e);return this.vertical()?t.y:t.x},i.handleKeyDown=function(t){D.default.isEventKey(t,"Left")||D.default.isEventKey(t,"Down")?(t.preventDefault(),t.stopPropagation(),this.stepBack()):D.default.isEventKey(t,"Right")||D.default.isEventKey(t,"Up")?(t.preventDefault(),t.stopPropagation(),this.stepForward()):e.prototype.handleKeyDown.call(this,t)},i.handleClick=function(e){e.stopPropagation(),e.preventDefault()},i.vertical=function(e){if(void 0===e)return this.vertical_||!1;this.vertical_=!!e,this.vertical_?this.addClass("vjs-slider-vertical"):this.addClass("vjs-slider-horizontal")},t}(Kt);Kt.registerComponent("Slider",vn);var yn=function(e,t){return _n(e/t*100,0,100).toFixed(2)+"%"},bn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).partEls_=[],n.on(t,"progress",(function(e){return n.update(e)})),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-load-progress"}),i=xe("span",{className:"vjs-control-text"}),n=xe("span",{textContent:this.localize("Loaded")}),r=k.default.createTextNode(": ");return this.percentageEl_=xe("span",{className:"vjs-control-text-loaded-percentage",textContent:"0%"}),t.appendChild(i),i.appendChild(n),i.appendChild(r),i.appendChild(this.percentageEl_),t},i.dispose=function(){this.partEls_=null,this.percentageEl_=null,e.prototype.dispose.call(this)},i.update=function(e){var t=this;this.requestNamedAnimationFrame("LoadProgressBar#update",(function(){var e=t.player_.liveTracker,i=t.player_.buffered(),n=e&&e.isLive()?e.seekableEnd():t.player_.duration(),r=t.player_.bufferedEnd(),a=t.partEls_,s=yn(r,n);t.percent_!==s&&(t.el_.style.width=s,De(t.percentageEl_,s),t.percent_=s);for(var o=0;oi.length;d--)t.el_.removeChild(a[d-1]);a.length=i.length}))},t}(Kt);Kt.registerComponent("LoadProgressBar",bn);var Tn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(I.default(n),n.update),30),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-time-tooltip"},{"aria-hidden":"true"})},i.update=function(e,t,i){var n=Ye(this.el_),r=We(this.player_.el()),a=e.width*t;if(r&&n){var s=e.left-r.left+a,o=e.width-a+(r.right-e.right),u=n.width/2;sn.width&&(u=n.width),u=Math.round(u),this.el_.style.right="-"+u+"px",this.write(i)}},i.write=function(e){De(this.el_,e)},i.updateTime=function(e,t,i,n){var r=this;this.requestNamedAnimationFrame("TimeTooltip#updateTime",(function(){var a,s=r.player_.duration();if(r.player_.liveTracker&&r.player_.liveTracker.isLive()){var o=r.player_.liveTracker.liveWindow(),u=o-t*o;a=(u<1?"":"-")+ln(u,o)}else a=ln(i,s);r.update(e,t,a),n&&n()}))},t}(Kt);Kt.registerComponent("TimeTooltip",Tn);var Sn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(I.default(n),n.update),30),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-play-progress vjs-slider-bar"},{"aria-hidden":"true"})},i.update=function(e,t){var i=this.getChild("timeTooltip");if(i){var n=this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime();i.updateTime(e,t,n)}},t}(Kt);Sn.prototype.options_={children:[]},Se||le||Sn.prototype.options_.children.push("timeTooltip"),Kt.registerComponent("PlayProgressBar",Sn);var En=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(I.default(n),n.update),30),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-mouse-display"})},i.update=function(e,t){var i=this,n=t*this.player_.duration();this.getChild("timeTooltip").updateTime(e,t,n,(function(){i.el_.style.left=e.width*t+"px"}))},t}(Kt);En.prototype.options_={children:["timeTooltip"]},Kt.registerComponent("MouseTimeDisplay",En);var wn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).setEventHandlers_(),n}L.default(t,e);var i=t.prototype;return i.setEventHandlers_=function(){var e=this;this.update_=At(this,this.update),this.update=kt(this.update_,30),this.on(this.player_,["ended","durationchange","timeupdate"],this.update),this.player_.liveTracker&&this.on(this.player_.liveTracker,"liveedgechange",this.update),this.updateInterval=null,this.enableIntervalHandler_=function(t){return e.enableInterval_(t)},this.disableIntervalHandler_=function(t){return e.disableInterval_(t)},this.on(this.player_,["playing"],this.enableIntervalHandler_),this.on(this.player_,["ended","pause","waiting"],this.disableIntervalHandler_),"hidden"in k.default&&"visibilityState"in k.default&&this.on(k.default,"visibilitychange",this.toggleVisibility_)},i.toggleVisibility_=function(e){"hidden"===k.default.visibilityState?(this.cancelNamedAnimationFrame("SeekBar#update"),this.cancelNamedAnimationFrame("Slider#update"),this.disableInterval_(e)):(this.player_.ended()||this.player_.paused()||this.enableInterval_(),this.update())},i.enableInterval_=function(){this.updateInterval||(this.updateInterval=this.setInterval(this.update,30))},i.disableInterval_=function(e){this.player_.liveTracker&&this.player_.liveTracker.isLive()&&e&&"ended"!==e.type||this.updateInterval&&(this.clearInterval(this.updateInterval),this.updateInterval=null)},i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-progress-holder"},{"aria-label":this.localize("Progress Bar")})},i.update=function(t){var i=this;if("hidden"!==k.default.visibilityState){var n=e.prototype.update.call(this);return this.requestNamedAnimationFrame("SeekBar#update",(function(){var e=i.player_.ended()?i.player_.duration():i.getCurrentTime_(),t=i.player_.liveTracker,r=i.player_.duration();t&&t.isLive()&&(r=i.player_.liveTracker.liveCurrentTime()),i.percent_!==n&&(i.el_.setAttribute("aria-valuenow",(100*n).toFixed(2)),i.percent_=n),i.currentTime_===e&&i.duration_===r||(i.el_.setAttribute("aria-valuetext",i.localize("progress bar timing: currentTime={1} duration={2}",[ln(e,r),ln(r,r)],"{1} of {2}")),i.currentTime_=e,i.duration_=r),i.bar&&i.bar.update(We(i.el()),i.getProgress())})),n}},i.userSeek_=function(e){this.player_.liveTracker&&this.player_.liveTracker.isLive()&&this.player_.liveTracker.nextSeekedFromUser(),this.player_.currentTime(e)},i.getCurrentTime_=function(){return this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime()},i.getPercent=function(){var e,t=this.getCurrentTime_(),i=this.player_.liveTracker;return i&&i.isLive()?(e=(t-i.seekableStart())/i.liveWindow(),i.atLiveEdge()&&(e=1)):e=t/this.player_.duration(),e},i.handleMouseDown=function(t){Ze(t)&&(t.stopPropagation(),this.player_.scrubbing(!0),this.videoWasPlaying=!this.player_.paused(),this.player_.pause(),e.prototype.handleMouseDown.call(this,t))},i.handleMouseMove=function(e){if(Ze(e)){var t,i=this.calculateDistance(e),n=this.player_.liveTracker;if(n&&n.isLive()){if(i>=.99)return void n.seekToLiveEdge();var r=n.seekableStart(),a=n.liveCurrentTime();if((t=r+i*n.liveWindow())>=a&&(t=a),t<=r&&(t=r+.1),t===1/0)return}else(t=i*this.player_.duration())===this.player_.duration()&&(t-=.1);this.userSeek_(t)}},i.enable=function(){e.prototype.enable.call(this);var t=this.getChild("mouseTimeDisplay");t&&t.show()},i.disable=function(){e.prototype.disable.call(this);var t=this.getChild("mouseTimeDisplay");t&&t.hide()},i.handleMouseUp=function(t){e.prototype.handleMouseUp.call(this,t),t&&t.stopPropagation(),this.player_.scrubbing(!1),this.player_.trigger({type:"timeupdate",target:this,manuallyTriggered:!0}),this.videoWasPlaying?ii(this.player_.play()):this.update_()},i.stepForward=function(){this.userSeek_(this.player_.currentTime()+5)},i.stepBack=function(){this.userSeek_(this.player_.currentTime()-5)},i.handleAction=function(e){this.player_.paused()?this.player_.play():this.player_.pause()},i.handleKeyDown=function(t){var i=this.player_.liveTracker;if(D.default.isEventKey(t,"Space")||D.default.isEventKey(t,"Enter"))t.preventDefault(),t.stopPropagation(),this.handleAction(t);else if(D.default.isEventKey(t,"Home"))t.preventDefault(),t.stopPropagation(),this.userSeek_(0);else if(D.default.isEventKey(t,"End"))t.preventDefault(),t.stopPropagation(),i&&i.isLive()?this.userSeek_(i.liveCurrentTime()):this.userSeek_(this.player_.duration());else if(/^[0-9]$/.test(D.default(t))){t.preventDefault(),t.stopPropagation();var n=10*(D.default.codes[D.default(t)]-D.default.codes[0])/100;i&&i.isLive()?this.userSeek_(i.seekableStart()+i.liveWindow()*n):this.userSeek_(this.player_.duration()*n)}else D.default.isEventKey(t,"PgDn")?(t.preventDefault(),t.stopPropagation(),this.userSeek_(this.player_.currentTime()-60)):D.default.isEventKey(t,"PgUp")?(t.preventDefault(),t.stopPropagation(),this.userSeek_(this.player_.currentTime()+60)):e.prototype.handleKeyDown.call(this,t)},i.dispose=function(){this.disableInterval_(),this.off(this.player_,["ended","durationchange","timeupdate"],this.update),this.player_.liveTracker&&this.off(this.player_.liveTracker,"liveedgechange",this.update),this.off(this.player_,["playing"],this.enableIntervalHandler_),this.off(this.player_,["ended","pause","waiting"],this.disableIntervalHandler_),"hidden"in k.default&&"visibilityState"in k.default&&this.off(k.default,"visibilitychange",this.toggleVisibility_),e.prototype.dispose.call(this)},t}(vn);wn.prototype.options_={children:["loadProgressBar","playProgressBar"],barName:"playProgressBar"},Se||le||wn.prototype.options_.children.splice(1,0,"mouseTimeDisplay"),Kt.registerComponent("SeekBar",wn);var Cn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).handleMouseMove=kt(At(I.default(n),n.handleMouseMove),30),n.throttledHandleMouseSeek=kt(At(I.default(n),n.handleMouseSeek),30),n.handleMouseUpHandler_=function(e){return n.handleMouseUp(e)},n.handleMouseDownHandler_=function(e){return n.handleMouseDown(e)},n.enable(),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-progress-control vjs-control"})},i.handleMouseMove=function(e){var t=this.getChild("seekBar");if(t){var i=t.getChild("playProgressBar"),n=t.getChild("mouseTimeDisplay");if(i||n){var r=t.el(),a=Ye(r),s=qe(r,e).x;s=_n(s,0,1),n&&n.update(a,s),i&&i.update(a,t.getProgress())}}},i.handleMouseSeek=function(e){var t=this.getChild("seekBar");t&&t.handleMouseMove(e)},i.enabled=function(){return this.enabled_},i.disable=function(){if(this.children().forEach((function(e){return e.disable&&e.disable()})),this.enabled()&&(this.off(["mousedown","touchstart"],this.handleMouseDownHandler_),this.off(this.el_,"mousemove",this.handleMouseMove),this.removeListenersAddedOnMousedownAndTouchstart(),this.addClass("disabled"),this.enabled_=!1,this.player_.scrubbing())){var e=this.getChild("seekBar");this.player_.scrubbing(!1),e.videoWasPlaying&&ii(this.player_.play())}},i.enable=function(){this.children().forEach((function(e){return e.enable&&e.enable()})),this.enabled()||(this.on(["mousedown","touchstart"],this.handleMouseDownHandler_),this.on(this.el_,"mousemove",this.handleMouseMove),this.removeClass("disabled"),this.enabled_=!0)},i.removeListenersAddedOnMousedownAndTouchstart=function(){var e=this.el_.ownerDocument;this.off(e,"mousemove",this.throttledHandleMouseSeek),this.off(e,"touchmove",this.throttledHandleMouseSeek),this.off(e,"mouseup",this.handleMouseUpHandler_),this.off(e,"touchend",this.handleMouseUpHandler_)},i.handleMouseDown=function(e){var t=this.el_.ownerDocument,i=this.getChild("seekBar");i&&i.handleMouseDown(e),this.on(t,"mousemove",this.throttledHandleMouseSeek),this.on(t,"touchmove",this.throttledHandleMouseSeek),this.on(t,"mouseup",this.handleMouseUpHandler_),this.on(t,"touchend",this.handleMouseUpHandler_)},i.handleMouseUp=function(e){var t=this.getChild("seekBar");t&&t.handleMouseUp(e),this.removeListenersAddedOnMousedownAndTouchstart()},t}(Kt);Cn.prototype.options_={children:["seekBar"]},Kt.registerComponent("ProgressControl",Cn);var An=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,["enterpictureinpicture","leavepictureinpicture"],(function(e){return n.handlePictureInPictureChange(e)})),n.on(t,["disablepictureinpicturechanged","loadedmetadata"],(function(e){return n.handlePictureInPictureEnabledChange(e)})),n.disable(),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-picture-in-picture-control "+e.prototype.buildCSSClass.call(this)},i.handlePictureInPictureEnabledChange=function(){k.default.pictureInPictureEnabled&&!1===this.player_.disablePictureInPicture()?this.enable():this.disable()},i.handlePictureInPictureChange=function(e){this.player_.isInPictureInPicture()?this.controlText("Exit Picture-in-Picture"):this.controlText("Picture-in-Picture"),this.handlePictureInPictureEnabledChange()},i.handleClick=function(e){this.player_.isInPictureInPicture()?this.player_.exitPictureInPicture():this.player_.requestPictureInPicture()},t}(nn);An.prototype.controlText_="Picture-in-Picture",Kt.registerComponent("PictureInPictureToggle",An);var kn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,"fullscreenchange",(function(e){return n.handleFullscreenChange(e)})),!1===k.default[t.fsApi_.fullscreenEnabled]&&n.disable(),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-fullscreen-control "+e.prototype.buildCSSClass.call(this)},i.handleFullscreenChange=function(e){this.player_.isFullscreen()?this.controlText("Non-Fullscreen"):this.controlText("Fullscreen")},i.handleClick=function(e){this.player_.isFullscreen()?this.player_.exitFullscreen():this.player_.requestFullscreen()},t}(nn);kn.prototype.controlText_="Fullscreen",Kt.registerComponent("FullscreenToggle",kn);var Pn=function(e){function t(){return e.apply(this,arguments)||this}return L.default(t,e),t.prototype.createEl=function(){var t=e.prototype.createEl.call(this,"div",{className:"vjs-volume-level"});return t.appendChild(e.prototype.createEl.call(this,"span",{className:"vjs-control-text"})),t},t}(Kt);Kt.registerComponent("VolumeLevel",Pn);var In=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(I.default(n),n.update),30),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-volume-tooltip"},{"aria-hidden":"true"})},i.update=function(e,t,i,n){if(!i){var r=We(this.el_),a=We(this.player_.el()),s=e.width*t;if(!a||!r)return;var o=e.left-a.left+s,u=e.width-s+(a.right-e.right),l=r.width/2;or.width&&(l=r.width),this.el_.style.right="-"+l+"px"}this.write(n+"%")},i.write=function(e){De(this.el_,e)},i.updateVolume=function(e,t,i,n,r){var a=this;this.requestNamedAnimationFrame("VolumeLevelTooltip#updateVolume",(function(){a.update(e,t,i,n.toFixed(0)),r&&r()}))},t}(Kt);Kt.registerComponent("VolumeLevelTooltip",In);var Ln=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).update=kt(At(I.default(n),n.update),30),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-mouse-display"})},i.update=function(e,t,i){var n=this,r=100*t;this.getChild("volumeLevelTooltip").updateVolume(e,t,i,r,(function(){i?n.el_.style.bottom=e.height*t+"px":n.el_.style.left=e.width*t+"px"}))},t}(Kt);Ln.prototype.options_={children:["volumeLevelTooltip"]},Kt.registerComponent("MouseVolumeLevelDisplay",Ln);var xn=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on("slideractive",(function(e){return n.updateLastVolume_(e)})),n.on(t,"volumechange",(function(e){return n.updateARIAAttributes(e)})),t.ready((function(){return n.updateARIAAttributes()})),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-volume-bar vjs-slider-bar"},{"aria-label":this.localize("Volume Level"),"aria-live":"polite"})},i.handleMouseDown=function(t){Ze(t)&&e.prototype.handleMouseDown.call(this,t)},i.handleMouseMove=function(e){var t=this.getChild("mouseVolumeLevelDisplay");if(t){var i=this.el(),n=We(i),r=this.vertical(),a=qe(i,e);a=r?a.y:a.x,a=_n(a,0,1),t.update(n,a,r)}Ze(e)&&(this.checkMuted(),this.player_.volume(this.calculateDistance(e)))},i.checkMuted=function(){this.player_.muted()&&this.player_.muted(!1)},i.getPercent=function(){return this.player_.muted()?0:this.player_.volume()},i.stepForward=function(){this.checkMuted(),this.player_.volume(this.player_.volume()+.1)},i.stepBack=function(){this.checkMuted(),this.player_.volume(this.player_.volume()-.1)},i.updateARIAAttributes=function(e){var t=this.player_.muted()?0:this.volumeAsPercentage_();this.el_.setAttribute("aria-valuenow",t),this.el_.setAttribute("aria-valuetext",t+"%")},i.volumeAsPercentage_=function(){return Math.round(100*this.player_.volume())},i.updateLastVolume_=function(){var e=this,t=this.player_.volume();this.one("sliderinactive",(function(){0===e.player_.volume()&&e.player_.lastVolume_(t)}))},t}(vn);xn.prototype.options_={children:["volumeLevel"],barName:"volumeLevel"},Se||le||xn.prototype.options_.children.splice(0,0,"mouseVolumeLevelDisplay"),xn.prototype.playerEvent="volumechange",Kt.registerComponent("VolumeBar",xn);var Dn=function(e){function t(t,i){var n;return void 0===i&&(i={}),i.vertical=i.vertical||!1,(void 0===i.volumeBar||te(i.volumeBar))&&(i.volumeBar=i.volumeBar||{},i.volumeBar.vertical=i.vertical),n=e.call(this,t,i)||this,function(e,t){t.tech_&&!t.tech_.featuresVolumeControl&&e.addClass("vjs-hidden"),e.on(t,"loadstart",(function(){t.tech_.featuresVolumeControl?e.removeClass("vjs-hidden"):e.addClass("vjs-hidden")}))}(I.default(n),t),n.throttledHandleMouseMove=kt(At(I.default(n),n.handleMouseMove),30),n.handleMouseUpHandler_=function(e){return n.handleMouseUp(e)},n.on("mousedown",(function(e){return n.handleMouseDown(e)})),n.on("touchstart",(function(e){return n.handleMouseDown(e)})),n.on("mousemove",(function(e){return n.handleMouseMove(e)})),n.on(n.volumeBar,["focus","slideractive"],(function(){n.volumeBar.addClass("vjs-slider-active"),n.addClass("vjs-slider-active"),n.trigger("slideractive")})),n.on(n.volumeBar,["blur","sliderinactive"],(function(){n.volumeBar.removeClass("vjs-slider-active"),n.removeClass("vjs-slider-active"),n.trigger("sliderinactive")})),n}L.default(t,e);var i=t.prototype;return i.createEl=function(){var t="vjs-volume-horizontal";return this.options_.vertical&&(t="vjs-volume-vertical"),e.prototype.createEl.call(this,"div",{className:"vjs-volume-control vjs-control "+t})},i.handleMouseDown=function(e){var t=this.el_.ownerDocument;this.on(t,"mousemove",this.throttledHandleMouseMove),this.on(t,"touchmove",this.throttledHandleMouseMove),this.on(t,"mouseup",this.handleMouseUpHandler_),this.on(t,"touchend",this.handleMouseUpHandler_)},i.handleMouseUp=function(e){var t=this.el_.ownerDocument;this.off(t,"mousemove",this.throttledHandleMouseMove),this.off(t,"touchmove",this.throttledHandleMouseMove),this.off(t,"mouseup",this.handleMouseUpHandler_),this.off(t,"touchend",this.handleMouseUpHandler_)},i.handleMouseMove=function(e){this.volumeBar.handleMouseMove(e)},t}(Kt);Dn.prototype.options_={children:["volumeBar"]},Kt.registerComponent("VolumeControl",Dn);var Rn=function(e){function t(t,i){var n;return n=e.call(this,t,i)||this,function(e,t){t.tech_&&!t.tech_.featuresMuteControl&&e.addClass("vjs-hidden"),e.on(t,"loadstart",(function(){t.tech_.featuresMuteControl?e.removeClass("vjs-hidden"):e.addClass("vjs-hidden")}))}(I.default(n),t),n.on(t,["loadstart","volumechange"],(function(e){return n.update(e)})),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-mute-control "+e.prototype.buildCSSClass.call(this)},i.handleClick=function(e){var t=this.player_.volume(),i=this.player_.lastVolume_();if(0===t){var n=i<.1?.1:i;this.player_.volume(n),this.player_.muted(!1)}else this.player_.muted(!this.player_.muted())},i.update=function(e){this.updateIcon_(),this.updateControlText_()},i.updateIcon_=function(){var e=this.player_.volume(),t=3;Se&&this.player_.tech_&&this.player_.tech_.el_&&this.player_.muted(this.player_.tech_.el_.muted),0===e||this.player_.muted()?t=0:e<.33?t=1:e<.67&&(t=2);for(var i=0;i<4;i++)Me(this.el_,"vjs-vol-"+i);Ue(this.el_,"vjs-vol-"+t)},i.updateControlText_=function(){var e=this.player_.muted()||0===this.player_.volume()?"Unmute":"Mute";this.controlText()!==e&&this.controlText(e)},t}(nn);Rn.prototype.controlText_="Mute",Kt.registerComponent("MuteToggle",Rn);var On=function(e){function t(t,i){var n;return void 0===i&&(i={}),void 0!==i.inline?i.inline=i.inline:i.inline=!0,(void 0===i.volumeControl||te(i.volumeControl))&&(i.volumeControl=i.volumeControl||{},i.volumeControl.vertical=!i.inline),(n=e.call(this,t,i)||this).handleKeyPressHandler_=function(e){return n.handleKeyPress(e)},n.on(t,["loadstart"],(function(e){return n.volumePanelState_(e)})),n.on(n.muteToggle,"keyup",(function(e){return n.handleKeyPress(e)})),n.on(n.volumeControl,"keyup",(function(e){return n.handleVolumeControlKeyUp(e)})),n.on("keydown",(function(e){return n.handleKeyPress(e)})),n.on("mouseover",(function(e){return n.handleMouseOver(e)})),n.on("mouseout",(function(e){return n.handleMouseOut(e)})),n.on(n.volumeControl,["slideractive"],n.sliderActive_),n.on(n.volumeControl,["sliderinactive"],n.sliderInactive_),n}L.default(t,e);var i=t.prototype;return i.sliderActive_=function(){this.addClass("vjs-slider-active")},i.sliderInactive_=function(){this.removeClass("vjs-slider-active")},i.volumePanelState_=function(){this.volumeControl.hasClass("vjs-hidden")&&this.muteToggle.hasClass("vjs-hidden")&&this.addClass("vjs-hidden"),this.volumeControl.hasClass("vjs-hidden")&&!this.muteToggle.hasClass("vjs-hidden")&&this.addClass("vjs-mute-toggle-only")},i.createEl=function(){var t="vjs-volume-panel-horizontal";return this.options_.inline||(t="vjs-volume-panel-vertical"),e.prototype.createEl.call(this,"div",{className:"vjs-volume-panel vjs-control "+t})},i.dispose=function(){this.handleMouseOut(),e.prototype.dispose.call(this)},i.handleVolumeControlKeyUp=function(e){D.default.isEventKey(e,"Esc")&&this.muteToggle.focus()},i.handleMouseOver=function(e){this.addClass("vjs-hover"),yt(k.default,"keyup",this.handleKeyPressHandler_)},i.handleMouseOut=function(e){this.removeClass("vjs-hover"),bt(k.default,"keyup",this.handleKeyPressHandler_)},i.handleKeyPress=function(e){D.default.isEventKey(e,"Esc")&&this.handleMouseOut()},t}(Kt);On.prototype.options_={children:["muteToggle","volumeControl"]},Kt.registerComponent("VolumePanel",On);var Un=function(e){function t(t,i){var n;return n=e.call(this,t,i)||this,i&&(n.menuButton_=i.menuButton),n.focusedChild_=-1,n.on("keydown",(function(e){return n.handleKeyDown(e)})),n.boundHandleBlur_=function(e){return n.handleBlur(e)},n.boundHandleTapClick_=function(e){return n.handleTapClick(e)},n}L.default(t,e);var i=t.prototype;return i.addEventListenerForItem=function(e){e instanceof Kt&&(this.on(e,"blur",this.boundHandleBlur_),this.on(e,["tap","click"],this.boundHandleTapClick_))},i.removeEventListenerForItem=function(e){e instanceof Kt&&(this.off(e,"blur",this.boundHandleBlur_),this.off(e,["tap","click"],this.boundHandleTapClick_))},i.removeChild=function(t){"string"==typeof t&&(t=this.getChild(t)),this.removeEventListenerForItem(t),e.prototype.removeChild.call(this,t)},i.addItem=function(e){var t=this.addChild(e);t&&this.addEventListenerForItem(t)},i.createEl=function(){var t=this.options_.contentElType||"ul";this.contentEl_=xe(t,{className:"vjs-menu-content"}),this.contentEl_.setAttribute("role","menu");var i=e.prototype.createEl.call(this,"div",{append:this.contentEl_,className:"vjs-menu"});return i.appendChild(this.contentEl_),yt(i,"click",(function(e){e.preventDefault(),e.stopImmediatePropagation()})),i},i.dispose=function(){this.contentEl_=null,this.boundHandleBlur_=null,this.boundHandleTapClick_=null,e.prototype.dispose.call(this)},i.handleBlur=function(e){var t=e.relatedTarget||k.default.activeElement;if(!this.children().some((function(e){return e.el()===t}))){var i=this.menuButton_;i&&i.buttonPressed_&&t!==i.el().firstChild&&i.unpressButton()}},i.handleTapClick=function(e){if(this.menuButton_){this.menuButton_.unpressButton();var t=this.children();if(!Array.isArray(t))return;var i=t.filter((function(t){return t.el()===e.target}))[0];if(!i)return;"CaptionSettingsMenuItem"!==i.name()&&this.menuButton_.focus()}},i.handleKeyDown=function(e){D.default.isEventKey(e,"Left")||D.default.isEventKey(e,"Down")?(e.preventDefault(),e.stopPropagation(),this.stepForward()):(D.default.isEventKey(e,"Right")||D.default.isEventKey(e,"Up"))&&(e.preventDefault(),e.stopPropagation(),this.stepBack())},i.stepForward=function(){var e=0;void 0!==this.focusedChild_&&(e=this.focusedChild_+1),this.focus(e)},i.stepBack=function(){var e=0;void 0!==this.focusedChild_&&(e=this.focusedChild_-1),this.focus(e)},i.focus=function(e){void 0===e&&(e=0);var t=this.children().slice();t.length&&t[0].hasClass("vjs-menu-title")&&t.shift(),t.length>0&&(e<0?e=0:e>=t.length&&(e=t.length-1),this.focusedChild_=e,t[e].el_.focus())},t}(Kt);Kt.registerComponent("Menu",Un);var Mn=function(e){function t(t,i){var n;void 0===i&&(i={}),(n=e.call(this,t,i)||this).menuButton_=new nn(t,i),n.menuButton_.controlText(n.controlText_),n.menuButton_.el_.setAttribute("aria-haspopup","true");var r=nn.prototype.buildCSSClass();n.menuButton_.el_.className=n.buildCSSClass()+" "+r,n.menuButton_.removeClass("vjs-control"),n.addChild(n.menuButton_),n.update(),n.enabled_=!0;var a=function(e){return n.handleClick(e)};return n.handleMenuKeyUp_=function(e){return n.handleMenuKeyUp(e)},n.on(n.menuButton_,"tap",a),n.on(n.menuButton_,"click",a),n.on(n.menuButton_,"keydown",(function(e){return n.handleKeyDown(e)})),n.on(n.menuButton_,"mouseenter",(function(){n.addClass("vjs-hover"),n.menu.show(),yt(k.default,"keyup",n.handleMenuKeyUp_)})),n.on("mouseleave",(function(e){return n.handleMouseLeave(e)})),n.on("keydown",(function(e){return n.handleSubmenuKeyDown(e)})),n}L.default(t,e);var i=t.prototype;return i.update=function(){var e=this.createMenu();this.menu&&(this.menu.dispose(),this.removeChild(this.menu)),this.menu=e,this.addChild(e),this.buttonPressed_=!1,this.menuButton_.el_.setAttribute("aria-expanded","false"),this.items&&this.items.length<=this.hideThreshold_?this.hide():this.show()},i.createMenu=function(){var e=new Un(this.player_,{menuButton:this});if(this.hideThreshold_=0,this.options_.title){var t=xe("li",{className:"vjs-menu-title",textContent:Ht(this.options_.title),tabIndex:-1}),i=new Kt(this.player_,{el:t});e.addItem(i)}if(this.items=this.createItems(),this.items)for(var n=0;n-1&&"showing"===a.mode){i=!1;break}}i!==this.isSelected_&&this.selected(i)},i.handleSelectedLanguageChange=function(e){for(var t=this.player().textTracks(),i=!0,n=0,r=t.length;n-1&&"showing"===a.mode){i=!1;break}}i&&(this.player_.cache_.selectedLanguage={enabled:!1})},t}(jn);Kt.registerComponent("OffTextTrackMenuItem",Vn);var Hn=function(e){function t(t,i){return void 0===i&&(i={}),i.tracks=t.textTracks(),e.call(this,t,i)||this}return L.default(t,e),t.prototype.createItems=function(e,t){var i;void 0===e&&(e=[]),void 0===t&&(t=jn),this.label_&&(i=this.label_+" off"),e.push(new Vn(this.player_,{kinds:this.kinds_,kind:this.kind_,label:i})),this.hideThreshold_+=1;var n=this.player_.textTracks();Array.isArray(this.kinds_)||(this.kinds_=[this.kind_]);for(var r=0;r-1){var s=new t(this.player_,{track:a,kinds:this.kinds_,kind:this.kind_,selectable:!0,multiSelectable:!1});s.addClass("vjs-"+a.kind+"-menu-item"),e.push(s)}}return e},t}(Fn);Kt.registerComponent("TextTrackButton",Hn);var zn=function(e){function t(t,i){var n,r=i.track,a=i.cue,s=t.currentTime();return i.selectable=!0,i.multiSelectable=!1,i.label=a.text,i.selected=a.startTime<=s&&s=0;t--){var i=e[t];if(i.kind===this.kind_)return i}},i.getMenuCaption=function(){return this.track_&&this.track_.label?this.track_.label:this.localize(Ht(this.kind_))},i.createMenu=function(){return this.options_.title=this.getMenuCaption(),e.prototype.createMenu.call(this)},i.createItems=function(){var e=[];if(!this.track_)return e;var t=this.track_.cues;if(!t)return e;for(var i=0,n=t.length;i-1&&(n.label_="captions"),n.menuButton_.controlText(Ht(n.label_)),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-subs-caps-button "+e.prototype.buildCSSClass.call(this)},i.buildWrapperCSSClass=function(){return"vjs-subs-caps-button "+e.prototype.buildWrapperCSSClass.call(this)},i.createItems=function(){var t=[];return this.player().tech_&&this.player().tech_.featuresNativeTextTracks||!this.player().getChild("textTrackSettings")||(t.push(new qn(this.player_,{kind:this.label_})),this.hideThreshold_+=1),t=e.prototype.createItems.call(this,t,Xn)},t}(Hn);Qn.prototype.kinds_=["captions","subtitles"],Qn.prototype.controlText_="Subtitles",Kt.registerComponent("SubsCapsButton",Qn);var $n=function(e){function t(t,i){var n,r=i.track,a=t.audioTracks();i.label=r.label||r.language||"Unknown",i.selected=r.enabled,(n=e.call(this,t,i)||this).track=r,n.addClass("vjs-"+r.kind+"-menu-item");var s=function(){for(var e=arguments.length,t=new Array(e),i=0;i=0;i--)t.push(new Zn(this.player(),{rate:e[i]+"x"}));return t},i.updateARIAAttributes=function(){this.el().setAttribute("aria-valuenow",this.player().playbackRate())},i.handleClick=function(e){for(var t=this.player().playbackRate(),i=this.playbackRates(),n=i[0],r=0;rt){n=i[r];break}this.player().playbackRate(n)},i.handlePlaybackRateschange=function(e){this.update()},i.playbackRates=function(){var e=this.player();return e.playbackRates&&e.playbackRates()||[]},i.playbackRateSupported=function(){return this.player().tech_&&this.player().tech_.featuresPlaybackRate&&this.playbackRates()&&this.playbackRates().length>0},i.updateVisibility=function(e){this.playbackRateSupported()?this.removeClass("vjs-hidden"):this.addClass("vjs-hidden")},i.updateLabel=function(e){this.playbackRateSupported()&&(this.labelEl_.textContent=this.player().playbackRate()+"x")},t}(Mn);er.prototype.controlText_="Playback Rate",Kt.registerComponent("PlaybackRateMenuButton",er);var tr=function(e){function t(){return e.apply(this,arguments)||this}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-spacer "+e.prototype.buildCSSClass.call(this)},i.createEl=function(t,i,n){return void 0===t&&(t="div"),void 0===i&&(i={}),void 0===n&&(n={}),i.className||(i.className=this.buildCSSClass()),e.prototype.createEl.call(this,t,i,n)},t}(Kt);Kt.registerComponent("Spacer",tr);var ir=function(e){function t(){return e.apply(this,arguments)||this}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-custom-control-spacer "+e.prototype.buildCSSClass.call(this)},i.createEl=function(){return e.prototype.createEl.call(this,"div",{className:this.buildCSSClass(),textContent:" "})},t}(tr);Kt.registerComponent("CustomControlSpacer",ir);var nr=function(e){function t(){return e.apply(this,arguments)||this}return L.default(t,e),t.prototype.createEl=function(){return e.prototype.createEl.call(this,"div",{className:"vjs-control-bar",dir:"ltr"})},t}(Kt);nr.prototype.options_={children:["playToggle","volumePanel","currentTimeDisplay","timeDivider","durationDisplay","progressControl","liveDisplay","seekToLive","remainingTimeDisplay","customControlSpacer","playbackRateMenuButton","chaptersButton","descriptionsButton","subsCapsButton","audioTrackButton","fullscreenToggle"]},"exitPictureInPicture"in k.default&&nr.prototype.options_.children.splice(nr.prototype.options_.children.length-1,0,"pictureInPictureToggle"),Kt.registerComponent("ControlBar",nr);var rr=function(e){function t(t,i){var n;return(n=e.call(this,t,i)||this).on(t,"error",(function(e){return n.open(e)})),n}L.default(t,e);var i=t.prototype;return i.buildCSSClass=function(){return"vjs-error-display "+e.prototype.buildCSSClass.call(this)},i.content=function(){var e=this.player().error();return e?this.localize(e.message):""},t}(si);rr.prototype.options_=P.default({},si.prototype.options_,{pauseOnOpen:!1,fillAlways:!0,temporary:!1,uncloseable:!0}),Kt.registerComponent("ErrorDisplay",rr);var ar=["#000","Black"],sr=["#00F","Blue"],or=["#0FF","Cyan"],ur=["#0F0","Green"],lr=["#F0F","Magenta"],hr=["#F00","Red"],dr=["#FFF","White"],cr=["#FF0","Yellow"],fr=["1","Opaque"],pr=["0.5","Semi-Transparent"],mr=["0","Transparent"],gr={backgroundColor:{selector:".vjs-bg-color > select",id:"captions-background-color-%s",label:"Color",options:[ar,dr,hr,ur,sr,cr,lr,or]},backgroundOpacity:{selector:".vjs-bg-opacity > select",id:"captions-background-opacity-%s",label:"Transparency",options:[fr,pr,mr]},color:{selector:".vjs-fg-color > select",id:"captions-foreground-color-%s",label:"Color",options:[dr,ar,hr,ur,sr,cr,lr,or]},edgeStyle:{selector:".vjs-edge-style > select",id:"%s",label:"Text Edge Style",options:[["none","None"],["raised","Raised"],["depressed","Depressed"],["uniform","Uniform"],["dropshadow","Dropshadow"]]},fontFamily:{selector:".vjs-font-family > select",id:"captions-font-family-%s",label:"Font Family",options:[["proportionalSansSerif","Proportional Sans-Serif"],["monospaceSansSerif","Monospace Sans-Serif"],["proportionalSerif","Proportional Serif"],["monospaceSerif","Monospace Serif"],["casual","Casual"],["script","Script"],["small-caps","Small Caps"]]},fontPercent:{selector:".vjs-font-percent > select",id:"captions-font-size-%s",label:"Font Size",options:[["0.50","50%"],["0.75","75%"],["1.00","100%"],["1.25","125%"],["1.50","150%"],["1.75","175%"],["2.00","200%"],["3.00","300%"],["4.00","400%"]],default:2,parser:function(e){return"1.00"===e?null:Number(e)}},textOpacity:{selector:".vjs-text-opacity > select",id:"captions-foreground-opacity-%s",label:"Transparency",options:[fr,pr]},windowColor:{selector:".vjs-window-color > select",id:"captions-window-color-%s",label:"Color"},windowOpacity:{selector:".vjs-window-opacity > select",id:"captions-window-opacity-%s",label:"Transparency",options:[mr,pr,fr]}};function _r(e,t){if(t&&(e=t(e)),e&&"none"!==e)return e}gr.windowColor.options=gr.backgroundColor.options;var vr=function(e){function t(t,i){var n;return i.temporary=!1,(n=e.call(this,t,i)||this).updateDisplay=n.updateDisplay.bind(I.default(n)),n.fill(),n.hasBeenOpened_=n.hasBeenFilled_=!0,n.endDialog=xe("p",{className:"vjs-control-text",textContent:n.localize("End of dialog window.")}),n.el().appendChild(n.endDialog),n.setDefaults(),void 0===i.persistTextTrackSettings&&(n.options_.persistTextTrackSettings=n.options_.playerOptions.persistTextTrackSettings),n.on(n.$(".vjs-done-button"),"click",(function(){n.saveSettings(),n.close()})),n.on(n.$(".vjs-default-button"),"click",(function(){n.setDefaults(),n.updateDisplay()})),J(gr,(function(e){n.on(n.$(e.selector),"change",n.updateDisplay)})),n.options_.persistTextTrackSettings&&n.restoreSettings(),n}L.default(t,e);var i=t.prototype;return i.dispose=function(){this.endDialog=null,e.prototype.dispose.call(this)},i.createElSelect_=function(e,t,i){var n=this;void 0===t&&(t=""),void 0===i&&(i="label");var r=gr[e],a=r.id.replace("%s",this.id_),s=[t,a].join(" ").trim();return["<"+i+' id="'+a+'" class="'+("label"===i?"vjs-label":"")+'">',this.localize(r.label),"",'").join("")},i.createElFgColor_=function(){var e="captions-text-legend-"+this.id_;return['
','',this.localize("Text"),"",this.createElSelect_("color",e),'',this.createElSelect_("textOpacity",e),"","
"].join("")},i.createElBgColor_=function(){var e="captions-background-"+this.id_;return['
','',this.localize("Background"),"",this.createElSelect_("backgroundColor",e),'',this.createElSelect_("backgroundOpacity",e),"","
"].join("")},i.createElWinColor_=function(){var e="captions-window-"+this.id_;return['
','',this.localize("Window"),"",this.createElSelect_("windowColor",e),'',this.createElSelect_("windowOpacity",e),"","
"].join("")},i.createElColors_=function(){return xe("div",{className:"vjs-track-settings-colors",innerHTML:[this.createElFgColor_(),this.createElBgColor_(),this.createElWinColor_()].join("")})},i.createElFont_=function(){return xe("div",{className:"vjs-track-settings-font",innerHTML:['
',this.createElSelect_("fontPercent","","legend"),"
",'
',this.createElSelect_("edgeStyle","","legend"),"
",'
',this.createElSelect_("fontFamily","","legend"),"
"].join("")})},i.createElControls_=function(){var e=this.localize("restore all settings to the default values");return xe("div",{className:"vjs-track-settings-controls",innerHTML:['",'"].join("")})},i.content=function(){return[this.createElColors_(),this.createElFont_(),this.createElControls_()]},i.label=function(){return this.localize("Caption Settings Dialog")},i.description=function(){return this.localize("Beginning of dialog window. Escape will cancel and close the window.")},i.buildCSSClass=function(){return e.prototype.buildCSSClass.call(this)+" vjs-text-track-settings"},i.getValues=function(){var e,t,i,n=this;return t=function(e,t,i){var r,a,s=(r=n.$(t.selector),a=t.parser,_r(r.options[r.options.selectedIndex].value,a));return void 0!==s&&(e[i]=s),e},void 0===(i={})&&(i=0),$(e=gr).reduce((function(i,n){return t(i,e[n],n)}),i)},i.setValues=function(e){var t=this;J(gr,(function(i,n){!function(e,t,i){if(t)for(var n=0;nthis.options_.liveTolerance;this.timeupdateSeen_&&n!==1/0||(a=!1),a!==this.behindLiveEdge_&&(this.behindLiveEdge_=a,this.trigger("liveedgechange"))}},i.handleDurationchange=function(){this.toggleTracking()},i.toggleTracking=function(){this.player_.duration()===1/0&&this.liveWindow()>=this.options_.trackingThreshold?(this.player_.options_.liveui&&this.player_.addClass("vjs-liveui"),this.startTracking()):(this.player_.removeClass("vjs-liveui"),this.stopTracking())},i.startTracking=function(){this.isTracking()||(this.timeupdateSeen_||(this.timeupdateSeen_=this.player_.hasStarted()),this.trackingInterval_=this.setInterval(this.trackLiveHandler_,30),this.trackLive_(),this.on(this.player_,["play","pause"],this.trackLiveHandler_),this.timeupdateSeen_?this.on(this.player_,"seeked",this.handleSeeked_):(this.one(this.player_,"play",this.handlePlay_),this.one(this.player_,"timeupdate",this.handleFirstTimeupdate_)))},i.handleFirstTimeupdate=function(){this.timeupdateSeen_=!0,this.on(this.player_,"seeked",this.handleSeeked_)},i.handleSeeked=function(){var e=Math.abs(this.liveCurrentTime()-this.player_.currentTime());this.seekedBehindLive_=this.nextSeekedFromUser_&&e>2,this.nextSeekedFromUser_=!1,this.trackLive_()},i.handlePlay=function(){this.one(this.player_,"timeupdate",this.seekToLiveEdge_)},i.reset_=function(){this.lastTime_=-1,this.pastSeekEnd_=0,this.lastSeekEnd_=-1,this.behindLiveEdge_=!0,this.timeupdateSeen_=!1,this.seekedBehindLive_=!1,this.nextSeekedFromUser_=!1,this.clearInterval(this.trackingInterval_),this.trackingInterval_=null,this.off(this.player_,["play","pause"],this.trackLiveHandler_),this.off(this.player_,"seeked",this.handleSeeked_),this.off(this.player_,"play",this.handlePlay_),this.off(this.player_,"timeupdate",this.handleFirstTimeupdate_),this.off(this.player_,"timeupdate",this.seekToLiveEdge_)},i.nextSeekedFromUser=function(){this.nextSeekedFromUser_=!0},i.stopTracking=function(){this.isTracking()&&(this.reset_(),this.trigger("liveedgechange"))},i.seekableEnd=function(){for(var e=this.player_.seekable(),t=[],i=e?e.length:0;i--;)t.push(e.end(i));return t.length?t.sort()[t.length-1]:1/0},i.seekableStart=function(){for(var e=this.player_.seekable(),t=[],i=e?e.length:0;i--;)t.push(e.start(i));return t.length?t.sort()[0]:0},i.liveWindow=function(){var e=this.liveCurrentTime();return e===1/0?0:e-this.seekableStart()},i.isLive=function(){return this.isTracking()},i.atLiveEdge=function(){return!this.behindLiveEdge()},i.liveCurrentTime=function(){return this.pastSeekEnd()+this.seekableEnd()},i.pastSeekEnd=function(){var e=this.seekableEnd();return-1!==this.lastSeekEnd_&&e!==this.lastSeekEnd_&&(this.pastSeekEnd_=0),this.lastSeekEnd_=e,this.pastSeekEnd_},i.behindLiveEdge=function(){return this.behindLiveEdge_},i.isTracking=function(){return"number"==typeof this.trackingInterval_},i.seekToLiveEdge=function(){this.seekedBehindLive_=!1,this.atLiveEdge()||(this.nextSeekedFromUser_=!1,this.player_.currentTime(this.liveCurrentTime()))},i.dispose=function(){this.off(k.default,"visibilitychange",this.handleVisibilityChange_),this.stopTracking(),e.prototype.dispose.call(this)},t}(Kt);Kt.registerComponent("LiveTracker",Tr);var Sr,Er=function(e){var t=e.el();if(t.hasAttribute("src"))return e.triggerSourceset(t.src),!0;var i=e.$$("source"),n=[],r="";if(!i.length)return!1;for(var a=0;a=2&&r.push("loadeddata"),e.readyState>=3&&r.push("canplay"),e.readyState>=4&&r.push("canplaythrough"),this.ready((function(){r.forEach((function(e){this.trigger(e)}),this)}))}},i.setScrubbing=function(e){this.isScrubbing_=e},i.scrubbing=function(){return this.isScrubbing_},i.setCurrentTime=function(e){try{this.isScrubbing_&&this.el_.fastSeek&&Ee?this.el_.fastSeek(e):this.el_.currentTime=e}catch(e){K(e,"Video is not ready. (Video.js)")}},i.duration=function(){var e=this;if(this.el_.duration===1/0&&le&&pe&&0===this.el_.currentTime){return this.on("timeupdate",(function t(){e.el_.currentTime>0&&(e.el_.duration===1/0&&e.trigger("durationchange"),e.off("timeupdate",t))})),NaN}return this.el_.duration||NaN},i.width=function(){return this.el_.offsetWidth},i.height=function(){return this.el_.offsetHeight},i.proxyWebkitFullscreen_=function(){var e=this;if("webkitDisplayingFullscreen"in this.el_){var t=function(){this.trigger("fullscreenchange",{isFullscreen:!1})},i=function(){"webkitPresentationMode"in this.el_&&"picture-in-picture"!==this.el_.webkitPresentationMode&&(this.one("webkitendfullscreen",t),this.trigger("fullscreenchange",{isFullscreen:!0,nativeIOSFullscreen:!0}))};this.on("webkitbeginfullscreen",i),this.on("dispose",(function(){e.off("webkitbeginfullscreen",i),e.off("webkitendfullscreen",t)}))}},i.supportsFullScreen=function(){if("function"==typeof this.el_.webkitEnterFullScreen){var e=A.default.navigator&&A.default.navigator.userAgent||"";if(/Android/.test(e)||!/Chrome|Mac OS X 10.5/.test(e))return!0}return!1},i.enterFullScreen=function(){var e=this.el_;if(e.paused&&e.networkState<=e.HAVE_METADATA)ii(this.el_.play()),this.setTimeout((function(){e.pause();try{e.webkitEnterFullScreen()}catch(e){this.trigger("fullscreenerror",e)}}),0);else try{e.webkitEnterFullScreen()}catch(e){this.trigger("fullscreenerror",e)}},i.exitFullScreen=function(){this.el_.webkitDisplayingFullscreen?this.el_.webkitExitFullScreen():this.trigger("fullscreenerror",new Error("The video is not fullscreen"))},i.requestPictureInPicture=function(){return this.el_.requestPictureInPicture()},i.src=function(e){if(void 0===e)return this.el_.src;this.setSrc(e)},i.reset=function(){t.resetMediaElement(this.el_)},i.currentSrc=function(){return this.currentSource_?this.currentSource_.src:this.el_.currentSrc},i.setControls=function(e){this.el_.controls=!!e},i.addTextTrack=function(t,i,n){return this.featuresNativeTextTracks?this.el_.addTextTrack(t,i,n):e.prototype.addTextTrack.call(this,t,i,n)},i.createRemoteTextTrack=function(t){if(!this.featuresNativeTextTracks)return e.prototype.createRemoteTextTrack.call(this,t);var i=k.default.createElement("track");return t.kind&&(i.kind=t.kind),t.label&&(i.label=t.label),(t.language||t.srclang)&&(i.srclang=t.language||t.srclang),t.default&&(i.default=t.default),t.id&&(i.id=t.id),t.src&&(i.src=t.src),i},i.addRemoteTextTrack=function(t,i){var n=e.prototype.addRemoteTextTrack.call(this,t,i);return this.featuresNativeTextTracks&&this.el().appendChild(n),n},i.removeRemoteTextTrack=function(t){if(e.prototype.removeRemoteTextTrack.call(this,t),this.featuresNativeTextTracks)for(var i=this.$$("track"),n=i.length;n--;)t!==i[n]&&t!==i[n].track||this.el().removeChild(i[n])},i.getVideoPlaybackQuality=function(){if("function"==typeof this.el().getVideoPlaybackQuality)return this.el().getVideoPlaybackQuality();var e={};return void 0!==this.el().webkitDroppedFrameCount&&void 0!==this.el().webkitDecodedFrameCount&&(e.droppedVideoFrames=this.el().webkitDroppedFrameCount,e.totalVideoFrames=this.el().webkitDecodedFrameCount),A.default.performance&&"function"==typeof A.default.performance.now?e.creationTime=A.default.performance.now():A.default.performance&&A.default.performance.timing&&"number"==typeof A.default.performance.timing.navigationStart&&(e.creationTime=A.default.Date.now()-A.default.performance.timing.navigationStart),e},t}(Ui);Ir(Lr,"TEST_VID",(function(){if(ke()){var e=k.default.createElement("video"),t=k.default.createElement("track");return t.kind="captions",t.srclang="en",t.label="English",e.appendChild(t),e}})),Lr.isSupported=function(){try{Lr.TEST_VID.volume=.5}catch(e){return!1}return!(!Lr.TEST_VID||!Lr.TEST_VID.canPlayType)},Lr.canPlayType=function(e){return Lr.TEST_VID.canPlayType(e)},Lr.canPlaySource=function(e,t){return Lr.canPlayType(e.type)},Lr.canControlVolume=function(){try{var e=Lr.TEST_VID.volume;return Lr.TEST_VID.volume=e/2+.1,e!==Lr.TEST_VID.volume}catch(e){return!1}},Lr.canMuteVolume=function(){try{var e=Lr.TEST_VID.muted;return Lr.TEST_VID.muted=!e,Lr.TEST_VID.muted?Ve(Lr.TEST_VID,"muted","muted"):He(Lr.TEST_VID,"muted"),e!==Lr.TEST_VID.muted}catch(e){return!1}},Lr.canControlPlaybackRate=function(){if(le&&pe&&me<58)return!1;try{var e=Lr.TEST_VID.playbackRate;return Lr.TEST_VID.playbackRate=e/2+.1,e!==Lr.TEST_VID.playbackRate}catch(e){return!1}},Lr.canOverrideAttributes=function(){try{var e=function(){};Object.defineProperty(k.default.createElement("video"),"src",{get:e,set:e}),Object.defineProperty(k.default.createElement("audio"),"src",{get:e,set:e}),Object.defineProperty(k.default.createElement("video"),"innerHTML",{get:e,set:e}),Object.defineProperty(k.default.createElement("audio"),"innerHTML",{get:e,set:e})}catch(e){return!1}return!0},Lr.supportsNativeTextTracks=function(){return Ee||Se&&pe},Lr.supportsNativeVideoTracks=function(){return!(!Lr.TEST_VID||!Lr.TEST_VID.videoTracks)},Lr.supportsNativeAudioTracks=function(){return!(!Lr.TEST_VID||!Lr.TEST_VID.audioTracks)},Lr.Events=["loadstart","suspend","abort","error","emptied","stalled","loadedmetadata","loadeddata","canplay","canplaythrough","playing","waiting","seeking","seeked","ended","durationchange","timeupdate","progress","play","pause","ratechange","resize","volumechange"],[["featuresVolumeControl","canControlVolume"],["featuresMuteControl","canMuteVolume"],["featuresPlaybackRate","canControlPlaybackRate"],["featuresSourceset","canOverrideAttributes"],["featuresNativeTextTracks","supportsNativeTextTracks"],["featuresNativeVideoTracks","supportsNativeVideoTracks"],["featuresNativeAudioTracks","supportsNativeAudioTracks"]].forEach((function(e){var t=e[0],i=e[1];Ir(Lr.prototype,t,(function(){return Lr[i]()}),!0)})),Lr.prototype.movingMediaElementInDOM=!Se,Lr.prototype.featuresFullscreenResize=!0,Lr.prototype.featuresProgressEvents=!0,Lr.prototype.featuresTimeupdateEvents=!0,Lr.patchCanPlayType=function(){he>=4&&!ce&&!pe&&(Sr=Lr.TEST_VID&&Lr.TEST_VID.constructor.prototype.canPlayType,Lr.TEST_VID.constructor.prototype.canPlayType=function(e){return e&&/^application\/(?:x-|vnd\.apple\.)mpegurl/i.test(e)?"maybe":Sr.call(this,e)})},Lr.unpatchCanPlayType=function(){var e=Lr.TEST_VID.constructor.prototype.canPlayType;return Sr&&(Lr.TEST_VID.constructor.prototype.canPlayType=Sr),e},Lr.patchCanPlayType(),Lr.disposeMediaElement=function(e){if(e){for(e.parentNode&&e.parentNode.removeChild(e);e.hasChildNodes();)e.removeChild(e.firstChild);e.removeAttribute("src"),"function"==typeof e.load&&function(){try{e.load()}catch(e){}}()}},Lr.resetMediaElement=function(e){if(e){for(var t=e.querySelectorAll("source"),i=t.length;i--;)e.removeChild(t[i]);e.removeAttribute("src"),"function"==typeof e.load&&function(){try{e.load()}catch(e){}}()}},["muted","defaultMuted","autoplay","controls","loop","playsinline"].forEach((function(e){Lr.prototype[e]=function(){return this.el_[e]||this.el_.hasAttribute(e)}})),["muted","defaultMuted","autoplay","loop","playsinline"].forEach((function(e){Lr.prototype["set"+Ht(e)]=function(t){this.el_[e]=t,t?this.el_.setAttribute(e,e):this.el_.removeAttribute(e)}})),["paused","currentTime","buffered","volume","poster","preload","error","seeking","seekable","ended","playbackRate","defaultPlaybackRate","disablePictureInPicture","played","networkState","readyState","videoWidth","videoHeight","crossOrigin"].forEach((function(e){Lr.prototype[e]=function(){return this.el_[e]}})),["volume","src","poster","preload","playbackRate","defaultPlaybackRate","disablePictureInPicture","crossOrigin"].forEach((function(e){Lr.prototype["set"+Ht(e)]=function(t){this.el_[e]=t}})),["pause","load","play"].forEach((function(e){Lr.prototype[e]=function(){return this.el_[e]()}})),Ui.withSourceHandlers(Lr),Lr.nativeSourceHandler={},Lr.nativeSourceHandler.canPlayType=function(e){try{return Lr.TEST_VID.canPlayType(e)}catch(e){return""}},Lr.nativeSourceHandler.canHandleSource=function(e,t){if(e.type)return Lr.nativeSourceHandler.canPlayType(e.type);if(e.src){var i=Ei(e.src);return Lr.nativeSourceHandler.canPlayType("video/"+i)}return""},Lr.nativeSourceHandler.handleSource=function(e,t,i){t.setSrc(e.src)},Lr.nativeSourceHandler.dispose=function(){},Lr.registerSourceHandler(Lr.nativeSourceHandler),Ui.registerTech("Html5",Lr);var xr=["progress","abort","suspend","emptied","stalled","loadedmetadata","loadeddata","timeupdate","resize","volumechange","texttrackchange"],Dr={canplay:"CanPlay",canplaythrough:"CanPlayThrough",playing:"Playing",seeked:"Seeked"},Rr=["tiny","xsmall","small","medium","large","xlarge","huge"],Or={};Rr.forEach((function(e){var t="x"===e.charAt(0)?"x-"+e.substring(1):e;Or[e]="vjs-layout-"+t}));var Ur={tiny:210,xsmall:320,small:425,medium:768,large:1440,xlarge:2560,huge:1/0},Mr=function(e){function t(i,n,r){var a;if(i.id=i.id||n.id||"vjs_video_"+ct(),(n=Z(t.getTagSettings(i),n)).initChildren=!1,n.createEl=!1,n.evented=!1,n.reportTouchActivity=!1,!n.language)if("function"==typeof i.closest){var s=i.closest("[lang]");s&&s.getAttribute&&(n.language=s.getAttribute("lang"))}else for(var o=i;o&&1===o.nodeType;){if(Ne(o).hasOwnProperty("lang")){n.language=o.getAttribute("lang");break}o=o.parentNode}if((a=e.call(this,null,n,r)||this).boundDocumentFullscreenChange_=function(e){return a.documentFullscreenChange_(e)},a.boundFullWindowOnEscKey_=function(e){return a.fullWindowOnEscKey(e)},a.boundUpdateStyleEl_=function(e){return a.updateStyleEl_(e)},a.boundApplyInitTime_=function(e){return a.applyInitTime_(e)},a.boundUpdateCurrentBreakpoint_=function(e){return a.updateCurrentBreakpoint_(e)},a.boundHandleTechClick_=function(e){return a.handleTechClick_(e)},a.boundHandleTechDoubleClick_=function(e){return a.handleTechDoubleClick_(e)},a.boundHandleTechTouchStart_=function(e){return a.handleTechTouchStart_(e)},a.boundHandleTechTouchMove_=function(e){return a.handleTechTouchMove_(e)},a.boundHandleTechTouchEnd_=function(e){return a.handleTechTouchEnd_(e)},a.boundHandleTechTap_=function(e){return a.handleTechTap_(e)},a.isFullscreen_=!1,a.log=X(a.id_),a.fsApi_=H,a.isPosterFromTech_=!1,a.queuedCallbacks_=[],a.isReady_=!1,a.hasStarted_=!1,a.userActive_=!1,a.debugEnabled_=!1,!a.options_||!a.options_.techOrder||!a.options_.techOrder.length)throw new Error("No techOrder specified. Did you overwrite videojs.options instead of just changing the properties you want to override?");if(a.tag=i,a.tagAttributes=i&&Ne(i),a.language(a.options_.language),n.languages){var u={};Object.getOwnPropertyNames(n.languages).forEach((function(e){u[e.toLowerCase()]=n.languages[e]})),a.languages_=u}else a.languages_=t.prototype.options_.languages;a.resetCache_(),a.poster_=n.poster||"",a.controls_=!!n.controls,i.controls=!1,i.removeAttribute("controls"),a.changingSrc_=!1,a.playCallbacks_=[],a.playTerminatedQueue_=[],i.hasAttribute("autoplay")?a.autoplay(!0):a.autoplay(a.options_.autoplay),n.plugins&&Object.keys(n.plugins).forEach((function(e){if("function"!=typeof a[e])throw new Error('plugin "'+e+'" does not exist')})),a.scrubbing_=!1,a.el_=a.createEl(),Bt(I.default(a),{eventBusKey:"el_"}),a.fsApi_.requestFullscreen&&(yt(k.default,a.fsApi_.fullscreenchange,a.boundDocumentFullscreenChange_),a.on(a.fsApi_.fullscreenchange,a.boundDocumentFullscreenChange_)),a.fluid_&&a.on(["playerreset","resize"],a.boundUpdateStyleEl_);var l=zt(a.options_);n.plugins&&Object.keys(n.plugins).forEach((function(e){a[e](n.plugins[e])})),n.debug&&a.debug(!0),a.options_.playerOptions=l,a.middleware_=[],a.playbackRates(n.playbackRates),a.initChildren(),a.isAudio("audio"===i.nodeName.toLowerCase()),a.controls()?a.addClass("vjs-controls-enabled"):a.addClass("vjs-controls-disabled"),a.el_.setAttribute("role","region"),a.isAudio()?a.el_.setAttribute("aria-label",a.localize("Audio Player")):a.el_.setAttribute("aria-label",a.localize("Video Player")),a.isAudio()&&a.addClass("vjs-audio"),a.flexNotSupported_()&&a.addClass("vjs-no-flex"),ye&&a.addClass("vjs-touch-enabled"),Se||a.addClass("vjs-workinghover"),t.players[a.id_]=I.default(a);var h="7.15.4".split(".")[0];return a.addClass("vjs-v"+h),a.userActive(!0),a.reportUserActivity(),a.one("play",(function(e){return a.listenForUserActivity_(e)})),a.on("stageclick",(function(e){return a.handleStageClick_(e)})),a.on("keydown",(function(e){return a.handleKeyDown(e)})),a.on("languagechange",(function(e){return a.handleLanguagechange(e)})),a.breakpoints(a.options_.breakpoints),a.responsive(a.options_.responsive),a}L.default(t,e);var i=t.prototype;return i.dispose=function(){var i=this;this.trigger("dispose"),this.off("dispose"),bt(k.default,this.fsApi_.fullscreenchange,this.boundDocumentFullscreenChange_),bt(k.default,"keydown",this.boundFullWindowOnEscKey_),this.styleEl_&&this.styleEl_.parentNode&&(this.styleEl_.parentNode.removeChild(this.styleEl_),this.styleEl_=null),t.players[this.id_]=null,this.tag&&this.tag.player&&(this.tag.player=null),this.el_&&this.el_.player&&(this.el_.player=null),this.tech_&&(this.tech_.dispose(),this.isPosterFromTech_=!1,this.poster_=""),this.playerElIngest_&&(this.playerElIngest_=null),this.tag&&(this.tag=null),Fi[this.id()]=null,Oi.names.forEach((function(e){var t=Oi[e],n=i[t.getterName]();n&&n.off&&n.off()})),e.prototype.dispose.call(this)},i.createEl=function(){var t,i=this.tag,n=this.playerElIngest_=i.parentNode&&i.parentNode.hasAttribute&&i.parentNode.hasAttribute("data-vjs-player"),r="video-js"===this.tag.tagName.toLowerCase();n?t=this.el_=i.parentNode:r||(t=this.el_=e.prototype.createEl.call(this,"div"));var a=Ne(i);if(r){for(t=this.el_=i,i=this.tag=k.default.createElement("video");t.children.length;)i.appendChild(t.firstChild);Oe(t,"video-js")||Ue(t,"video-js"),t.appendChild(i),n=this.playerElIngest_=t,Object.keys(t).forEach((function(e){try{i[e]=t[e]}catch(e){}}))}if(i.setAttribute("tabindex","-1"),a.tabindex="-1",(ge||pe&&ve)&&(i.setAttribute("role","application"),a.role="application"),i.removeAttribute("width"),i.removeAttribute("height"),"width"in a&&delete a.width,"height"in a&&delete a.height,Object.getOwnPropertyNames(a).forEach((function(e){r&&"class"===e||t.setAttribute(e,a[e]),r&&i.setAttribute(e,a[e])})),i.playerId=i.id,i.id+="_html5_api",i.className="vjs-tech",i.player=t.player=this,this.addClass("vjs-paused"),!0!==A.default.VIDEOJS_NO_DYNAMIC_STYLE){this.styleEl_=lt("vjs-styles-dimensions");var s=tt(".vjs-styles-defaults"),o=tt("head");o.insertBefore(this.styleEl_,s?s.nextSibling:o.firstChild)}this.fill_=!1,this.fluid_=!1,this.width(this.options_.width),this.height(this.options_.height),this.fill(this.options_.fill),this.fluid(this.options_.fluid),this.aspectRatio(this.options_.aspectRatio),this.crossOrigin(this.options_.crossOrigin||this.options_.crossorigin);for(var u=i.getElementsByTagName("a"),l=0;l0?this.videoWidth()+":"+this.videoHeight():"16:9").split(":"),r=n[1]/n[0];e=void 0!==this.width_?this.width_:void 0!==this.height_?this.height_/r:this.videoWidth()||300,t=void 0!==this.height_?this.height_:e*r,i=/^[^a-zA-Z]/.test(this.id())?"dimensions-"+this.id():this.id()+"-dimensions",this.addClass(i),ht(this.styleEl_,"\n ."+i+" {\n width: "+e+"px;\n height: "+t+"px;\n }\n\n ."+i+".vjs-fluid {\n padding-top: "+100*r+"%;\n }\n ")}else{var a="number"==typeof this.width_?this.width_:this.options_.width,s="number"==typeof this.height_?this.height_:this.options_.height,o=this.tech_&&this.tech_.el();o&&(a>=0&&(o.width=a),s>=0&&(o.height=s))}},i.loadTech_=function(e,t){var i=this;this.tech_&&this.unloadTech_();var n=Ht(e),r=e.charAt(0).toLowerCase()+e.slice(1);"Html5"!==n&&this.tag&&(Ui.getTech("Html5").disposeMediaElement(this.tag),this.tag.player=null,this.tag=null),this.techName_=n,this.isReady_=!1;var a=this.autoplay();("string"==typeof this.autoplay()||!0===this.autoplay()&&this.options_.normalizeAutoplay)&&(a=!1);var s={source:t,autoplay:a,nativeControlsForTouch:this.options_.nativeControlsForTouch,playerId:this.id(),techId:this.id()+"_"+r+"_api",playsinline:this.options_.playsinline,preload:this.options_.preload,loop:this.options_.loop,disablePictureInPicture:this.options_.disablePictureInPicture,muted:this.options_.muted,poster:this.poster(),language:this.language(),playerElIngest:this.playerElIngest_||!1,"vtt.js":this.options_["vtt.js"],canOverridePoster:!!this.options_.techCanOverridePoster,enableSourceset:this.options_.enableSourceset,Promise:this.options_.Promise};Oi.names.forEach((function(e){var t=Oi[e];s[t.getterName]=i[t.privateName]})),Z(s,this.options_[n]),Z(s,this.options_[r]),Z(s,this.options_[e.toLowerCase()]),this.tag&&(s.tag=this.tag),t&&t.src===this.cache_.src&&this.cache_.currentTime>0&&(s.startTime=this.cache_.currentTime);var o=Ui.getTech(e);if(!o)throw new Error("No Tech named '"+n+"' exists! '"+n+"' should be registered using videojs.registerTech()'");this.tech_=new o(s),this.tech_.ready(At(this,this.handleTechReady_),!0),ai(this.textTracksJson_||[],this.tech_),xr.forEach((function(e){i.on(i.tech_,e,(function(t){return i["handleTech"+Ht(e)+"_"](t)}))})),Object.keys(Dr).forEach((function(e){i.on(i.tech_,e,(function(t){0===i.tech_.playbackRate()&&i.tech_.seeking()?i.queuedCallbacks_.push({callback:i["handleTech"+Dr[e]+"_"].bind(i),event:t}):i["handleTech"+Dr[e]+"_"](t)}))})),this.on(this.tech_,"loadstart",(function(e){return i.handleTechLoadStart_(e)})),this.on(this.tech_,"sourceset",(function(e){return i.handleTechSourceset_(e)})),this.on(this.tech_,"waiting",(function(e){return i.handleTechWaiting_(e)})),this.on(this.tech_,"ended",(function(e){return i.handleTechEnded_(e)})),this.on(this.tech_,"seeking",(function(e){return i.handleTechSeeking_(e)})),this.on(this.tech_,"play",(function(e){return i.handleTechPlay_(e)})),this.on(this.tech_,"firstplay",(function(e){return i.handleTechFirstPlay_(e)})),this.on(this.tech_,"pause",(function(e){return i.handleTechPause_(e)})),this.on(this.tech_,"durationchange",(function(e){return i.handleTechDurationChange_(e)})),this.on(this.tech_,"fullscreenchange",(function(e,t){return i.handleTechFullscreenChange_(e,t)})),this.on(this.tech_,"fullscreenerror",(function(e,t){return i.handleTechFullscreenError_(e,t)})),this.on(this.tech_,"enterpictureinpicture",(function(e){return i.handleTechEnterPictureInPicture_(e)})),this.on(this.tech_,"leavepictureinpicture",(function(e){return i.handleTechLeavePictureInPicture_(e)})),this.on(this.tech_,"error",(function(e){return i.handleTechError_(e)})),this.on(this.tech_,"posterchange",(function(e){return i.handleTechPosterChange_(e)})),this.on(this.tech_,"textdata",(function(e){return i.handleTechTextData_(e)})),this.on(this.tech_,"ratechange",(function(e){return i.handleTechRateChange_(e)})),this.on(this.tech_,"loadedmetadata",this.boundUpdateStyleEl_),this.usingNativeControls(this.techGet_("controls")),this.controls()&&!this.usingNativeControls()&&this.addTechControlsListeners_(),this.tech_.el().parentNode===this.el()||"Html5"===n&&this.tag||Re(this.tech_.el(),this.el()),this.tag&&(this.tag.player=null,this.tag=null)},i.unloadTech_=function(){var e=this;Oi.names.forEach((function(t){var i=Oi[t];e[i.privateName]=e[i.getterName]()})),this.textTracksJson_=ri(this.tech_),this.isReady_=!1,this.tech_.dispose(),this.tech_=!1,this.isPosterFromTech_&&(this.poster_="",this.trigger("posterchange")),this.isPosterFromTech_=!1},i.tech=function(e){return void 0===e&&K.warn("Using the tech directly can be dangerous. I hope you know what you're doing.\nSee https://github.com/videojs/video.js/issues/2617 for more info.\n"),this.tech_},i.addTechControlsListeners_=function(){this.removeTechControlsListeners_(),this.on(this.tech_,"click",this.boundHandleTechClick_),this.on(this.tech_,"dblclick",this.boundHandleTechDoubleClick_),this.on(this.tech_,"touchstart",this.boundHandleTechTouchStart_),this.on(this.tech_,"touchmove",this.boundHandleTechTouchMove_),this.on(this.tech_,"touchend",this.boundHandleTechTouchEnd_),this.on(this.tech_,"tap",this.boundHandleTechTap_)},i.removeTechControlsListeners_=function(){this.off(this.tech_,"tap",this.boundHandleTechTap_),this.off(this.tech_,"touchstart",this.boundHandleTechTouchStart_),this.off(this.tech_,"touchmove",this.boundHandleTechTouchMove_),this.off(this.tech_,"touchend",this.boundHandleTechTouchEnd_),this.off(this.tech_,"click",this.boundHandleTechClick_),this.off(this.tech_,"dblclick",this.boundHandleTechDoubleClick_)},i.handleTechReady_=function(){this.triggerReady(),this.cache_.volume&&this.techCall_("setVolume",this.cache_.volume),this.handleTechPosterChange_(),this.handleTechDurationChange_()},i.handleTechLoadStart_=function(){this.removeClass("vjs-ended"),this.removeClass("vjs-seeking"),this.error(null),this.handleTechDurationChange_(),this.paused()?(this.hasStarted(!1),this.trigger("loadstart")):(this.trigger("loadstart"),this.trigger("firstplay")),this.manualAutoplay_(!0===this.autoplay()&&this.options_.normalizeAutoplay?"play":this.autoplay())},i.manualAutoplay_=function(e){var t=this;if(this.tech_&&"string"==typeof e){var i,n=function(){var e=t.muted();t.muted(!0);var i=function(){t.muted(e)};t.playTerminatedQueue_.push(i);var n=t.play();if(ti(n))return n.catch((function(e){throw i(),new Error("Rejection at manualAutoplay. Restoring muted value. "+(e||""))}))};if("any"!==e||this.muted()?i="muted"!==e||this.muted()?this.play():n():ti(i=this.play())&&(i=i.catch(n)),ti(i))return i.then((function(){t.trigger({type:"autoplay-success",autoplay:e})})).catch((function(){t.trigger({type:"autoplay-failure",autoplay:e})}))}},i.updateSourceCaches_=function(e){void 0===e&&(e="");var t=e,i="";"string"!=typeof t&&(t=e.src,i=e.type),this.cache_.source=this.cache_.source||{},this.cache_.sources=this.cache_.sources||[],t&&!i&&(i=function(e,t){if(!t)return"";if(e.cache_.source.src===t&&e.cache_.source.type)return e.cache_.source.type;var i=e.cache_.sources.filter((function(e){return e.src===t}));if(i.length)return i[0].type;for(var n=e.$$("source"),r=0;r0&&0===this.cache_.lastPlaybackRate&&(this.queuedCallbacks_.forEach((function(e){return e.callback(e.event)})),this.queuedCallbacks_=[]),this.cache_.lastPlaybackRate=this.tech_.playbackRate(),this.trigger("ratechange")},i.handleTechWaiting_=function(){var e=this;this.addClass("vjs-waiting"),this.trigger("waiting");var t=this.currentTime();this.on("timeupdate",(function i(){t!==e.currentTime()&&(e.removeClass("vjs-waiting"),e.off("timeupdate",i))}))},i.handleTechCanPlay_=function(){this.removeClass("vjs-waiting"),this.trigger("canplay")},i.handleTechCanPlayThrough_=function(){this.removeClass("vjs-waiting"),this.trigger("canplaythrough")},i.handleTechPlaying_=function(){this.removeClass("vjs-waiting"),this.trigger("playing")},i.handleTechSeeking_=function(){this.addClass("vjs-seeking"),this.trigger("seeking")},i.handleTechSeeked_=function(){this.removeClass("vjs-seeking"),this.removeClass("vjs-ended"),this.trigger("seeked")},i.handleTechFirstPlay_=function(){this.options_.starttime&&(K.warn("Passing the `starttime` option to the player will be deprecated in 6.0"),this.currentTime(this.options_.starttime)),this.addClass("vjs-has-started"),this.trigger("firstplay")},i.handleTechPause_=function(){this.removeClass("vjs-playing"),this.addClass("vjs-paused"),this.trigger("pause")},i.handleTechEnded_=function(){this.addClass("vjs-ended"),this.removeClass("vjs-waiting"),this.options_.loop?(this.currentTime(0),this.play()):this.paused()||this.pause(),this.trigger("ended")},i.handleTechDurationChange_=function(){this.duration(this.techGet_("duration"))},i.handleTechClick_=function(e){this.controls_&&(this.paused()?ii(this.play()):this.pause())},i.handleTechDoubleClick_=function(e){this.controls_&&(Array.prototype.some.call(this.$$(".vjs-control-bar, .vjs-modal-dialog"),(function(t){return t.contains(e.target)}))||void 0!==this.options_&&void 0!==this.options_.userActions&&void 0!==this.options_.userActions.doubleClick&&!1===this.options_.userActions.doubleClick||(void 0!==this.options_&&void 0!==this.options_.userActions&&"function"==typeof this.options_.userActions.doubleClick?this.options_.userActions.doubleClick.call(this,e):this.isFullscreen()?this.exitFullscreen():this.requestFullscreen()))},i.handleTechTap_=function(){this.userActive(!this.userActive())},i.handleTechTouchStart_=function(){this.userWasActive=this.userActive()},i.handleTechTouchMove_=function(){this.userWasActive&&this.reportUserActivity()},i.handleTechTouchEnd_=function(e){e.cancelable&&e.preventDefault()},i.handleStageClick_=function(){this.reportUserActivity()},i.toggleFullscreenClass_=function(){this.isFullscreen()?this.addClass("vjs-fullscreen"):this.removeClass("vjs-fullscreen")},i.documentFullscreenChange_=function(e){var t=e.target.player;if(!t||t===this){var i=this.el(),n=k.default[this.fsApi_.fullscreenElement]===i;!n&&i.matches?n=i.matches(":"+this.fsApi_.fullscreen):!n&&i.msMatchesSelector&&(n=i.msMatchesSelector(":"+this.fsApi_.fullscreen)),this.isFullscreen(n)}},i.handleTechFullscreenChange_=function(e,t){t&&(t.nativeIOSFullscreen&&this.toggleClass("vjs-ios-native-fs"),this.isFullscreen(t.isFullscreen))},i.handleTechFullscreenError_=function(e,t){this.trigger("fullscreenerror",t)},i.togglePictureInPictureClass_=function(){this.isInPictureInPicture()?this.addClass("vjs-picture-in-picture"):this.removeClass("vjs-picture-in-picture")},i.handleTechEnterPictureInPicture_=function(e){this.isInPictureInPicture(!0)},i.handleTechLeavePictureInPicture_=function(e){this.isInPictureInPicture(!1)},i.handleTechError_=function(){var e=this.tech_.error();this.error(e)},i.handleTechTextData_=function(){var e=null;arguments.length>1&&(e=arguments[1]),this.trigger("textdata",e)},i.getCache=function(){return this.cache_},i.resetCache_=function(){this.cache_={currentTime:0,initTime:0,inactivityTimeout:this.options_.inactivityTimeout,duration:NaN,lastVolume:1,lastPlaybackRate:this.defaultPlaybackRate(),media:null,src:"",source:{},sources:[],playbackRates:[],volume:1}},i.techCall_=function(e,t){this.ready((function(){if(e in Hi)return function(e,t,i,n){return t[i](e.reduce(Gi(i),n))}(this.middleware_,this.tech_,e,t);if(e in zi)return ji(this.middleware_,this.tech_,e,t);try{this.tech_&&this.tech_[e](t)}catch(e){throw K(e),e}}),!0)},i.techGet_=function(e){if(this.tech_&&this.tech_.isReady_){if(e in Vi)return function(e,t,i){return e.reduceRight(Gi(i),t[i]())}(this.middleware_,this.tech_,e);if(e in zi)return ji(this.middleware_,this.tech_,e);try{return this.tech_[e]()}catch(t){if(void 0===this.tech_[e])throw K("Video.js: "+e+" method not defined for "+this.techName_+" playback technology.",t),t;if("TypeError"===t.name)throw K("Video.js: "+e+" unavailable on "+this.techName_+" playback technology element.",t),this.tech_.isReady_=!1,t;throw K(t),t}}},i.play=function(){var e=this,t=this.options_.Promise||A.default.Promise;return t?new t((function(t){e.play_(t)})):this.play_()},i.play_=function(e){var t=this;void 0===e&&(e=ii),this.playCallbacks_.push(e);var i=Boolean(!this.changingSrc_&&(this.src()||this.currentSrc()));if(this.waitToPlay_&&(this.off(["ready","loadstart"],this.waitToPlay_),this.waitToPlay_=null),!this.isReady_||!i)return this.waitToPlay_=function(e){t.play_()},this.one(["ready","loadstart"],this.waitToPlay_),void(i||!Ee&&!Se||this.load());var n=this.techGet_("play");null===n?this.runPlayTerminatedQueue_():this.runPlayCallbacks_(n)},i.runPlayTerminatedQueue_=function(){var e=this.playTerminatedQueue_.slice(0);this.playTerminatedQueue_=[],e.forEach((function(e){e()}))},i.runPlayCallbacks_=function(e){var t=this.playCallbacks_.slice(0);this.playCallbacks_=[],this.playTerminatedQueue_=[],t.forEach((function(t){t(e)}))},i.pause=function(){this.techCall_("pause")},i.paused=function(){return!1!==this.techGet_("paused")},i.played=function(){return this.techGet_("played")||$t(0,0)},i.scrubbing=function(e){if(void 0===e)return this.scrubbing_;this.scrubbing_=!!e,this.techCall_("setScrubbing",this.scrubbing_),e?this.addClass("vjs-scrubbing"):this.removeClass("vjs-scrubbing")},i.currentTime=function(e){return void 0!==e?(e<0&&(e=0),this.isReady_&&!this.changingSrc_&&this.tech_&&this.tech_.isReady_?(this.techCall_("setCurrentTime",e),void(this.cache_.initTime=0)):(this.cache_.initTime=e,this.off("canplay",this.boundApplyInitTime_),void this.one("canplay",this.boundApplyInitTime_))):(this.cache_.currentTime=this.techGet_("currentTime")||0,this.cache_.currentTime)},i.applyInitTime_=function(){this.currentTime(this.cache_.initTime)},i.duration=function(e){if(void 0===e)return void 0!==this.cache_.duration?this.cache_.duration:NaN;(e=parseFloat(e))<0&&(e=1/0),e!==this.cache_.duration&&(this.cache_.duration=e,e===1/0?this.addClass("vjs-live"):this.removeClass("vjs-live"),isNaN(e)||this.trigger("durationchange"))},i.remainingTime=function(){return this.duration()-this.currentTime()},i.remainingTimeDisplay=function(){return Math.floor(this.duration())-Math.floor(this.currentTime())},i.buffered=function(){var e=this.techGet_("buffered");return e&&e.length||(e=$t(0,0)),e},i.bufferedPercent=function(){return Jt(this.buffered(),this.duration())},i.bufferedEnd=function(){var e=this.buffered(),t=this.duration(),i=e.end(e.length-1);return i>t&&(i=t),i},i.volume=function(e){var t;return void 0!==e?(t=Math.max(0,Math.min(1,parseFloat(e))),this.cache_.volume=t,this.techCall_("setVolume",t),void(t>0&&this.lastVolume_(t))):(t=parseFloat(this.techGet_("volume")),isNaN(t)?1:t)},i.muted=function(e){if(void 0===e)return this.techGet_("muted")||!1;this.techCall_("setMuted",e)},i.defaultMuted=function(e){return void 0!==e?this.techCall_("setDefaultMuted",e):this.techGet_("defaultMuted")||!1},i.lastVolume_=function(e){if(void 0===e||0===e)return this.cache_.lastVolume;this.cache_.lastVolume=e},i.supportsFullScreen=function(){return this.techGet_("supportsFullScreen")||!1},i.isFullscreen=function(e){if(void 0!==e){var t=this.isFullscreen_;return this.isFullscreen_=Boolean(e),this.isFullscreen_!==t&&this.fsApi_.prefixed&&this.trigger("fullscreenchange"),void this.toggleFullscreenClass_()}return this.isFullscreen_},i.requestFullscreen=function(e){var t=this.options_.Promise||A.default.Promise;if(t){var i=this;return new t((function(t,n){function r(){i.off("fullscreenerror",s),i.off("fullscreenchange",a)}function a(){r(),t()}function s(e,t){r(),n(t)}i.one("fullscreenchange",a),i.one("fullscreenerror",s);var o=i.requestFullscreenHelper_(e);o&&(o.then(r,r),o.then(t,n))}))}return this.requestFullscreenHelper_()},i.requestFullscreenHelper_=function(e){var t,i=this;if(this.fsApi_.prefixed||(t=this.options_.fullscreen&&this.options_.fullscreen.options||{},void 0!==e&&(t=e)),this.fsApi_.requestFullscreen){var n=this.el_[this.fsApi_.requestFullscreen](t);return n&&n.then((function(){return i.isFullscreen(!0)}),(function(){return i.isFullscreen(!1)})),n}this.tech_.supportsFullScreen()&&!0==!this.options_.preferFullWindow?this.techCall_("enterFullScreen"):this.enterFullWindow()},i.exitFullscreen=function(){var e=this.options_.Promise||A.default.Promise;if(e){var t=this;return new e((function(e,i){function n(){t.off("fullscreenerror",a),t.off("fullscreenchange",r)}function r(){n(),e()}function a(e,t){n(),i(t)}t.one("fullscreenchange",r),t.one("fullscreenerror",a);var s=t.exitFullscreenHelper_();s&&(s.then(n,n),s.then(e,i))}))}return this.exitFullscreenHelper_()},i.exitFullscreenHelper_=function(){var e=this;if(this.fsApi_.requestFullscreen){var t=k.default[this.fsApi_.exitFullscreen]();return t&&ii(t.then((function(){return e.isFullscreen(!1)}))),t}this.tech_.supportsFullScreen()&&!0==!this.options_.preferFullWindow?this.techCall_("exitFullScreen"):this.exitFullWindow()},i.enterFullWindow=function(){this.isFullscreen(!0),this.isFullWindow=!0,this.docOrigOverflow=k.default.documentElement.style.overflow,yt(k.default,"keydown",this.boundFullWindowOnEscKey_),k.default.documentElement.style.overflow="hidden",Ue(k.default.body,"vjs-full-window"),this.trigger("enterFullWindow")},i.fullWindowOnEscKey=function(e){D.default.isEventKey(e,"Esc")&&!0===this.isFullscreen()&&(this.isFullWindow?this.exitFullWindow():this.exitFullscreen())},i.exitFullWindow=function(){this.isFullscreen(!1),this.isFullWindow=!1,bt(k.default,"keydown",this.boundFullWindowOnEscKey_),k.default.documentElement.style.overflow=this.docOrigOverflow,Me(k.default.body,"vjs-full-window"),this.trigger("exitFullWindow")},i.disablePictureInPicture=function(e){if(void 0===e)return this.techGet_("disablePictureInPicture");this.techCall_("setDisablePictureInPicture",e),this.options_.disablePictureInPicture=e,this.trigger("disablepictureinpicturechanged")},i.isInPictureInPicture=function(e){return void 0!==e?(this.isInPictureInPicture_=!!e,void this.togglePictureInPictureClass_()):!!this.isInPictureInPicture_},i.requestPictureInPicture=function(){if("pictureInPictureEnabled"in k.default&&!1===this.disablePictureInPicture())return this.techGet_("requestPictureInPicture")},i.exitPictureInPicture=function(){if("pictureInPictureEnabled"in k.default)return k.default.exitPictureInPicture()},i.handleKeyDown=function(e){var t=this.options_.userActions;if(t&&t.hotkeys){(function(e){var t=e.tagName.toLowerCase();if(e.isContentEditable)return!0;if("input"===t)return-1===["button","checkbox","hidden","radio","reset","submit"].indexOf(e.type);return-1!==["textarea"].indexOf(t)})(this.el_.ownerDocument.activeElement)||("function"==typeof t.hotkeys?t.hotkeys.call(this,e):this.handleHotkeys(e))}},i.handleHotkeys=function(e){var t=this.options_.userActions?this.options_.userActions.hotkeys:{},i=t.fullscreenKey,n=void 0===i?function(e){return D.default.isEventKey(e,"f")}:i,r=t.muteKey,a=void 0===r?function(e){return D.default.isEventKey(e,"m")}:r,s=t.playPauseKey,o=void 0===s?function(e){return D.default.isEventKey(e,"k")||D.default.isEventKey(e,"Space")}:s;if(n.call(this,e)){e.preventDefault(),e.stopPropagation();var u=Kt.getComponent("FullscreenToggle");!1!==k.default[this.fsApi_.fullscreenEnabled]&&u.prototype.handleClick.call(this,e)}else if(a.call(this,e)){e.preventDefault(),e.stopPropagation(),Kt.getComponent("MuteToggle").prototype.handleClick.call(this,e)}else if(o.call(this,e)){e.preventDefault(),e.stopPropagation(),Kt.getComponent("PlayToggle").prototype.handleClick.call(this,e)}},i.canPlayType=function(e){for(var t,i=0,n=this.options_.techOrder;i1?i.handleSrc_(n.slice(1)):(i.changingSrc_=!1,i.setTimeout((function(){this.error({code:4,message:this.localize(this.options_.notSupportedMessage)})}),0),void i.triggerReady());a=r,s=i.tech_,a.forEach((function(e){return e.setTech&&e.setTech(s)}))})),this.options_.retryOnError&&n.length>1){var r=function(){i.error(null),i.handleSrc_(n.slice(1),!0)},a=function(){i.off("error",r)};this.one("error",r),this.one("playing",a),this.resetRetryOnError_=function(){i.off("error",r),i.off("playing",a)}}}else this.setTimeout((function(){this.error({code:4,message:this.localize(this.options_.notSupportedMessage)})}),0)},i.src=function(e){return this.handleSrc_(e,!1)},i.src_=function(e){var t,i,n=this,r=this.selectSource([e]);return!r||(t=r.tech,i=this.techName_,Ht(t)!==Ht(i)?(this.changingSrc_=!0,this.loadTech_(r.tech,r.source),this.tech_.ready((function(){n.changingSrc_=!1})),!1):(this.ready((function(){this.tech_.constructor.prototype.hasOwnProperty("setSource")?this.techCall_("setSource",e):this.techCall_("src",e.src),this.changingSrc_=!1}),!0),!1))},i.load=function(){this.techCall_("load")},i.reset=function(){var e=this,t=this.options_.Promise||A.default.Promise;this.paused()||!t?this.doReset_():ii(this.play().then((function(){return e.doReset_()})))},i.doReset_=function(){this.tech_&&this.tech_.clearTracks("text"),this.resetCache_(),this.poster(""),this.loadTech_(this.options_.techOrder[0],null),this.techCall_("reset"),this.resetControlBarUI_(),Lt(this)&&this.trigger("playerreset")},i.resetControlBarUI_=function(){this.resetProgressBar_(),this.resetPlaybackRate_(),this.resetVolumeBar_()},i.resetProgressBar_=function(){this.currentTime(0);var e=this.controlBar,t=e.durationDisplay,i=e.remainingTimeDisplay;t&&t.updateContent(),i&&i.updateContent()},i.resetPlaybackRate_=function(){this.playbackRate(this.defaultPlaybackRate()),this.handleTechRateChange_()},i.resetVolumeBar_=function(){this.volume(1),this.trigger("volumechange")},i.currentSources=function(){var e=this.currentSource(),t=[];return 0!==Object.keys(e).length&&t.push(e),this.cache_.sources||t},i.currentSource=function(){return this.cache_.source||{}},i.currentSrc=function(){return this.currentSource()&&this.currentSource().src||""},i.currentType=function(){return this.currentSource()&&this.currentSource().type||""},i.preload=function(e){return void 0!==e?(this.techCall_("setPreload",e),void(this.options_.preload=e)):this.techGet_("preload")},i.autoplay=function(e){if(void 0===e)return this.options_.autoplay||!1;var t;"string"==typeof e&&/(any|play|muted)/.test(e)||!0===e&&this.options_.normalizeAutoplay?(this.options_.autoplay=e,this.manualAutoplay_("string"==typeof e?e:"play"),t=!1):this.options_.autoplay=!!e,t=void 0===t?this.options_.autoplay:t,this.tech_&&this.techCall_("setAutoplay",t)},i.playsinline=function(e){return void 0!==e?(this.techCall_("setPlaysinline",e),this.options_.playsinline=e,this):this.techGet_("playsinline")},i.loop=function(e){return void 0!==e?(this.techCall_("setLoop",e),void(this.options_.loop=e)):this.techGet_("loop")},i.poster=function(e){if(void 0===e)return this.poster_;e||(e=""),e!==this.poster_&&(this.poster_=e,this.techCall_("setPoster",e),this.isPosterFromTech_=!1,this.trigger("posterchange"))},i.handleTechPosterChange_=function(){if((!this.poster_||this.options_.techCanOverridePoster)&&this.tech_&&this.tech_.poster){var e=this.tech_.poster()||"";e!==this.poster_&&(this.poster_=e,this.isPosterFromTech_=!0,this.trigger("posterchange"))}},i.controls=function(e){if(void 0===e)return!!this.controls_;e=!!e,this.controls_!==e&&(this.controls_=e,this.usingNativeControls()&&this.techCall_("setControls",e),this.controls_?(this.removeClass("vjs-controls-disabled"),this.addClass("vjs-controls-enabled"),this.trigger("controlsenabled"),this.usingNativeControls()||this.addTechControlsListeners_()):(this.removeClass("vjs-controls-enabled"),this.addClass("vjs-controls-disabled"),this.trigger("controlsdisabled"),this.usingNativeControls()||this.removeTechControlsListeners_()))},i.usingNativeControls=function(e){if(void 0===e)return!!this.usingNativeControls_;e=!!e,this.usingNativeControls_!==e&&(this.usingNativeControls_=e,this.usingNativeControls_?(this.addClass("vjs-using-native-controls"),this.trigger("usingnativecontrols")):(this.removeClass("vjs-using-native-controls"),this.trigger("usingcustomcontrols")))},i.error=function(e){var t=this;if(void 0===e)return this.error_||null;if(j("beforeerror").forEach((function(i){var n=i(t,e);ee(n)&&!Array.isArray(n)||"string"==typeof n||"number"==typeof n||null===n?e=n:t.log.error("please return a value that MediaError expects in beforeerror hooks")})),this.options_.suppressNotSupportedError&&e&&4===e.code){var i=function(){this.error(e)};return this.options_.suppressNotSupportedError=!1,this.any(["click","touchstart"],i),void this.one("loadstart",(function(){this.off(["click","touchstart"],i)}))}if(null===e)return this.error_=e,this.removeClass("vjs-error"),void(this.errorDisplay&&this.errorDisplay.close());this.error_=new Zt(e),this.addClass("vjs-error"),K.error("(CODE:"+this.error_.code+" "+Zt.errorTypes[this.error_.code]+")",this.error_.message,this.error_),this.trigger("error"),j("error").forEach((function(e){return e(t,t.error_)}))},i.reportUserActivity=function(e){this.userActivity_=!0},i.userActive=function(e){if(void 0===e)return this.userActive_;if((e=!!e)!==this.userActive_){if(this.userActive_=e,this.userActive_)return this.userActivity_=!0,this.removeClass("vjs-user-inactive"),this.addClass("vjs-user-active"),void this.trigger("useractive");this.tech_&&this.tech_.one("mousemove",(function(e){e.stopPropagation(),e.preventDefault()})),this.userActivity_=!1,this.removeClass("vjs-user-active"),this.addClass("vjs-user-inactive"),this.trigger("userinactive")}},i.listenForUserActivity_=function(){var e,t,i,n=At(this,this.reportUserActivity),r=function(t){n(),this.clearInterval(e)};this.on("mousedown",(function(){n(),this.clearInterval(e),e=this.setInterval(n,250)})),this.on("mousemove",(function(e){e.screenX===t&&e.screenY===i||(t=e.screenX,i=e.screenY,n())})),this.on("mouseup",r),this.on("mouseleave",r);var a,s=this.getChild("controlBar");!s||Se||le||(s.on("mouseenter",(function(e){0!==this.player().options_.inactivityTimeout&&(this.player().cache_.inactivityTimeout=this.player().options_.inactivityTimeout),this.player().options_.inactivityTimeout=0})),s.on("mouseleave",(function(e){this.player().options_.inactivityTimeout=this.player().cache_.inactivityTimeout}))),this.on("keydown",n),this.on("keyup",n),this.setInterval((function(){if(this.userActivity_){this.userActivity_=!1,this.userActive(!0),this.clearTimeout(a);var e=this.options_.inactivityTimeout;e<=0||(a=this.setTimeout((function(){this.userActivity_||this.userActive(!1)}),e))}}),250)},i.playbackRate=function(e){if(void 0===e)return this.tech_&&this.tech_.featuresPlaybackRate?this.cache_.lastPlaybackRate||this.techGet_("playbackRate"):1;this.techCall_("setPlaybackRate",e)},i.defaultPlaybackRate=function(e){return void 0!==e?this.techCall_("setDefaultPlaybackRate",e):this.tech_&&this.tech_.featuresPlaybackRate?this.techGet_("defaultPlaybackRate"):1},i.isAudio=function(e){if(void 0===e)return!!this.isAudio_;this.isAudio_=!!e},i.addTextTrack=function(e,t,i){if(this.tech_)return this.tech_.addTextTrack(e,t,i)},i.addRemoteTextTrack=function(e,t){if(this.tech_)return this.tech_.addRemoteTextTrack(e,t)},i.removeRemoteTextTrack=function(e){void 0===e&&(e={});var t=e.track;if(t||(t=e),this.tech_)return this.tech_.removeRemoteTextTrack(t)},i.getVideoPlaybackQuality=function(){return this.techGet_("getVideoPlaybackQuality")},i.videoWidth=function(){return this.tech_&&this.tech_.videoWidth&&this.tech_.videoWidth()||0},i.videoHeight=function(){return this.tech_&&this.tech_.videoHeight&&this.tech_.videoHeight()||0},i.language=function(e){if(void 0===e)return this.language_;this.language_!==String(e).toLowerCase()&&(this.language_=String(e).toLowerCase(),Lt(this)&&this.trigger("languagechange"))},i.languages=function(){return zt(t.prototype.options_.languages,this.languages_)},i.toJSON=function(){var e=zt(this.options_),t=e.tracks;e.tracks=[];for(var i=0;i"):function(){}},Jr=function(e,t){var i,n=[];if(e&&e.length)for(i=0;i=t}))},ea=function(e,t){return Jr(e,(function(e){return e-1/30>=t}))},ta=function(e){var t=[];if(!e||!e.length)return"";for(var i=0;i "+e.end(i));return t.join(", ")},ia=function(e){for(var t=[],i=0;i0;return i&&t.serverControl&&t.serverControl.partHoldBack?t.serverControl.partHoldBack:i&&t.partTargetDuration?3*t.partTargetDuration:t.serverControl&&t.serverControl.holdBack?t.serverControl.holdBack:t.targetDuration?3*t.targetDuration:0},la=function(e,t,i){if(void 0===t&&(t=e.mediaSequence+e.segments.length),tr){var s=[r,n];n=s[0],r=s[1]}if(n<0){for(var o=n;oDate.now()},pa=function(e){return e.excludeUntil&&e.excludeUntil===1/0},ma=function(e){var t=fa(e);return!e.disabled&&!t},ga=function(e,t){return t.attributes&&t.attributes[e]},_a=function(e,t){if(1===e.playlists.length)return!0;var i=t.attributes.BANDWIDTH||Number.MAX_VALUE;return 0===e.playlists.filter((function(e){return!!ma(e)&&(e.attributes.BANDWIDTH||0)0)for(var c=l-1;c>=0;c--){var f=u[c];if(o+=f.duration,s){if(o<0)continue}else if(o+1/30<=0)continue;return{partIndex:f.partIndex,segmentIndex:f.segmentIndex,startTime:a-da({defaultDuration:t.targetDuration,durationList:u,startIndex:l,endIndex:c})}}return{partIndex:u[0]&&u[0].partIndex||null,segmentIndex:u[0]&&u[0].segmentIndex||0,startTime:i}}if(l<0){for(var p=l;p<0;p++)if((o-=t.targetDuration)<0)return{partIndex:u[0]&&u[0].partIndex||null,segmentIndex:u[0]&&u[0].segmentIndex||0,startTime:i};l=0}for(var m=l;m0)continue}else if(o-1/30>=0)continue;return{partIndex:g.partIndex,segmentIndex:g.segmentIndex,startTime:a+da({defaultDuration:t.targetDuration,durationList:u,startIndex:l,endIndex:m})}}return{segmentIndex:u[u.length-1].segmentIndex,partIndex:u[u.length-1].partIndex,startTime:i}},isEnabled:ma,isDisabled:function(e){return e.disabled},isBlacklisted:fa,isIncompatible:pa,playlistEnd:ca,isAes:function(e){for(var t=0;t-1&&s!==a.length-1&&i.push("_HLS_part="+s),(s>-1||a.length)&&r--}i.unshift("_HLS_msn="+r)}return t.serverControl&&t.serverControl.canSkipUntil&&i.unshift("_HLS_skip="+(t.serverControl.canSkipDateranges?"v2":"YES")),i.forEach((function(t,i){e+=""+(0===i?"?":"&")+t})),e}(i,t)),this.state="HAVE_CURRENT_METADATA",this.request=this.vhs_.xhr({uri:i,withCredentials:this.withCredentials},(function(t,i){if(e.request)return t?e.playlistRequestError(e.request,e.media(),"HAVE_METADATA"):void e.haveMetadata({playlistString:e.request.responseText,url:e.media().uri,id:e.media().id})}))}},i.playlistRequestError=function(e,t,i){var n=t.uri,r=t.id;this.request=null,i&&(this.state=i),this.error={playlist:this.master.playlists[r],status:e.status,message:"HLS playlist request error at URL: "+n+".",responseText:e.responseText,code:e.status>=500?4:2},this.trigger("error")},i.parseManifest_=function(e){var t=this,i=e.url;return function(e){var t=e.onwarn,i=e.oninfo,n=e.manifestString,r=e.customTagParsers,a=void 0===r?[]:r,s=e.customTagMappers,o=void 0===s?[]:s,u=e.experimentalLLHLS,l=new m.Parser;t&&l.on("warn",t),i&&l.on("info",i),a.forEach((function(e){return l.addParser(e)})),o.forEach((function(e){return l.addTagMapper(e)})),l.push(n),l.end();var h=l.manifest;if(u||(["preloadSegment","skip","serverControl","renditionReports","partInf","partTargetDuration"].forEach((function(e){h.hasOwnProperty(e)&&delete h[e]})),h.segments&&h.segments.forEach((function(e){["parts","preloadHints"].forEach((function(t){e.hasOwnProperty(t)&&delete e[t]}))}))),!h.targetDuration){var d=10;h.segments&&h.segments.length&&(d=h.segments.reduce((function(e,t){return Math.max(e,t.duration)}),0)),t&&t("manifest has no targetDuration defaulting to "+d),h.targetDuration=d}var c=sa(h);if(c.length&&!h.partTargetDuration){var f=c.reduce((function(e,t){return Math.max(e,t.duration)}),0);t&&(t("manifest has no partTargetDuration defaulting to "+f),Sa.error("LL-HLS manifest has parts but lacks required #EXT-X-PART-INF:PART-TARGET value. See https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis-09#section-4.4.3.7. Playback is not guaranteed.")),h.partTargetDuration=f}return h}({onwarn:function(e){var n=e.message;return t.logger_("m3u8-parser warn for "+i+": "+n)},oninfo:function(e){var n=e.message;return t.logger_("m3u8-parser info for "+i+": "+n)},manifestString:e.manifestString,customTagParsers:this.customTagParsers,customTagMappers:this.customTagMappers,experimentalLLHLS:this.experimentalLLHLS})},i.haveMetadata=function(e){var t=e.playlistString,i=e.playlistObject,n=e.url,r=e.id;this.request=null,this.state="HAVE_METADATA";var a=i||this.parseManifest_({url:n,manifestString:t});a.lastRequest=Date.now(),Ca({playlist:a,uri:n,id:r});var s=Ra(this.master,a);this.targetDuration=a.partTargetDuration||a.targetDuration,s?(this.master=s,this.media_=this.master.playlists[r]):this.trigger("playlistunchanged"),this.updateMediaUpdateTimeout_(Oa(this.media(),!!s)),this.trigger("loadedplaylist")},i.dispose=function(){this.trigger("dispose"),this.stopRequest(),A.default.clearTimeout(this.mediaUpdateTimeout),A.default.clearTimeout(this.finalRenditionTimeout),this.off()},i.stopRequest=function(){if(this.request){var e=this.request;this.request=null,e.onreadystatechange=null,e.abort()}},i.media=function(e,t){var i=this;if(!e)return this.media_;if("HAVE_NOTHING"===this.state)throw new Error("Cannot switch media playlist from "+this.state);if("string"==typeof e){if(!this.master.playlists[e])throw new Error("Unknown playlist URI: "+e);e=this.master.playlists[e]}if(A.default.clearTimeout(this.finalRenditionTimeout),t){var n=(e.partTargetDuration||e.targetDuration)/2*1e3||5e3;this.finalRenditionTimeout=A.default.setTimeout(this.media.bind(this,e,!1),n)}else{var r=this.state,a=!this.media_||e.id!==this.media_.id,s=this.master.playlists[e.id];if(s&&s.endList||e.endList&&e.segments.length)return this.request&&(this.request.onreadystatechange=null,this.request.abort(),this.request=null),this.state="HAVE_METADATA",this.media_=e,void(a&&(this.trigger("mediachanging"),"HAVE_MASTER"===r?this.trigger("loadedmetadata"):this.trigger("mediachange")));if(this.updateMediaUpdateTimeout_(Oa(e,!0)),a){if(this.state="SWITCHING_MEDIA",this.request){if(e.resolvedUri===this.request.url)return;this.request.onreadystatechange=null,this.request.abort(),this.request=null}this.media_&&this.trigger("mediachanging"),this.request=this.vhs_.xhr({uri:e.resolvedUri,withCredentials:this.withCredentials},(function(t,n){if(i.request){if(e.lastRequest=Date.now(),e.resolvedUri=Qr(i.handleManifestRedirects,e.resolvedUri,n),t)return i.playlistRequestError(i.request,e,r);i.haveMetadata({playlistString:n.responseText,url:e.uri,id:e.id}),"HAVE_MASTER"===r?i.trigger("loadedmetadata"):i.trigger("mediachange")}}))}}},i.pause=function(){this.mediaUpdateTimeout&&(A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null),this.stopRequest(),"HAVE_NOTHING"===this.state&&(this.started=!1),"SWITCHING_MEDIA"===this.state?this.media_?this.state="HAVE_METADATA":this.state="HAVE_MASTER":"HAVE_CURRENT_METADATA"===this.state&&(this.state="HAVE_METADATA")},i.load=function(e){var t=this;this.mediaUpdateTimeout&&(A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null);var i=this.media();if(e){var n=i?(i.partTargetDuration||i.targetDuration)/2*1e3:5e3;this.mediaUpdateTimeout=A.default.setTimeout((function(){t.mediaUpdateTimeout=null,t.load()}),n)}else this.started?i&&!i.endList?this.trigger("mediaupdatetimeout"):this.trigger("loadedplaylist"):this.start()},i.updateMediaUpdateTimeout_=function(e){var t=this;this.mediaUpdateTimeout&&(A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null),this.media()&&!this.media().endList&&(this.mediaUpdateTimeout=A.default.setTimeout((function(){t.mediaUpdateTimeout=null,t.trigger("mediaupdatetimeout"),t.updateMediaUpdateTimeout_(e)}),e))},i.start=function(){var e=this;if(this.started=!0,"object"==typeof this.src)return this.src.uri||(this.src.uri=A.default.location.href),this.src.resolvedUri=this.src.uri,void setTimeout((function(){e.setupInitialPlaylist(e.src)}),0);this.request=this.vhs_.xhr({uri:this.src,withCredentials:this.withCredentials},(function(t,i){if(e.request){if(e.request=null,t)return e.error={status:i.status,message:"HLS playlist request error at URL: "+e.src+".",responseText:i.responseText,code:2},"HAVE_NOTHING"===e.state&&(e.started=!1),e.trigger("error");e.src=Qr(e.handleManifestRedirects,e.src,i);var n=e.parseManifest_({manifestString:i.responseText,url:e.src});e.setupInitialPlaylist(n)}}))},i.srcUri=function(){return"string"==typeof this.src?this.src:this.src.uri},i.setupInitialPlaylist=function(e){if(this.state="HAVE_MASTER",e.playlists)return this.master=e,Aa(this.master,this.srcUri()),e.playlists.forEach((function(e){e.segments=xa(e),e.segments.forEach((function(t){La(t,e.resolvedUri)}))})),this.trigger("loadedplaylist"),void(this.request||this.media(this.master.playlists[0]));var t=this.srcUri()||A.default.location.href;this.master=function(e,t){var i=Ea(0,t),n={mediaGroups:{AUDIO:{},VIDEO:{},"CLOSED-CAPTIONS":{},SUBTITLES:{}},uri:A.default.location.href,resolvedUri:A.default.location.href,playlists:[{uri:t,id:i,resolvedUri:t,attributes:{}}]};return n.playlists[i]=n.playlists[0],n.playlists[t]=n.playlists[0],n}(0,t),this.haveMetadata({playlistObject:e,url:t,id:this.master.playlists[0].id}),this.trigger("loadedmetadata")},t}(Pa),Ma=Yr.xhr,Fa=Yr.mergeOptions,Ba=function(e,t,i,n){var r="arraybuffer"===e.responseType?e.response:e.responseText;!t&&r&&(e.responseTime=Date.now(),e.roundTripTime=e.responseTime-e.requestTime,e.bytesReceived=r.byteLength||r.length,e.bandwidth||(e.bandwidth=Math.floor(e.bytesReceived/e.roundTripTime*8*1e3))),i.headers&&(e.responseHeaders=i.headers),t&&"ETIMEDOUT"===t.code&&(e.timedout=!0),t||e.aborted||200===i.statusCode||206===i.statusCode||0===i.statusCode||(t=new Error("XHR Failed with a response of: "+(e&&(r||e.responseText)))),n(t,e)},Na=function(){var e=function e(t,i){t=Fa({timeout:45e3},t);var n=e.beforeRequest||Yr.Vhs.xhr.beforeRequest;if(n&&"function"==typeof n){var r=n(t);r&&(t=r)}var a=(!0===Yr.Vhs.xhr.original?Ma:Yr.Vhs.xhr)(t,(function(e,t){return Ba(a,e,t,i)})),s=a.abort;return a.abort=function(){return a.aborted=!0,s.apply(a,arguments)},a.uri=t.uri,a.requestTime=Date.now(),a};return e.original=!0,e},ja=function(e){var t,i,n={};return e.byterange&&(n.Range=(t=e.byterange,i=t.offset+t.length-1,"bytes="+t.offset+"-"+i)),n},Va=function(e,t){return e.start(t)+"-"+e.end(t)},Ha=function(e,t){var i=e.toString(16);return"00".substring(0,2-i.length)+i+(t%2?" ":"")},za=function(e){return e>=32&&e<126?String.fromCharCode(e):"."},Ga=function(e){var t={};return Object.keys(e).forEach((function(i){var n=e[i];ArrayBuffer.isView(n)?t[i]={bytes:n.buffer,byteOffset:n.byteOffset,byteLength:n.byteLength}:t[i]=n})),t},Wa=function(e){var t=e.byterange||{length:1/0,offset:0};return[t.length,t.offset,e.resolvedUri].join(",")},Ya=function(e){return e.resolvedUri},qa=function(e){for(var t=Array.prototype.slice.call(e),i="",n=0;nn){if(e>n+.25*a.duration)return null;i=a}return{segment:i,estimatedStart:i.videoTimingInfo?i.videoTimingInfo.transmuxedPresentationStart:n-i.duration,type:i.videoTimingInfo?"accurate":"estimate"}}(n,t);if(!a)return r({message:"valid programTime was not found"});if("estimate"===a.type)return r({message:"Accurate programTime could not be determined. Please seek to e.seekTime and try again",seekTime:a.estimatedStart});var s={mediaSeconds:n},o=function(e,t){if(!t.dateTimeObject)return null;var i=t.videoTimingInfo.transmuxerPrependedSeconds,n=e-(t.videoTimingInfo.transmuxedPresentationStart+i);return new Date(t.dateTimeObject.getTime()+1e3*n)}(n,a.segment);return o&&(s.programDateTime=o.toISOString()),r(null,s)},Qa=function e(t){var i=t.programTime,n=t.playlist,r=t.retryCount,a=void 0===r?2:r,s=t.seekTo,o=t.pauseAfterSeek,u=void 0===o||o,l=t.tech,h=t.callback;if(!h)throw new Error("seekToProgramTime: callback must be provided");if(void 0===i||!n||!s)return h({message:"seekToProgramTime: programTime, seekTo and playlist must be provided"});if(!n.endList&&!l.hasStarted_)return h({message:"player must be playing a live stream to start buffering"});if(!function(e){if(!e.segments||0===e.segments.length)return!1;for(var t=0;tnew Date(o.getTime()+1e3*u)?null:(i>o&&(n=s),{segment:n,estimatedStart:n.videoTimingInfo?n.videoTimingInfo.transmuxedPresentationStart:Ta.duration(t,t.mediaSequence+t.segments.indexOf(n)),type:n.videoTimingInfo?"accurate":"estimate"})}(i,n);if(!d)return h({message:i+" was not found in the stream"});var c=d.segment,f=function(e,t){var i,n;try{i=new Date(e),n=new Date(t)}catch(e){}var r=i.getTime();return(n.getTime()-r)/1e3}(c.dateTimeObject,i);if("estimate"===d.type)return 0===a?h({message:i+" is not buffered yet. Try again"}):(s(d.estimatedStart+f),void l.one("seeked",(function(){e({programTime:i,playlist:n,retryCount:a-1,seekTo:s,pauseAfterSeek:u,tech:l,callback:h})})));var p=c.start+f;l.one("seeked",(function(){return h(null,l.currentTime())})),u&&l.pause(),s(p)},$a=function(e,t){if(4===e.readyState)return t()},Ja=Yr.EventTarget,Za=Yr.mergeOptions,es=function(e,t){if(!Da(e,t))return!1;if(e.sidx&&t.sidx&&(e.sidx.offset!==t.sidx.offset||e.sidx.length!==t.sidx.length))return!1;if(!e.sidx&&t.sidx||e.sidx&&!t.sidx)return!1;if(e.segments&&!t.segments||!e.segments&&t.segments)return!1;if(!e.segments&&!t.segments)return!0;for(var i=0;i=h+l)return s(t,{response:o.subarray(l,l+h),status:i.status,uri:i.uri});n.request=n.vhs_.xhr({uri:a,responseType:"arraybuffer",headers:ja({byterange:e.sidx.byterange})},s)}))}else this.mediaRequest_=A.default.setTimeout((function(){return i(!1)}),0)},i.dispose=function(){this.trigger("dispose"),this.stopRequest(),this.loadedPlaylists_={},A.default.clearTimeout(this.minimumUpdatePeriodTimeout_),A.default.clearTimeout(this.mediaRequest_),A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null,this.mediaRequest_=null,this.minimumUpdatePeriodTimeout_=null,this.masterPlaylistLoader_.createMupOnMedia_&&(this.off("loadedmetadata",this.masterPlaylistLoader_.createMupOnMedia_),this.masterPlaylistLoader_.createMupOnMedia_=null),this.off()},i.hasPendingRequest=function(){return this.request||this.mediaRequest_},i.stopRequest=function(){if(this.request){var e=this.request;this.request=null,e.onreadystatechange=null,e.abort()}},i.media=function(e){var t=this;if(!e)return this.media_;if("HAVE_NOTHING"===this.state)throw new Error("Cannot switch media playlist from "+this.state);var i=this.state;if("string"==typeof e){if(!this.masterPlaylistLoader_.master.playlists[e])throw new Error("Unknown playlist URI: "+e);e=this.masterPlaylistLoader_.master.playlists[e]}var n=!this.media_||e.id!==this.media_.id;if(n&&this.loadedPlaylists_[e.id]&&this.loadedPlaylists_[e.id].endList)return this.state="HAVE_METADATA",this.media_=e,void(n&&(this.trigger("mediachanging"),this.trigger("mediachange")));n&&(this.media_&&this.trigger("mediachanging"),this.addSidxSegments_(e,i,(function(n){t.haveMetadata({startingState:i,playlist:e})})))},i.haveMetadata=function(e){var t=e.startingState,i=e.playlist;this.state="HAVE_METADATA",this.loadedPlaylists_[i.id]=i,this.mediaRequest_=null,this.refreshMedia_(i.id),"HAVE_MASTER"===t?this.trigger("loadedmetadata"):this.trigger("mediachange")},i.pause=function(){this.masterPlaylistLoader_.createMupOnMedia_&&(this.off("loadedmetadata",this.masterPlaylistLoader_.createMupOnMedia_),this.masterPlaylistLoader_.createMupOnMedia_=null),this.stopRequest(),A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null,this.isMaster_&&(A.default.clearTimeout(this.masterPlaylistLoader_.minimumUpdatePeriodTimeout_),this.masterPlaylistLoader_.minimumUpdatePeriodTimeout_=null),"HAVE_NOTHING"===this.state&&(this.started=!1)},i.load=function(e){var t=this;A.default.clearTimeout(this.mediaUpdateTimeout),this.mediaUpdateTimeout=null;var i=this.media();if(e){var n=i?i.targetDuration/2*1e3:5e3;this.mediaUpdateTimeout=A.default.setTimeout((function(){return t.load()}),n)}else this.started?i&&!i.endList?(this.isMaster_&&!this.minimumUpdatePeriodTimeout_&&(this.trigger("minimumUpdatePeriod"),this.updateMinimumUpdatePeriodTimeout_()),this.trigger("mediaupdatetimeout")):this.trigger("loadedplaylist"):this.start()},i.start=function(){var e=this;this.started=!0,this.isMaster_?this.requestMaster_((function(t,i){e.haveMaster_(),e.hasPendingRequest()||e.media_||e.media(e.masterPlaylistLoader_.master.playlists[0])})):this.mediaRequest_=A.default.setTimeout((function(){return e.haveMaster_()}),0)},i.requestMaster_=function(e){var t=this;this.request=this.vhs_.xhr({uri:this.masterPlaylistLoader_.srcUrl,withCredentials:this.withCredentials},(function(i,n){if(!t.requestErrored_(i,n)){var r=n.responseText!==t.masterPlaylistLoader_.masterXml_;return t.masterPlaylistLoader_.masterXml_=n.responseText,n.responseHeaders&&n.responseHeaders.date?t.masterLoaded_=Date.parse(n.responseHeaders.date):t.masterLoaded_=Date.now(),t.masterPlaylistLoader_.srcUrl=Qr(t.handleManifestRedirects,t.masterPlaylistLoader_.srcUrl,n),r?(t.handleMaster_(),void t.syncClientServerClock_((function(){return e(n,r)}))):e(n,r)}"HAVE_NOTHING"===t.state&&(t.started=!1)}))},i.syncClientServerClock_=function(e){var t=this,i=v.parseUTCTiming(this.masterPlaylistLoader_.masterXml_);return null===i?(this.masterPlaylistLoader_.clientOffset_=this.masterLoaded_-Date.now(),e()):"DIRECT"===i.method?(this.masterPlaylistLoader_.clientOffset_=i.value-Date.now(),e()):void(this.request=this.vhs_.xhr({uri:Xr(this.masterPlaylistLoader_.srcUrl,i.value),method:i.method,withCredentials:this.withCredentials},(function(n,r){if(t.request){if(n)return t.masterPlaylistLoader_.clientOffset_=t.masterLoaded_-Date.now(),e();var a;a="HEAD"===i.method?r.responseHeaders&&r.responseHeaders.date?Date.parse(r.responseHeaders.date):t.masterLoaded_:Date.parse(r.responseText),t.masterPlaylistLoader_.clientOffset_=a-Date.now(),e()}})))},i.haveMaster_=function(){this.state="HAVE_MASTER",this.isMaster_?this.trigger("loadedplaylist"):this.media_||this.media(this.childPlaylist_)},i.handleMaster_=function(){this.mediaRequest_=null;var e,t,i,n,r,a,s=(e={masterXml:this.masterPlaylistLoader_.masterXml_,srcUrl:this.masterPlaylistLoader_.srcUrl,clientOffset:this.masterPlaylistLoader_.clientOffset_,sidxMapping:this.masterPlaylistLoader_.sidxMapping_},t=e.masterXml,i=e.srcUrl,n=e.clientOffset,r=e.sidxMapping,a=v.parse(t,{manifestUri:i,clientOffset:n,sidxMapping:r}),Aa(a,i),a),o=this.masterPlaylistLoader_.master;o&&(s=function(e,t,i){for(var n=!0,r=Za(e,{duration:t.duration,minimumUpdatePeriod:t.minimumUpdatePeriod}),a=0;a-1)},this.trigger=function(t){var i,n,r,a;if(i=e[t])if(2===arguments.length)for(r=i.length,n=0;n>>1,e.samplingfrequencyindex<<7|e.channelcount<<3,6,1,2]))},m=function(e){return t(S.hdlr,P[e])},p=function(e){var i=new Uint8Array([0,0,0,0,0,0,0,2,0,0,0,3,0,1,95,144,e.duration>>>24&255,e.duration>>>16&255,e.duration>>>8&255,255&e.duration,85,196,0,0]);return e.samplerate&&(i[12]=e.samplerate>>>24&255,i[13]=e.samplerate>>>16&255,i[14]=e.samplerate>>>8&255,i[15]=255&e.samplerate),t(S.mdhd,i)},f=function(e){return t(S.mdia,p(e),m(e.type),s(e))},a=function(e){return t(S.mfhd,new Uint8Array([0,0,0,0,(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e]))},s=function(e){return t(S.minf,"video"===e.type?t(S.vmhd,I):t(S.smhd,L),i(),_(e))},o=function(e,i){for(var n=[],r=i.length;r--;)n[r]=y(i[r]);return t.apply(null,[S.moof,a(e)].concat(n))},u=function(e){for(var i=e.length,n=[];i--;)n[i]=d(e[i]);return t.apply(null,[S.moov,h(4294967295)].concat(n).concat(l(e)))},l=function(e){for(var i=e.length,n=[];i--;)n[i]=b(e[i]);return t.apply(null,[S.mvex].concat(n))},h=function(e){var i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,2,0,1,95,144,(4278190080&e)>>24,(16711680&e)>>16,(65280&e)>>8,255&e,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return t(S.mvhd,i)},g=function(e){var i,n,r=e.samples||[],a=new Uint8Array(4+r.length);for(n=0;n>>8),s.push(255&r[i].byteLength),s=s.concat(Array.prototype.slice.call(r[i]));for(i=0;i>>8),o.push(255&a[i].byteLength),o=o.concat(Array.prototype.slice.call(a[i]));if(n=[S.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,(65280&e.width)>>8,255&e.width,(65280&e.height)>>8,255&e.height,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]),t(S.avcC,new Uint8Array([1,e.profileIdc,e.profileCompatibility,e.levelIdc,255].concat([r.length],s,[a.length],o))),t(S.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192]))],e.sarRatio){var u=e.sarRatio[0],l=e.sarRatio[1];n.push(t(S.pasp,new Uint8Array([(4278190080&u)>>24,(16711680&u)>>16,(65280&u)>>8,255&u,(4278190080&l)>>24,(16711680&l)>>16,(65280&l)>>8,255&l])))}return t.apply(null,n)},F=function(e){return t(S.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,(65280&e.channelcount)>>8,255&e.channelcount,(65280&e.samplesize)>>8,255&e.samplesize,0,0,0,0,(65280&e.samplerate)>>8,255&e.samplerate,0,0]),n(e))},c=function(e){var i=new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,(4278190080&e.id)>>24,(16711680&e.id)>>16,(65280&e.id)>>8,255&e.id,0,0,0,0,(4278190080&e.duration)>>24,(16711680&e.duration)>>16,(65280&e.duration)>>8,255&e.duration,0,0,0,0,0,0,0,0,0,0,0,0,1,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,(65280&e.width)>>8,255&e.width,0,0,(65280&e.height)>>8,255&e.height,0,0]);return t(S.tkhd,i)},y=function(e){var i,n,r,a,s,o;return i=t(S.tfhd,new Uint8Array([0,0,0,58,(4278190080&e.id)>>24,(16711680&e.id)>>16,(65280&e.id)>>8,255&e.id,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0])),s=Math.floor(e.baseMediaDecodeTime/(H+1)),o=Math.floor(e.baseMediaDecodeTime%(H+1)),n=t(S.tfdt,new Uint8Array([1,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s,o>>>24&255,o>>>16&255,o>>>8&255,255&o])),92,"audio"===e.type?(r=T(e,92),t(S.traf,i,n,r)):(a=g(e),r=T(e,a.length+92),t(S.traf,i,n,r,a))},d=function(e){return e.duration=e.duration||4294967295,t(S.trak,c(e),f(e))},b=function(e){var i=new Uint8Array([0,0,0,0,(4278190080&e.id)>>24,(16711680&e.id)>>16,(65280&e.id)>>8,255&e.id,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return"video"!==e.type&&(i[i.length-1]=0),t(S.trex,i)},j=function(e,t){var i=0,n=0,r=0,a=0;return e.length&&(void 0!==e[0].duration&&(i=1),void 0!==e[0].size&&(n=2),void 0!==e[0].flags&&(r=4),void 0!==e[0].compositionTimeOffset&&(a=8)),[0,0,i|n|r|a,1,(4278190080&e.length)>>>24,(16711680&e.length)>>>16,(65280&e.length)>>>8,255&e.length,(4278190080&t)>>>24,(16711680&t)>>>16,(65280&t)>>>8,255&t]},N=function(e,i){var n,r,a,s,o,u;for(i+=20+16*(s=e.samples||[]).length,a=j(s,i),(r=new Uint8Array(a.length+16*s.length)).set(a),n=a.length,u=0;u>>24,r[n++]=(16711680&o.duration)>>>16,r[n++]=(65280&o.duration)>>>8,r[n++]=255&o.duration,r[n++]=(4278190080&o.size)>>>24,r[n++]=(16711680&o.size)>>>16,r[n++]=(65280&o.size)>>>8,r[n++]=255&o.size,r[n++]=o.flags.isLeading<<2|o.flags.dependsOn,r[n++]=o.flags.isDependedOn<<6|o.flags.hasRedundancy<<4|o.flags.paddingValue<<1|o.flags.isNonSyncSample,r[n++]=61440&o.flags.degradationPriority,r[n++]=15&o.flags.degradationPriority,r[n++]=(4278190080&o.compositionTimeOffset)>>>24,r[n++]=(16711680&o.compositionTimeOffset)>>>16,r[n++]=(65280&o.compositionTimeOffset)>>>8,r[n++]=255&o.compositionTimeOffset;return t(S.trun,r)},B=function(e,i){var n,r,a,s,o,u;for(i+=20+8*(s=e.samples||[]).length,a=j(s,i),(n=new Uint8Array(a.length+8*s.length)).set(a),r=a.length,u=0;u>>24,n[r++]=(16711680&o.duration)>>>16,n[r++]=(65280&o.duration)>>>8,n[r++]=255&o.duration,n[r++]=(4278190080&o.size)>>>24,n[r++]=(16711680&o.size)>>>16,n[r++]=(65280&o.size)>>>8,n[r++]=255&o.size;return t(S.trun,n)},T=function(e,t){return"audio"===e.type?B(e,t):N(e,t)};r=function(){return t(S.ftyp,E,w,E,C)};var z,G,W,Y,q,K,X,Q,$=function(e){return t(S.mdat,e)},J=o,Z=function(e){var t,i=r(),n=u(e);return(t=new Uint8Array(i.byteLength+n.byteLength)).set(i),t.set(n,i.byteLength),t},ee=function(e,t){var i={size:0,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0,degradationPriority:0,isNonSyncSample:1}};return i.dataOffset=t,i.compositionTimeOffset=e.pts-e.dts,i.duration=e.duration,i.size=4*e.length,i.size+=e.byteLength,e.keyFrame&&(i.flags.dependsOn=2,i.flags.isNonSyncSample=0),i},te=function(e){var t,i,n=[],r=[];for(r.byteLength=0,r.nalCount=0,r.duration=0,n.byteLength=0,t=0;t1&&(t=e.shift(),e.byteLength-=t.byteLength,e.nalCount-=t.nalCount,e[0][0].dts=t.dts,e[0][0].pts=t.pts,e[0][0].duration+=t.duration),e},re=function(e,t){var i,n,r,a,s,o=t||0,u=[];for(i=0;ihe/2))){for((s=le()[e.samplerate])||(s=t[0].data),o=0;o=i?e:(t.minSegmentDts=1/0,e.filter((function(e){return e.dts>=i&&(t.minSegmentDts=Math.min(t.minSegmentDts,e.dts),t.minSegmentPts=t.minSegmentDts,!0)})))},ve=function(e){var t,i,n=[];for(t=0;t=this.virtualRowCount&&"function"==typeof this.beforeRowOverflow&&this.beforeRowOverflow(e),this.rows.length>0&&(this.rows.push(""),this.rowIdx++);this.rows.length>this.virtualRowCount;)this.rows.shift(),this.rowIdx--},De.prototype.isEmpty=function(){return 0===this.rows.length||1===this.rows.length&&""===this.rows[0]},De.prototype.addText=function(e){this.rows[this.rowIdx]+=e},De.prototype.backspace=function(){if(!this.isEmpty()){var e=this.rows[this.rowIdx];this.rows[this.rowIdx]=e.substr(0,e.length-1)}};var Re=function(e){this.serviceNum=e,this.text="",this.currentWindow=new De(-1),this.windows=[]};Re.prototype.init=function(e,t){this.startPts=e;for(var i=0;i<8;i++)this.windows[i]=new De(i),"function"==typeof t&&(this.windows[i].beforeRowOverflow=t)},Re.prototype.setCurrentWindow=function(e){this.currentWindow=this.windows[e]};var Oe=function e(){e.prototype.init.call(this);var t=this;this.current708Packet=null,this.services={},this.push=function(e){3===e.type?(t.new708Packet(),t.add708Bytes(e)):(null===t.current708Packet&&t.new708Packet(),t.add708Bytes(e))}};Oe.prototype=new V,Oe.prototype.new708Packet=function(){null!==this.current708Packet&&this.push708Packet(),this.current708Packet={data:[],ptsVals:[]}},Oe.prototype.add708Bytes=function(e){var t=e.ccData,i=t>>>8,n=255&t;this.current708Packet.ptsVals.push(e.pts),this.current708Packet.data.push(i),this.current708Packet.data.push(n)},Oe.prototype.push708Packet=function(){var e=this.current708Packet,t=e.data,i=null,n=null,r=0,a=t[r++];for(e.seq=a>>6,e.sizeCode=63&a;r>5)&&n>0&&(i=a=t[r++]),this.pushServiceBlock(i,r,n),n>0&&(r+=n-1)},Oe.prototype.pushServiceBlock=function(e,t,i){var n,r=t,a=this.current708Packet.data,s=this.services[e];for(s||(s=this.initService(e,r));r>5,a.rowLock=(16&n)>>4,a.columnLock=(8&n)>>3,a.priority=7&n,n=i[++e],a.relativePositioning=(128&n)>>7,a.anchorVertical=127&n,n=i[++e],a.anchorHorizontal=n,n=i[++e],a.anchorPoint=(240&n)>>4,a.rowCount=15&n,n=i[++e],a.columnCount=63&n,n=i[++e],a.windowStyle=(56&n)>>3,a.penStyle=7&n,a.virtualRowCount=a.rowCount+1,e},Oe.prototype.setWindowAttributes=function(e,t){var i=this.current708Packet.data,n=i[e],r=t.currentWindow.winAttr;return n=i[++e],r.fillOpacity=(192&n)>>6,r.fillRed=(48&n)>>4,r.fillGreen=(12&n)>>2,r.fillBlue=3&n,n=i[++e],r.borderType=(192&n)>>6,r.borderRed=(48&n)>>4,r.borderGreen=(12&n)>>2,r.borderBlue=3&n,n=i[++e],r.borderType+=(128&n)>>5,r.wordWrap=(64&n)>>6,r.printDirection=(48&n)>>4,r.scrollDirection=(12&n)>>2,r.justify=3&n,n=i[++e],r.effectSpeed=(240&n)>>4,r.effectDirection=(12&n)>>2,r.displayEffect=3&n,e},Oe.prototype.flushDisplayed=function(e,t){for(var i=[],n=0;n<8;n++)t.windows[n].visible&&!t.windows[n].isEmpty()&&i.push(t.windows[n].getText());t.endPts=e,t.text=i.join("\n\n"),this.pushCaption(t),t.startPts=e},Oe.prototype.pushCaption=function(e){""!==e.text&&(this.trigger("data",{startPts:e.startPts,endPts:e.endPts,text:e.text,stream:"cc708_"+e.serviceNum}),e.text="",e.startPts=e.endPts)},Oe.prototype.displayWindows=function(e,t){var i=this.current708Packet.data[++e],n=this.getPts(e);this.flushDisplayed(n,t);for(var r=0;r<8;r++)i&1<>4,r.offset=(12&n)>>2,r.penSize=3&n,n=i[++e],r.italics=(128&n)>>7,r.underline=(64&n)>>6,r.edgeType=(56&n)>>3,r.fontStyle=7&n,e},Oe.prototype.setPenColor=function(e,t){var i=this.current708Packet.data,n=i[e],r=t.currentWindow.penColor;return n=i[++e],r.fgOpacity=(192&n)>>6,r.fgRed=(48&n)>>4,r.fgGreen=(12&n)>>2,r.fgBlue=3&n,n=i[++e],r.bgOpacity=(192&n)>>6,r.bgRed=(48&n)>>4,r.bgGreen=(12&n)>>2,r.bgBlue=3&n,n=i[++e],r.edgeRed=(48&n)>>4,r.edgeGreen=(12&n)>>2,r.edgeBlue=3&n,e},Oe.prototype.setPenLocation=function(e,t){var i=this.current708Packet.data,n=i[e],r=t.currentWindow.penLoc;return t.currentWindow.pendingNewLine=!0,n=i[++e],r.row=15&n,n=i[++e],r.column=63&n,e},Oe.prototype.reset=function(e,t){var i=this.getPts(e);return this.flushDisplayed(i,t),this.initService(t.serviceNum,e)};var Ue={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,304:174,305:176,306:189,307:191,308:8482,309:162,310:163,311:9834,312:224,313:160,314:232,315:226,316:234,317:238,318:244,319:251,544:193,545:201,546:211,547:218,548:220,549:252,550:8216,551:161,552:42,553:39,554:8212,555:169,556:8480,557:8226,558:8220,559:8221,560:192,561:194,562:199,563:200,564:202,565:203,566:235,567:206,568:207,569:239,570:212,571:217,572:249,573:219,574:171,575:187,800:195,801:227,802:205,803:204,804:236,805:210,806:242,807:213,808:245,809:123,810:125,811:92,812:94,813:95,814:124,815:126,816:196,817:228,818:214,819:246,820:223,821:165,822:164,823:9474,824:197,825:229,826:216,827:248,828:9484,829:9488,830:9492,831:9496},Me=function(e){return null===e?"":(e=Ue[e]||e,String.fromCharCode(e))},Fe=[4352,4384,4608,4640,5376,5408,5632,5664,5888,5920,4096,4864,4896,5120,5152],Be=function(){for(var e=[],t=15;t--;)e.push("");return e},Ne=function e(t,i){e.prototype.init.call(this),this.field_=t||0,this.dataChannel_=i||0,this.name_="CC"+(1+(this.field_<<1|this.dataChannel_)),this.setConstants(),this.reset(),this.push=function(e){var t,i,n,r,a;if((t=32639&e.ccData)!==this.lastControlCode_){if(4096==(61440&t)?this.lastControlCode_=t:t!==this.PADDING_&&(this.lastControlCode_=null),n=t>>>8,r=255&t,t!==this.PADDING_)if(t===this.RESUME_CAPTION_LOADING_)this.mode_="popOn";else if(t===this.END_OF_CAPTION_)this.mode_="popOn",this.clearFormatting(e.pts),this.flushDisplayed(e.pts),i=this.displayed_,this.displayed_=this.nonDisplayed_,this.nonDisplayed_=i,this.startPts_=e.pts;else if(t===this.ROLL_UP_2_ROWS_)this.rollUpRows_=2,this.setRollUp(e.pts);else if(t===this.ROLL_UP_3_ROWS_)this.rollUpRows_=3,this.setRollUp(e.pts);else if(t===this.ROLL_UP_4_ROWS_)this.rollUpRows_=4,this.setRollUp(e.pts);else if(t===this.CARRIAGE_RETURN_)this.clearFormatting(e.pts),this.flushDisplayed(e.pts),this.shiftRowsUp_(),this.startPts_=e.pts;else if(t===this.BACKSPACE_)"popOn"===this.mode_?this.nonDisplayed_[this.row_]=this.nonDisplayed_[this.row_].slice(0,-1):this.displayed_[this.row_]=this.displayed_[this.row_].slice(0,-1);else if(t===this.ERASE_DISPLAYED_MEMORY_)this.flushDisplayed(e.pts),this.displayed_=Be();else if(t===this.ERASE_NON_DISPLAYED_MEMORY_)this.nonDisplayed_=Be();else if(t===this.RESUME_DIRECT_CAPTIONING_)"paintOn"!==this.mode_&&(this.flushDisplayed(e.pts),this.displayed_=Be()),this.mode_="paintOn",this.startPts_=e.pts;else if(this.isSpecialCharacter(n,r))a=Me((n=(3&n)<<8)|r),this[this.mode_](e.pts,a),this.column_++;else if(this.isExtCharacter(n,r))"popOn"===this.mode_?this.nonDisplayed_[this.row_]=this.nonDisplayed_[this.row_].slice(0,-1):this.displayed_[this.row_]=this.displayed_[this.row_].slice(0,-1),a=Me((n=(3&n)<<8)|r),this[this.mode_](e.pts,a),this.column_++;else if(this.isMidRowCode(n,r))this.clearFormatting(e.pts),this[this.mode_](e.pts," "),this.column_++,14==(14&r)&&this.addFormatting(e.pts,["i"]),1==(1&r)&&this.addFormatting(e.pts,["u"]);else if(this.isOffsetControlCode(n,r))this.column_+=3&r;else if(this.isPAC(n,r)){var s=Fe.indexOf(7968&t);"rollUp"===this.mode_&&(s-this.rollUpRows_+1<0&&(s=this.rollUpRows_-1),this.setRollUp(e.pts,s)),s!==this.row_&&(this.clearFormatting(e.pts),this.row_=s),1&r&&-1===this.formatting_.indexOf("u")&&this.addFormatting(e.pts,["u"]),16==(16&t)&&(this.column_=4*((14&t)>>1)),this.isColorPAC(r)&&14==(14&r)&&this.addFormatting(e.pts,["i"])}else this.isNormalChar(n)&&(0===r&&(r=null),a=Me(n),a+=Me(r),this[this.mode_](e.pts,a),this.column_+=a.length)}else this.lastControlCode_=null}};Ne.prototype=new V,Ne.prototype.flushDisplayed=function(e){var t=this.displayed_.map((function(e,t){try{return e.trim()}catch(e){return this.trigger("log",{level:"warn",message:"Skipping a malformed 608 caption at index "+t+"."}),""}}),this).join("\n").replace(/^\n+|\n+$/g,"");t.length&&this.trigger("data",{startPts:this.startPts_,endPts:e,text:t,stream:this.name_})},Ne.prototype.reset=function(){this.mode_="popOn",this.topRow_=0,this.startPts_=0,this.displayed_=Be(),this.nonDisplayed_=Be(),this.lastControlCode_=null,this.column_=0,this.row_=14,this.rollUpRows_=2,this.formatting_=[]},Ne.prototype.setConstants=function(){0===this.dataChannel_?(this.BASE_=16,this.EXT_=17,this.CONTROL_=(20|this.field_)<<8,this.OFFSET_=23):1===this.dataChannel_&&(this.BASE_=24,this.EXT_=25,this.CONTROL_=(28|this.field_)<<8,this.OFFSET_=31),this.PADDING_=0,this.RESUME_CAPTION_LOADING_=32|this.CONTROL_,this.END_OF_CAPTION_=47|this.CONTROL_,this.ROLL_UP_2_ROWS_=37|this.CONTROL_,this.ROLL_UP_3_ROWS_=38|this.CONTROL_,this.ROLL_UP_4_ROWS_=39|this.CONTROL_,this.CARRIAGE_RETURN_=45|this.CONTROL_,this.RESUME_DIRECT_CAPTIONING_=41|this.CONTROL_,this.BACKSPACE_=33|this.CONTROL_,this.ERASE_DISPLAYED_MEMORY_=44|this.CONTROL_,this.ERASE_NON_DISPLAYED_MEMORY_=46|this.CONTROL_},Ne.prototype.isSpecialCharacter=function(e,t){return e===this.EXT_&&t>=48&&t<=63},Ne.prototype.isExtCharacter=function(e,t){return(e===this.EXT_+1||e===this.EXT_+2)&&t>=32&&t<=63},Ne.prototype.isMidRowCode=function(e,t){return e===this.EXT_&&t>=32&&t<=47},Ne.prototype.isOffsetControlCode=function(e,t){return e===this.OFFSET_&&t>=33&&t<=35},Ne.prototype.isPAC=function(e,t){return e>=this.BASE_&&e=64&&t<=127},Ne.prototype.isColorPAC=function(e){return e>=64&&e<=79||e>=96&&e<=127},Ne.prototype.isNormalChar=function(e){return e>=32&&e<=127},Ne.prototype.setRollUp=function(e,t){if("rollUp"!==this.mode_&&(this.row_=14,this.mode_="rollUp",this.flushDisplayed(e),this.nonDisplayed_=Be(),this.displayed_=Be()),void 0!==t&&t!==this.row_)for(var i=0;i"}),"");this[this.mode_](e,i)},Ne.prototype.clearFormatting=function(e){if(this.formatting_.length){var t=this.formatting_.reverse().reduce((function(e,t){return e+""}),"");this.formatting_=[],this[this.mode_](e,t)}},Ne.prototype.popOn=function(e,t){var i=this.nonDisplayed_[this.row_];i+=t,this.nonDisplayed_[this.row_]=i},Ne.prototype.rollUp=function(e,t){var i=this.displayed_[this.row_];i+=t,this.displayed_[this.row_]=i},Ne.prototype.shiftRowsUp_=function(){var e;for(e=0;et&&(i=-1);Math.abs(t-e)>4294967296;)e+=8589934592*i;return e},ze=function e(t){var i,n;e.prototype.init.call(this),this.type_=t||"shared",this.push=function(e){"shared"!==this.type_&&e.type!==this.type_||(void 0===n&&(n=e.dts),e.dts=He(e.dts,n),e.pts=He(e.pts,n),i=e.dts,this.trigger("data",e))},this.flush=function(){n=i,this.trigger("done")},this.endTimeline=function(){this.flush(),this.trigger("endedtimeline")},this.discontinuity=function(){n=void 0,i=void 0},this.reset=function(){this.discontinuity(),this.trigger("reset")}};ze.prototype=new V;var Ge,We=ze,Ye=He,qe=function(e,t,i){var n,r="";for(n=t;n>>2;h*=4,h+=3&l[7],o.timeStamp=h,void 0===t.pts&&void 0===t.dts&&(t.pts=o.timeStamp,t.dts=o.timeStamp),this.trigger("timestamp",o)}t.frames.push(o),i+=10,i+=s}while(i>>4>1&&(n+=t[n]+1),0===i.pid)i.type="pat",e(t.subarray(n),i),this.trigger("data",i);else if(i.pid===this.pmtPid)for(i.type="pmt",e(t.subarray(n),i),this.trigger("data",i);this.packetsWaitingForPmt.length;)this.processPes_.apply(this,this.packetsWaitingForPmt.shift());else void 0===this.programMapTable?this.packetsWaitingForPmt.push([t,n,i]):this.processPes_(t,n,i)},this.processPes_=function(e,t,i){i.pid===this.programMapTable.video?i.streamType=Ve.H264_STREAM_TYPE:i.pid===this.programMapTable.audio?i.streamType=Ve.ADTS_STREAM_TYPE:i.streamType=this.programMapTable["timed-metadata"][i.pid],i.type="pes",i.data=e.subarray(t),this.trigger("data",i)}}).prototype=new V,Je.STREAM_TYPES={h264:27,adts:15},(Ze=function(){var e,t=this,i=!1,n={data:[],size:0},r={data:[],size:0},a={data:[],size:0},s=function(e,i,n){var r,a,s=new Uint8Array(e.size),o={type:i},u=0,l=0;if(e.data.length&&!(e.size<9)){for(o.trackId=e.data[0].pid,u=0;u>>3,d.pts*=4,d.pts+=(6&h[13])>>>1,d.dts=d.pts,64&c&&(d.dts=(14&h[14])<<27|(255&h[15])<<20|(254&h[16])<<12|(255&h[17])<<5|(254&h[18])>>>3,d.dts*=4,d.dts+=(6&h[18])>>>1)),d.data=h.subarray(9+h[8])),r="video"===i||o.packetLength<=e.size,(n||r)&&(e.size=0,e.data.length=0),r&&t.trigger("data",o)}};Ze.prototype.init.call(this),this.push=function(o){({pat:function(){},pes:function(){var e,t;switch(o.streamType){case Ve.H264_STREAM_TYPE:e=n,t="video";break;case Ve.ADTS_STREAM_TYPE:e=r,t="audio";break;case Ve.METADATA_STREAM_TYPE:e=a,t="timed-metadata";break;default:return}o.payloadUnitStartIndicator&&s(e,t,!0),e.data.push(o),e.size+=o.data.byteLength},pmt:function(){var n={type:"metadata",tracks:[]};null!==(e=o.programMapTable).video&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.video,codec:"avc",type:"video"}),null!==e.audio&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.audio,codec:"adts",type:"audio"}),i=!0,t.trigger("data",n)}})[o.type]()},this.reset=function(){n.size=0,n.data.length=0,r.size=0,r.data.length=0,this.trigger("reset")},this.flushStreams_=function(){s(n,"video"),s(r,"audio"),s(a,"timed-metadata")},this.flush=function(){if(!i&&e){var n={type:"metadata",tracks:[]};null!==e.video&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.video,codec:"avc",type:"video"}),null!==e.audio&&n.tracks.push({timelineStartInfo:{baseMediaDecodeTime:0},id:+e.audio,codec:"adts",type:"audio"}),t.trigger("data",n)}i=!1,this.flushStreams_(),this.trigger("done")}}).prototype=new V;var it={PAT_PID:0,MP2T_PACKET_LENGTH:188,TransportPacketStream:$e,TransportParseStream:Je,ElementaryStream:Ze,TimestampRolloverStream:tt,CaptionStream:je.CaptionStream,Cea608Stream:je.Cea608Stream,Cea708Stream:je.Cea708Stream,MetadataStream:et};for(var nt in Ve)Ve.hasOwnProperty(nt)&&(it[nt]=Ve[nt]);var rt,at=it,st=he,ot=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];(rt=function(e){var t,i=0;rt.prototype.init.call(this),this.skipWarn_=function(e,t){this.trigger("log",{level:"warn",message:"adts skiping bytes "+e+" to "+t+" in frame "+i+" outside syncword"})},this.push=function(n){var r,a,s,o,u,l=0;if(e||(i=0),"audio"===n.type){var h;for(t&&t.length?(s=t,(t=new Uint8Array(s.byteLength+n.data.byteLength)).set(s),t.set(n.data,s.byteLength)):t=n.data;l+7>5,u=(o=1024*(1+(3&t[l+6])))*st/ot[(60&t[l+2])>>>2],t.byteLength-l>>6&3),channelcount:(1&t[l+2])<<2|(192&t[l+3])>>>6,samplerate:ot[(60&t[l+2])>>>2],samplingfrequencyindex:(60&t[l+2])>>>2,samplesize:16,data:t.subarray(l+7+a,l+r)}),i++,l+=r}else"number"!=typeof h&&(h=l),l++;"number"==typeof h&&(this.skipWarn_(h,l),h=null),t=t.subarray(l)}},this.flush=function(){i=0,this.trigger("done")},this.reset=function(){t=void 0,this.trigger("reset")},this.endTimeline=function(){t=void 0,this.trigger("endedtimeline")}}).prototype=new V;var ut,lt,ht,dt=rt,ct=function(e){var t=e.byteLength,i=0,n=0;this.length=function(){return 8*t},this.bitsAvailable=function(){return 8*t+n},this.loadWord=function(){var r=e.byteLength-t,a=new Uint8Array(4),s=Math.min(4,t);if(0===s)throw new Error("no bytes available");a.set(e.subarray(r,r+s)),i=new DataView(a.buffer).getUint32(0),n=8*s,t-=s},this.skipBits=function(e){var r;n>e?(i<<=e,n-=e):(e-=n,e-=8*(r=Math.floor(e/8)),t-=r,this.loadWord(),i<<=e,n-=e)},this.readBits=function(e){var r=Math.min(n,e),a=i>>>32-r;return(n-=r)>0?i<<=r:t>0&&this.loadWord(),(r=e-r)>0?a<>>e))return i<<=e,n-=e,e;return this.loadWord(),e+this.skipLeadingZeros()},this.skipUnsignedExpGolomb=function(){this.skipBits(1+this.skipLeadingZeros())},this.skipExpGolomb=function(){this.skipBits(1+this.skipLeadingZeros())},this.readUnsignedExpGolomb=function(){var e=this.skipLeadingZeros();return this.readBits(e+1)-1},this.readExpGolomb=function(){var e=this.readUnsignedExpGolomb();return 1&e?1+e>>>1:-1*(e>>>1)},this.readBoolean=function(){return 1===this.readBits(1)},this.readUnsignedByte=function(){return this.readBits(8)},this.loadWord()};(lt=function(){var e,t,i=0;lt.prototype.init.call(this),this.push=function(n){var r;t?((r=new Uint8Array(t.byteLength+n.data.byteLength)).set(t),r.set(n.data,t.byteLength),t=r):t=n.data;for(var a=t.byteLength;i3&&this.trigger("data",t.subarray(i+3)),t=null,i=0,this.trigger("done")},this.endTimeline=function(){this.flush(),this.trigger("endedtimeline")}}).prototype=new V,ht={100:!0,110:!0,122:!0,244:!0,44:!0,83:!0,86:!0,118:!0,128:!0,138:!0,139:!0,134:!0},(ut=function(){var e,t,i,n,r,a,s,o=new lt;ut.prototype.init.call(this),e=this,this.push=function(e){"video"===e.type&&(t=e.trackId,i=e.pts,n=e.dts,o.push(e))},o.on("data",(function(s){var o={trackId:t,pts:i,dts:n,data:s,nalUnitTypeCode:31&s[0]};switch(o.nalUnitTypeCode){case 5:o.nalUnitType="slice_layer_without_partitioning_rbsp_idr";break;case 6:o.nalUnitType="sei_rbsp",o.escapedRBSP=r(s.subarray(1));break;case 7:o.nalUnitType="seq_parameter_set_rbsp",o.escapedRBSP=r(s.subarray(1)),o.config=a(o.escapedRBSP);break;case 8:o.nalUnitType="pic_parameter_set_rbsp";break;case 9:o.nalUnitType="access_unit_delimiter_rbsp"}e.trigger("data",o)})),o.on("done",(function(){e.trigger("done")})),o.on("partialdone",(function(){e.trigger("partialdone")})),o.on("reset",(function(){e.trigger("reset")})),o.on("endedtimeline",(function(){e.trigger("endedtimeline")})),this.flush=function(){o.flush()},this.partialFlush=function(){o.partialFlush()},this.reset=function(){o.reset()},this.endTimeline=function(){o.endTimeline()},s=function(e,t){var i,n=8,r=8;for(i=0;i=0?i:0,(16&e[t+5])>>4?i+20:i+10},_t=function(e){return e[0]<<21|e[1]<<14|e[2]<<7|e[3]},vt={isLikelyAacData:function(e){var t=function e(t,i){return t.length-i<10||t[i]!=="I".charCodeAt(0)||t[i+1]!=="D".charCodeAt(0)||t[i+2]!=="3".charCodeAt(0)?i:e(t,i+=gt(t,i))}(e,0);return e.length>=t+2&&255==(255&e[t])&&240==(240&e[t+1])&&16==(22&e[t+1])},parseId3TagSize:gt,parseAdtsSize:function(e,t){var i=(224&e[t+5])>>5,n=e[t+4]<<3;return 6144&e[t+3]|n|i},parseType:function(e,t){return e[t]==="I".charCodeAt(0)&&e[t+1]==="D".charCodeAt(0)&&e[t+2]==="3".charCodeAt(0)?"timed-metadata":!0&e[t]&&240==(240&e[t+1])?"audio":null},parseSampleRate:function(e){for(var t=0;t+5>>2];t++}return null},parseAacTimestamp:function(e){var t,i,n;t=10,64&e[5]&&(t+=4,t+=_t(e.subarray(10,14)));do{if((i=_t(e.subarray(t+4,t+8)))<1)return null;if("PRIV"===String.fromCharCode(e[t],e[t+1],e[t+2],e[t+3])){n=e.subarray(t+10,t+i+10);for(var r=0;r>>2;return s*=4,s+=3&a[7]}break}}t+=10,t+=i}while(t=3;)if(e[u]!=="I".charCodeAt(0)||e[u+1]!=="D".charCodeAt(0)||e[u+2]!=="3".charCodeAt(0))if(255!=(255&e[u])||240!=(240&e[u+1]))u++;else{if(e.length-u<7)break;if(u+(o=vt.parseAdtsSize(e,u))>e.length)break;a={type:"audio",data:e.subarray(u,u+o),pts:t,dts:t},this.trigger("data",a),u+=o}else{if(e.length-u<10)break;if(u+(o=vt.parseId3TagSize(e,u))>e.length)break;r={type:"timed-metadata",data:e.subarray(u,u+o)},this.trigger("data",r),u+=o}n=e.length-u,e=n>0?e.subarray(u):new Uint8Array},this.reset=function(){e=new Uint8Array,this.trigger("reset")},this.endTimeline=function(){e=new Uint8Array,this.trigger("endedtimeline")}}).prototype=new V;var yt,bt,Tt,St,Et=ft,wt=["audioobjecttype","channelcount","samplerate","samplingfrequencyindex","samplesize"],Ct=["width","height","profileIdc","levelIdc","profileCompatibility","sarRatio"],At=pt.H264Stream,kt=vt.isLikelyAacData,Pt=he,It=function(e,t){var i;if(e.length!==t.length)return!1;for(i=0;i=-1e4&&i<=45e3&&(!n||o>i)&&(n=a,o=i));return n?n.gop:null},this.alignGopsAtStart_=function(e){var t,i,n,r,a,o,u,l;for(a=e.byteLength,o=e.nalCount,u=e.duration,t=i=0;tn.pts?t++:(i++,a-=r.byteLength,o-=r.nalCount,u-=r.duration);return 0===i?e:i===e.length?null:((l=e.slice(i)).byteLength=a,l.duration=u,l.nalCount=o,l.pts=l[0].pts,l.dts=l[0].dts,l)},this.alignGopsAtEnd_=function(e){var t,i,n,r,a,o,u;for(t=s.length-1,i=e.length-1,a=null,o=!1;t>=0&&i>=0;){if(n=s[t],r=e[i],n.pts===r.pts){o=!0;break}n.pts>r.pts?t--:(t===s.length-1&&(a=i),i--)}if(!o&&null===a)return null;if(0===(u=o?i:a))return e;var l=e.slice(u),h=l.reduce((function(e,t){return e.byteLength+=t.byteLength,e.duration+=t.duration,e.nalCount+=t.nalCount,e}),{byteLength:0,duration:0,nalCount:0});return l.byteLength=h.byteLength,l.duration=h.duration,l.nalCount=h.nalCount,l.pts=l[0].pts,l.dts=l[0].dts,l},this.alignGopsWith=function(e){s=e}}).prototype=new V,(St=function(e,t){this.numberOfTracks=0,this.metadataStream=t,void 0!==(e=e||{}).remux?this.remuxTracks=!!e.remux:this.remuxTracks=!0,"boolean"==typeof e.keepOriginalTimestamps?this.keepOriginalTimestamps=e.keepOriginalTimestamps:this.keepOriginalTimestamps=!1,this.pendingTracks=[],this.videoTrack=null,this.pendingBoxes=[],this.pendingCaptions=[],this.pendingMetadata=[],this.pendingBytes=0,this.emittedTracks=0,St.prototype.init.call(this),this.push=function(e){return e.text?this.pendingCaptions.push(e):e.frames?this.pendingMetadata.push(e):(this.pendingTracks.push(e.track),this.pendingBytes+=e.boxes.byteLength,"video"===e.track.type&&(this.videoTrack=e.track,this.pendingBoxes.push(e.boxes)),void("audio"===e.track.type&&(this.audioTrack=e.track,this.pendingBoxes.unshift(e.boxes))))}}).prototype=new V,St.prototype.flush=function(e){var t,i,n,r,a=0,s={captions:[],captionStreams:{},metadata:[],info:{}},o=0;if(this.pendingTracks.length=this.numberOfTracks&&(this.trigger("done"),this.emittedTracks=0))}if(this.videoTrack?(o=this.videoTrack.timelineStartInfo.pts,Ct.forEach((function(e){s.info[e]=this.videoTrack[e]}),this)):this.audioTrack&&(o=this.audioTrack.timelineStartInfo.pts,wt.forEach((function(e){s.info[e]=this.audioTrack[e]}),this)),this.videoTrack||this.audioTrack){for(1===this.pendingTracks.length?s.type=this.pendingTracks[0].type:s.type="combined",this.emittedTracks+=this.pendingTracks.length,n=Z(this.pendingTracks),s.initSegment=new Uint8Array(n.byteLength),s.initSegment.set(n),s.data=new Uint8Array(this.pendingBytes),r=0;r=this.numberOfTracks&&(this.trigger("done"),this.emittedTracks=0)},St.prototype.setRemux=function(e){this.remuxTracks=e},(Tt=function(e){var t,i,n=this,r=!0;Tt.prototype.init.call(this),e=e||{},this.baseMediaDecodeTime=e.baseMediaDecodeTime||0,this.transmuxPipeline_={},this.setupAacPipeline=function(){var r={};this.transmuxPipeline_=r,r.type="aac",r.metadataStream=new at.MetadataStream,r.aacStream=new Et,r.audioTimestampRolloverStream=new at.TimestampRolloverStream("audio"),r.timedMetadataTimestampRolloverStream=new at.TimestampRolloverStream("timed-metadata"),r.adtsStream=new dt,r.coalesceStream=new St(e,r.metadataStream),r.headOfPipeline=r.aacStream,r.aacStream.pipe(r.audioTimestampRolloverStream).pipe(r.adtsStream),r.aacStream.pipe(r.timedMetadataTimestampRolloverStream).pipe(r.metadataStream).pipe(r.coalesceStream),r.metadataStream.on("timestamp",(function(e){r.aacStream.setTimestamp(e.timeStamp)})),r.aacStream.on("data",(function(a){"timed-metadata"!==a.type&&"audio"!==a.type||r.audioSegmentStream||(i=i||{timelineStartInfo:{baseMediaDecodeTime:n.baseMediaDecodeTime},codec:"adts",type:"audio"},r.coalesceStream.numberOfTracks++,r.audioSegmentStream=new bt(i,e),r.audioSegmentStream.on("log",n.getLogTrigger_("audioSegmentStream")),r.audioSegmentStream.on("timingInfo",n.trigger.bind(n,"audioTimingInfo")),r.adtsStream.pipe(r.audioSegmentStream).pipe(r.coalesceStream),n.trigger("trackinfo",{hasAudio:!!i,hasVideo:!!t}))})),r.coalesceStream.on("data",this.trigger.bind(this,"data")),r.coalesceStream.on("done",this.trigger.bind(this,"done"))},this.setupTsPipeline=function(){var r={};this.transmuxPipeline_=r,r.type="ts",r.metadataStream=new at.MetadataStream,r.packetStream=new at.TransportPacketStream,r.parseStream=new at.TransportParseStream,r.elementaryStream=new at.ElementaryStream,r.timestampRolloverStream=new at.TimestampRolloverStream,r.adtsStream=new dt,r.h264Stream=new At,r.captionStream=new at.CaptionStream(e),r.coalesceStream=new St(e,r.metadataStream),r.headOfPipeline=r.packetStream,r.packetStream.pipe(r.parseStream).pipe(r.elementaryStream).pipe(r.timestampRolloverStream),r.timestampRolloverStream.pipe(r.h264Stream),r.timestampRolloverStream.pipe(r.adtsStream),r.timestampRolloverStream.pipe(r.metadataStream).pipe(r.coalesceStream),r.h264Stream.pipe(r.captionStream).pipe(r.coalesceStream),r.elementaryStream.on("data",(function(a){var s;if("metadata"===a.type){for(s=a.tracks.length;s--;)t||"video"!==a.tracks[s].type?i||"audio"!==a.tracks[s].type||((i=a.tracks[s]).timelineStartInfo.baseMediaDecodeTime=n.baseMediaDecodeTime):(t=a.tracks[s]).timelineStartInfo.baseMediaDecodeTime=n.baseMediaDecodeTime;t&&!r.videoSegmentStream&&(r.coalesceStream.numberOfTracks++,r.videoSegmentStream=new yt(t,e),r.videoSegmentStream.on("log",n.getLogTrigger_("videoSegmentStream")),r.videoSegmentStream.on("timelineStartInfo",(function(t){i&&!e.keepOriginalTimestamps&&(i.timelineStartInfo=t,r.audioSegmentStream.setEarliestDts(t.dts-n.baseMediaDecodeTime))})),r.videoSegmentStream.on("processedGopsInfo",n.trigger.bind(n,"gopInfo")),r.videoSegmentStream.on("segmentTimingInfo",n.trigger.bind(n,"videoSegmentTimingInfo")),r.videoSegmentStream.on("baseMediaDecodeTime",(function(e){i&&r.audioSegmentStream.setVideoBaseMediaDecodeTime(e)})),r.videoSegmentStream.on("timingInfo",n.trigger.bind(n,"videoTimingInfo")),r.h264Stream.pipe(r.videoSegmentStream).pipe(r.coalesceStream)),i&&!r.audioSegmentStream&&(r.coalesceStream.numberOfTracks++,r.audioSegmentStream=new bt(i,e),r.audioSegmentStream.on("log",n.getLogTrigger_("audioSegmentStream")),r.audioSegmentStream.on("timingInfo",n.trigger.bind(n,"audioTimingInfo")),r.audioSegmentStream.on("segmentTimingInfo",n.trigger.bind(n,"audioSegmentTimingInfo")),r.adtsStream.pipe(r.audioSegmentStream).pipe(r.coalesceStream)),n.trigger("trackinfo",{hasAudio:!!i,hasVideo:!!t})}})),r.coalesceStream.on("data",this.trigger.bind(this,"data")),r.coalesceStream.on("id3Frame",(function(e){e.dispatchType=r.metadataStream.dispatchType,n.trigger("id3Frame",e)})),r.coalesceStream.on("caption",this.trigger.bind(this,"caption")),r.coalesceStream.on("done",this.trigger.bind(this,"done"))},this.setBaseMediaDecodeTime=function(n){var r=this.transmuxPipeline_;e.keepOriginalTimestamps||(this.baseMediaDecodeTime=n),i&&(i.timelineStartInfo.dts=void 0,i.timelineStartInfo.pts=void 0,Te(i),r.audioTimestampRolloverStream&&r.audioTimestampRolloverStream.discontinuity()),t&&(r.videoSegmentStream&&(r.videoSegmentStream.gopCache_=[]),t.timelineStartInfo.dts=void 0,t.timelineStartInfo.pts=void 0,Te(t),r.captionStream.reset()),r.timestampRolloverStream&&r.timestampRolloverStream.discontinuity()},this.setAudioAppendStart=function(e){i&&this.transmuxPipeline_.audioSegmentStream.setAudioAppendStart(e)},this.setRemux=function(t){var i=this.transmuxPipeline_;e.remux=t,i&&i.coalesceStream&&i.coalesceStream.setRemux(t)},this.alignGopsWith=function(e){t&&this.transmuxPipeline_.videoSegmentStream&&this.transmuxPipeline_.videoSegmentStream.alignGopsWith(e)},this.getLogTrigger_=function(e){var t=this;return function(i){i.stream=e,t.trigger("log",i)}},this.push=function(e){if(r){var t=kt(e);if(t&&"aac"!==this.transmuxPipeline_.type?this.setupAacPipeline():t||"ts"===this.transmuxPipeline_.type||this.setupTsPipeline(),this.transmuxPipeline_)for(var i=Object.keys(this.transmuxPipeline_),n=0;n>>0},Mt=function(e){var t="";return t+=String.fromCharCode(e[0]),t+=String.fromCharCode(e[1]),t+=String.fromCharCode(e[2]),t+=String.fromCharCode(e[3])},Ft=Ut,Bt=function e(t,i){var n,r,a,s,o,u=[];if(!i.length)return null;for(n=0;n1?n+r:t.byteLength,a===i[0]&&(1===i.length?u.push(t.subarray(n+8,s)):(o=e(t.subarray(n+8,s),i.slice(1))).length&&(u=u.concat(o))),n=s;return u},Nt=Ut,jt=function(e){var t={version:e[0],flags:new Uint8Array(e.subarray(1,4)),baseMediaDecodeTime:Nt(e[4]<<24|e[5]<<16|e[6]<<8|e[7])};return 1===t.version&&(t.baseMediaDecodeTime*=Math.pow(2,32),t.baseMediaDecodeTime+=Nt(e[8]<<24|e[9]<<16|e[10]<<8|e[11])),t},Vt=function(e){return{isLeading:(12&e[0])>>>2,dependsOn:3&e[0],isDependedOn:(192&e[1])>>>6,hasRedundancy:(48&e[1])>>>4,paddingValue:(14&e[1])>>>1,isNonSyncSample:1&e[1],degradationPriority:e[2]<<8|e[3]}},Ht=function(e){var t,i={version:e[0],flags:new Uint8Array(e.subarray(1,4)),samples:[]},n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=1&i.flags[2],a=4&i.flags[2],s=1&i.flags[1],o=2&i.flags[1],u=4&i.flags[1],l=8&i.flags[1],h=n.getUint32(4),d=8;for(r&&(i.dataOffset=n.getInt32(d),d+=4),a&&h&&(t={flags:Vt(e.subarray(d,d+4))},d+=4,s&&(t.duration=n.getUint32(d),d+=4),o&&(t.size=n.getUint32(d),d+=4),l&&(1===i.version?t.compositionTimeOffset=n.getInt32(d):t.compositionTimeOffset=n.getUint32(d),d+=4),i.samples.push(t),h--);h--;)t={},s&&(t.duration=n.getUint32(d),d+=4),o&&(t.size=n.getUint32(d),d+=4),u&&(t.flags=Vt(e.subarray(d,d+4)),d+=4),l&&(1===i.version?t.compositionTimeOffset=n.getInt32(d):t.compositionTimeOffset=n.getUint32(d),d+=4),i.samples.push(t);return i},zt=function(e){var t,i=new DataView(e.buffer,e.byteOffset,e.byteLength),n={version:e[0],flags:new Uint8Array(e.subarray(1,4)),trackId:i.getUint32(4)},r=1&n.flags[2],a=2&n.flags[2],s=8&n.flags[2],o=16&n.flags[2],u=32&n.flags[2],l=65536&n.flags[0],h=131072&n.flags[0];return t=8,r&&(t+=4,n.baseDataOffset=i.getUint32(12),t+=4),a&&(n.sampleDescriptionIndex=i.getUint32(t),t+=4),s&&(n.defaultSampleDuration=i.getUint32(t),t+=4),o&&(n.defaultSampleSize=i.getUint32(t),t+=4),u&&(n.defaultSampleFlags=i.getUint32(t)),l&&(n.durationIsEmpty=!0),!r&&h&&(n.baseDataOffsetIsMoof=!0),n},Gt=ke,Wt=je.CaptionStream,Yt=function(e,t){for(var i=e,n=0;n0?jt(l[0]).baseMediaDecodeTime:0,d=Bt(a,["trun"]);t===u&&d.length>0&&(i=function(e,t,i){var n,r,a,s,o=new DataView(e.buffer,e.byteOffset,e.byteLength),u={logs:[],seiNals:[]};for(r=0;r+40;){var u=t.shift();this.parse(u,a,s)}return(o=function(e,t,i){if(null===t)return null;var n=qt(e,t)[t]||{};return{seiNals:n.seiNals,logs:n.logs,timescale:i}}(e,i,n))&&o.logs&&(r.logs=r.logs.concat(o.logs)),null!==o&&o.seiNals?(this.pushNals(o.seiNals),this.flushStream(),r):r.logs.length?{logs:r.logs,captions:[],captionStreams:[]}:null},this.pushNals=function(t){if(!this.isInitialized()||!t||0===t.length)return null;t.forEach((function(t){e.push(t)}))},this.flushStream=function(){if(!this.isInitialized())return null;a?e.partialFlush():e.flush()},this.clearParsedCaptions=function(){r.captions=[],r.captionStreams={},r.logs=[]},this.resetCaptionStream=function(){if(!this.isInitialized())return null;e.reset()},this.clearAllCaptions=function(){this.clearParsedCaptions(),this.resetCaptionStream()},this.reset=function(){t=[],i=null,n=null,r?this.clearParsedCaptions():r={captions:[],captionStreams:{},logs:[]},this.resetCaptionStream()},this.reset()},Xt=Ut,Qt=function(e){return("00"+e.toString(16)).slice(-2)};xt=function(e,t){var i,n,r;return i=Bt(t,["moof","traf"]),n=[].concat.apply([],i.map((function(t){return Bt(t,["tfhd"]).map((function(i){var n,r,a;return n=Xt(i[4]<<24|i[5]<<16|i[6]<<8|i[7]),r=e[n]||9e4,(a="number"!=typeof(a=Bt(t,["tfdt"]).map((function(e){var t,i;return t=e[0],i=Xt(e[4]<<24|e[5]<<16|e[6]<<8|e[7]),1===t&&(i*=Math.pow(2,32),i+=Xt(e[8]<<24|e[9]<<16|e[10]<<8|e[11])),i}))[0])||isNaN(a)?1/0:a)/r}))}))),r=Math.min.apply(null,n),isFinite(r)?r:0},Dt=function(e){var t=Bt(e,["moov","trak"]),i=[];return t.forEach((function(e){var t,n,r={},a=Bt(e,["tkhd"])[0];a&&(n=(t=new DataView(a.buffer,a.byteOffset,a.byteLength)).getUint8(0),r.id=0===n?t.getUint32(12):t.getUint32(20));var s=Bt(e,["mdia","hdlr"])[0];if(s){var o=Mt(s.subarray(8,12));r.type="vide"===o?"video":"soun"===o?"audio":o}var u=Bt(e,["mdia","minf","stbl","stsd"])[0];if(u){var l=u.subarray(8);r.codec=Mt(l.subarray(4,8));var h,d=Bt(l,[r.codec])[0];d&&(/^[a-z]vc[1-9]$/i.test(r.codec)?(h=d.subarray(78),"avcC"===Mt(h.subarray(4,8))&&h.length>11?(r.codec+=".",r.codec+=Qt(h[9]),r.codec+=Qt(h[10]),r.codec+=Qt(h[11])):r.codec="avc1.4d400d"):/^mp4[a,v]$/i.test(r.codec)?(h=d.subarray(28),"esds"===Mt(h.subarray(4,8))&&h.length>20&&0!==h[19]?(r.codec+="."+Qt(h[19]),r.codec+="."+Qt(h[20]>>>2&63).replace(/^0/,"")):r.codec="mp4a.40.2"):r.codec=r.codec.toLowerCase())}var c=Bt(e,["mdia","mdhd"])[0];c&&(r.timescale=Rt(c)),i.push(r)})),i};var $t=xt,Jt=Dt,Zt=(Rt=function(e){var t=0===e[0]?12:20;return Xt(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])},function(e){var t=31&e[1];return t<<=8,t|=e[2]}),ei=function(e){return!!(64&e[1])},ti=function(e){var t=0;return(48&e[3])>>>4>1&&(t+=e[4]+1),t},ii=function(e){switch(e){case 5:return"slice_layer_without_partitioning_rbsp_idr";case 6:return"sei_rbsp";case 7:return"seq_parameter_set_rbsp";case 8:return"pic_parameter_set_rbsp";case 9:return"access_unit_delimiter_rbsp";default:return null}},ni={parseType:function(e,t){var i=Zt(e);return 0===i?"pat":i===t?"pmt":t?"pes":null},parsePat:function(e){var t=ei(e),i=4+ti(e);return t&&(i+=e[i]+1),(31&e[i+10])<<8|e[i+11]},parsePmt:function(e){var t={},i=ei(e),n=4+ti(e);if(i&&(n+=e[n]+1),1&e[n+5]){var r;r=3+((15&e[n+1])<<8|e[n+2])-4;for(var a=12+((15&e[n+10])<<8|e[n+11]);a=e.byteLength)return null;var i,n=null;return 192&(i=e[t+7])&&((n={}).pts=(14&e[t+9])<<27|(255&e[t+10])<<20|(254&e[t+11])<<12|(255&e[t+12])<<5|(254&e[t+13])>>>3,n.pts*=4,n.pts+=(6&e[t+13])>>>1,n.dts=n.pts,64&i&&(n.dts=(14&e[t+14])<<27|(255&e[t+15])<<20|(254&e[t+16])<<12|(255&e[t+17])<<5|(254&e[t+18])>>>3,n.dts*=4,n.dts+=(6&e[t+18])>>>1)),n},videoPacketContainsKeyFrame:function(e){for(var t=4+ti(e),i=e.subarray(t),n=0,r=0,a=!1;r3&&"slice_layer_without_partitioning_rbsp_idr"===ii(31&i[r+3])&&(a=!0),a}},ri=Ye,ai={};ai.ts=ni,ai.aac=vt;var si=he,oi=function(e,t,i){for(var n,r,a,s,o=0,u=188,l=!1;u<=e.byteLength;)if(71!==e[o]||71!==e[u]&&u!==e.byteLength)o++,u++;else{switch(n=e.subarray(o,u),ai.ts.parseType(n,t.pid)){case"pes":r=ai.ts.parsePesType(n,t.table),a=ai.ts.parsePayloadUnitStartIndicator(n),"audio"===r&&a&&(s=ai.ts.parsePesTime(n))&&(s.type="audio",i.audio.push(s),l=!0)}if(l)break;o+=188,u+=188}for(o=(u=e.byteLength)-188,l=!1;o>=0;)if(71!==e[o]||71!==e[u]&&u!==e.byteLength)o--,u--;else{switch(n=e.subarray(o,u),ai.ts.parseType(n,t.pid)){case"pes":r=ai.ts.parsePesType(n,t.table),a=ai.ts.parsePayloadUnitStartIndicator(n),"audio"===r&&a&&(s=ai.ts.parsePesTime(n))&&(s.type="audio",i.audio.push(s),l=!0)}if(l)break;o-=188,u-=188}},ui=function(e,t,i){for(var n,r,a,s,o,u,l,h=0,d=188,c=!1,f={data:[],size:0};d=0;)if(71!==e[h]||71!==e[d])h--,d--;else{switch(n=e.subarray(h,d),ai.ts.parseType(n,t.pid)){case"pes":r=ai.ts.parsePesType(n,t.table),a=ai.ts.parsePayloadUnitStartIndicator(n),"video"===r&&a&&(s=ai.ts.parsePesTime(n))&&(s.type="video",i.video.push(s),c=!0)}if(c)break;h-=188,d-=188}},li=function(e){var t={pid:null,table:null},i={};for(var n in function(e,t){for(var i,n=0,r=188;r=3;){switch(ai.aac.parseType(e,o)){case"timed-metadata":if(e.length-o<10){i=!0;break}if((s=ai.aac.parseId3TagSize(e,o))>e.length){i=!0;break}null===a&&(t=e.subarray(o,o+s),a=ai.aac.parseAacTimestamp(t)),o+=s;break;case"audio":if(e.length-o<7){i=!0;break}if((s=ai.aac.parseAdtsSize(e,o))>e.length){i=!0;break}null===r&&(t=e.subarray(o,o+s),r=ai.aac.parseSampleRate(t)),n++,o+=s;break;default:o++}if(i)return null}if(null===r||null===a)return null;var u=si/r;return{audio:[{type:"audio",dts:a,pts:a},{type:"audio",dts:a+1024*n*u,pts:a+1024*n*u}]}}(e):li(e))&&(i.audio||i.video)?(function(e,t){if(e.audio&&e.audio.length){var i=t;(void 0===i||isNaN(i))&&(i=e.audio[0].dts),e.audio.forEach((function(e){e.dts=ri(e.dts,i),e.pts=ri(e.pts,i),e.dtsTime=e.dts/si,e.ptsTime=e.pts/si}))}if(e.video&&e.video.length){var n=t;if((void 0===n||isNaN(n))&&(n=e.video[0].dts),e.video.forEach((function(e){e.dts=ri(e.dts,n),e.pts=ri(e.pts,n),e.dtsTime=e.dts/si,e.ptsTime=e.pts/si})),e.firstKeyFrame){var r=e.firstKeyFrame;r.dts=ri(r.dts,n),r.pts=ri(r.pts,n),r.dtsTime=r.dts/si,r.ptsTime=r.pts/si}}}(i,t),i):null},di=function(){function e(e,t){this.options=t||{},this.self=e,this.init()}var t=e.prototype;return t.init=function(){this.transmuxer&&this.transmuxer.dispose(),this.transmuxer=new Ot.Transmuxer(this.options),function(e,t){t.on("data",(function(t){var i=t.initSegment;t.initSegment={data:i.buffer,byteOffset:i.byteOffset,byteLength:i.byteLength};var n=t.data;t.data=n.buffer,e.postMessage({action:"data",segment:t,byteOffset:n.byteOffset,byteLength:n.byteLength},[t.data])})),t.on("done",(function(t){e.postMessage({action:"done"})})),t.on("gopInfo",(function(t){e.postMessage({action:"gopInfo",gopInfo:t})})),t.on("videoSegmentTimingInfo",(function(t){var i={start:{decode:ce(t.start.dts),presentation:ce(t.start.pts)},end:{decode:ce(t.end.dts),presentation:ce(t.end.pts)},baseMediaDecodeTime:ce(t.baseMediaDecodeTime)};t.prependedContentDuration&&(i.prependedContentDuration=ce(t.prependedContentDuration)),e.postMessage({action:"videoSegmentTimingInfo",videoSegmentTimingInfo:i})})),t.on("audioSegmentTimingInfo",(function(t){var i={start:{decode:ce(t.start.dts),presentation:ce(t.start.pts)},end:{decode:ce(t.end.dts),presentation:ce(t.end.pts)},baseMediaDecodeTime:ce(t.baseMediaDecodeTime)};t.prependedContentDuration&&(i.prependedContentDuration=ce(t.prependedContentDuration)),e.postMessage({action:"audioSegmentTimingInfo",audioSegmentTimingInfo:i})})),t.on("id3Frame",(function(t){e.postMessage({action:"id3Frame",id3Frame:t})})),t.on("caption",(function(t){e.postMessage({action:"caption",caption:t})})),t.on("trackinfo",(function(t){e.postMessage({action:"trackinfo",trackInfo:t})})),t.on("audioTimingInfo",(function(t){e.postMessage({action:"audioTimingInfo",audioTimingInfo:{start:ce(t.start),end:ce(t.end)}})})),t.on("videoTimingInfo",(function(t){e.postMessage({action:"videoTimingInfo",videoTimingInfo:{start:ce(t.start),end:ce(t.end)}})})),t.on("log",(function(t){e.postMessage({action:"log",log:t})}))}(this.self,this.transmuxer)},t.pushMp4Captions=function(e){this.captionParser||(this.captionParser=new Kt,this.captionParser.init());var t=new Uint8Array(e.data,e.byteOffset,e.byteLength),i=this.captionParser.parse(t,e.trackIds,e.timescales);this.self.postMessage({action:"mp4Captions",captions:i&&i.captions||[],logs:i&&i.logs||[],data:t.buffer},[t.buffer])},t.probeMp4StartTime=function(e){var t=e.timescales,i=e.data,n=$t(t,i);this.self.postMessage({action:"probeMp4StartTime",startTime:n,data:i},[i.buffer])},t.probeMp4Tracks=function(e){var t=e.data,i=Jt(t);this.self.postMessage({action:"probeMp4Tracks",tracks:i,data:t},[t.buffer])},t.probeTs=function(e){var t=e.data,i=e.baseStartTime,n="number"!=typeof i||isNaN(i)?void 0:i*he,r=hi(t,n),a=null;r&&((a={hasVideo:r.video&&2===r.video.length||!1,hasAudio:r.audio&&2===r.audio.length||!1}).hasVideo&&(a.videoStart=r.video[0].ptsTime),a.hasAudio&&(a.audioStart=r.audio[0].ptsTime)),this.self.postMessage({action:"probeTs",result:a,data:t},[t.buffer])},t.clearAllMp4Captions=function(){this.captionParser&&this.captionParser.clearAllCaptions()},t.clearParsedMp4Captions=function(){this.captionParser&&this.captionParser.clearParsedCaptions()},t.push=function(e){var t=new Uint8Array(e.data,e.byteOffset,e.byteLength);this.transmuxer.push(t)},t.reset=function(){this.transmuxer.reset()},t.setTimestampOffset=function(e){var t=e.timestampOffset||0;this.transmuxer.setBaseMediaDecodeTime(Math.round(de(t)))},t.setAudioAppendStart=function(e){this.transmuxer.setAudioAppendStart(Math.ceil(de(e.appendStart)))},t.setRemux=function(e){this.transmuxer.setRemux(e.remux)},t.flush=function(e){this.transmuxer.flush(),self.postMessage({action:"done",type:"transmuxed"})},t.endTimeline=function(){this.transmuxer.endTimeline(),self.postMessage({action:"endedtimeline",type:"transmuxed"})},t.alignGopsWith=function(e){this.transmuxer.alignGopsWith(e.gopsToAlignWith.slice())},e}();self.onmessage=function(e){"init"===e.data.action&&e.data.options?this.messageHandlers=new di(self,e.data.options):(this.messageHandlers||(this.messageHandlers=new di(self)),e.data&&e.data.action&&"init"!==e.data.action&&this.messageHandlers[e.data.action]&&this.messageHandlers[e.data.action](e.data))}})))),ls=function(e){var t=e.transmuxer,i=e.bytes,n=e.audioAppendStart,r=e.gopsToAlignWith,a=e.remux,s=e.onData,o=e.onTrackInfo,u=e.onAudioTimingInfo,l=e.onVideoTimingInfo,h=e.onVideoSegmentTimingInfo,d=e.onAudioSegmentTimingInfo,c=e.onId3,f=e.onCaptions,p=e.onDone,m=e.onEndedTimeline,g=e.onTransmuxerLog,_=e.isEndOfTimeline,v={buffer:[]},y=_;if(t.onmessage=function(i){t.currentTransmux===e&&("data"===i.data.action&&function(e,t,i){var n=e.data.segment,r=n.type,a=n.initSegment,s=n.captions,o=n.captionStreams,u=n.metadata,l=n.videoFrameDtsTime,h=n.videoFramePtsTime;t.buffer.push({captions:s,captionStreams:o,metadata:u});var d=e.data.segment.boxes||{data:e.data.segment.data},c={type:r,data:new Uint8Array(d.data,d.data.byteOffset,d.data.byteLength),initSegment:new Uint8Array(a.data,a.byteOffset,a.byteLength)};void 0!==l&&(c.videoFrameDtsTime=l),void 0!==h&&(c.videoFramePtsTime=h),i(c)}(i,v,s),"trackinfo"===i.data.action&&o(i.data.trackInfo),"gopInfo"===i.data.action&&function(e,t){t.gopInfo=e.data.gopInfo}(i,v),"audioTimingInfo"===i.data.action&&u(i.data.audioTimingInfo),"videoTimingInfo"===i.data.action&&l(i.data.videoTimingInfo),"videoSegmentTimingInfo"===i.data.action&&h(i.data.videoSegmentTimingInfo),"audioSegmentTimingInfo"===i.data.action&&d(i.data.audioSegmentTimingInfo),"id3Frame"===i.data.action&&c([i.data.id3Frame],i.data.id3Frame.dispatchType),"caption"===i.data.action&&f(i.data.caption),"endedtimeline"===i.data.action&&(y=!1,m()),"log"===i.data.action&&g(i.data.log),"transmuxed"===i.data.type&&(y||(t.onmessage=null,function(e){var t=e.transmuxedData,i=e.callback;t.buffer=[],i(t)}({transmuxedData:v,callback:p}),hs(t))))},n&&t.postMessage({action:"setAudioAppendStart",appendStart:n}),Array.isArray(r)&&t.postMessage({action:"alignGopsWith",gopsToAlignWith:r}),void 0!==a&&t.postMessage({action:"setRemux",remux:a}),i.byteLength){var b=i instanceof ArrayBuffer?i:i.buffer,T=i instanceof ArrayBuffer?0:i.byteOffset;t.postMessage({action:"push",data:b,byteOffset:T,byteLength:i.byteLength},[b])}_&&t.postMessage({action:"endTimeline"}),t.postMessage({action:"flush"})},hs=function(e){e.currentTransmux=null,e.transmuxQueue.length&&(e.currentTransmux=e.transmuxQueue.shift(),"function"==typeof e.currentTransmux?e.currentTransmux():ls(e.currentTransmux))},ds=function(e,t){e.postMessage({action:t}),hs(e)},cs=function(e,t){if(!t.currentTransmux)return t.currentTransmux=e,void ds(t,e);t.transmuxQueue.push(ds.bind(null,t,e))},fs=function(e){if(!e.transmuxer.currentTransmux)return e.transmuxer.currentTransmux=e,void ls(e);e.transmuxer.transmuxQueue.push(e)},ps=function(e){cs("reset",e)},ms=function(e){var t=new us;t.currentTransmux=null,t.transmuxQueue=[];var i=t.terminate;return t.terminate=function(){return t.currentTransmux=null,t.transmuxQueue.length=0,i.call(t)},t.postMessage({action:"init",options:e}),t},gs=function(e){var t=e.transmuxer,i=e.endAction||e.action,n=e.callback,r=P.default({},e,{endAction:null,transmuxer:null,callback:null});if(t.addEventListener("message",(function r(a){a.data.action===i&&(t.removeEventListener("message",r),a.data.data&&(a.data.data=new Uint8Array(a.data.data,e.byteOffset||0,e.byteLength||a.data.data.byteLength),e.data&&(e.data=a.data.data)),n(a.data))})),e.data){var a=e.data instanceof ArrayBuffer;r.byteOffset=a?0:e.data.byteOffset,r.byteLength=e.data.byteLength;var s=[a?e.data:e.data.buffer];t.postMessage(r,s)}else t.postMessage(r)},_s=2,vs=-101,ys=-102,bs=function(e){e.forEach((function(e){e.abort()}))},Ts=function(e,t){return t.timedout?{status:t.status,message:"HLS request timed-out at URL: "+t.uri,code:vs,xhr:t}:t.aborted?{status:t.status,message:"HLS request aborted at URL: "+t.uri,code:ys,xhr:t}:e?{status:t.status,message:"HLS request errored at URL: "+t.uri,code:_s,xhr:t}:"arraybuffer"===t.responseType&&0===t.response.byteLength?{status:t.status,message:"Empty HLS response at URL: "+t.uri,code:_s,xhr:t}:null},Ss=function(e,t,i){return function(n,r){var a=r.response,s=Ts(n,r);if(s)return i(s,e);if(16!==a.byteLength)return i({status:r.status,message:"Invalid HLS key at URL: "+r.uri,code:_s,xhr:r},e);for(var o=new DataView(a),u=new Uint32Array([o.getUint32(0),o.getUint32(4),o.getUint32(8),o.getUint32(12)]),l=0;l1)return xs("multiple "+e+" codecs found as attributes: "+t[e].join(", ")+". Setting playlist codecs to null so that we wait for mux.js to probe segments for real codecs."),void(t[e]=null);t[e]=t[e][0]})),t},Os=function(e){var t=0;return e.audio&&t++,e.video&&t++,t},Us=function(e,t){var i=t.attributes||{},n=Rs(function(e){var t=e.attributes||{};if(t.CODECS)return g.parseCodecs(t.CODECS)}(t)||[]);if(Ds(e,t)&&!n.audio&&!function(e,t){if(!Ds(e,t))return!0;var i=t.attributes||{},n=e.mediaGroups.AUDIO[i.AUDIO];for(var r in n)if(!n[r].uri&&!n[r].playlists)return!0;return!1}(e,t)){var r=Rs(g.codecsFromDefault(e,i.AUDIO)||[]);r.audio&&(n.audio=r.audio)}return n},Ms=$r("PlaylistSelector"),Fs=function(e){if(e&&e.playlist){var t=e.playlist;return JSON.stringify({id:t.id,bandwidth:e.bandwidth,width:e.width,height:e.height,codecs:t.attributes&&t.attributes.CODECS||""})}},Bs=function(e,t){if(!e)return"";var i=A.default.getComputedStyle(e);return i?i[t]:""},Ns=function(e,t){var i=e.slice();e.sort((function(e,n){var r=t(e,n);return 0===r?i.indexOf(e)-i.indexOf(n):r}))},js=function(e,t){var i,n;return e.attributes.BANDWIDTH&&(i=e.attributes.BANDWIDTH),i=i||A.default.Number.MAX_VALUE,t.attributes.BANDWIDTH&&(n=t.attributes.BANDWIDTH),i-(n=n||A.default.Number.MAX_VALUE)},Vs=function(e,t,i,n,r,a){if(e){var s={bandwidth:t,width:i,height:n,limitRenditionByPlayerDimensions:r},o=e.playlists;Ta.isAudioOnly(e)&&(o=a.getAudioTrackPlaylists_(),s.audioOnly=!0);var u=o.map((function(e){var t=e.attributes&&e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width,i=e.attributes&&e.attributes.RESOLUTION&&e.attributes.RESOLUTION.height;return{bandwidth:e.attributes&&e.attributes.BANDWIDTH||A.default.Number.MAX_VALUE,width:t,height:i,playlist:e}}));Ns(u,(function(e,t){return e.bandwidth-t.bandwidth}));var l=(u=u.filter((function(e){return!Ta.isIncompatible(e.playlist)}))).filter((function(e){return Ta.isEnabled(e.playlist)}));l.length||(l=u.filter((function(e){return!Ta.isDisabled(e.playlist)})));var h=l.filter((function(e){return e.bandwidth*ns.BANDWIDTH_VARIANCEi||e.height>n}))).filter((function(e){return e.width===_[0].width&&e.height===_[0].height})),d=v[v.length-1],y=v.filter((function(e){return e.bandwidth===d.bandwidth}))[0]),a.experimentalLeastPixelDiffSelector){var S=m.map((function(e){return e.pixelDiff=Math.abs(e.width-i)+Math.abs(e.height-n),e}));Ns(S,(function(e,t){return e.pixelDiff===t.pixelDiff?t.bandwidth-e.bandwidth:e.pixelDiff-t.pixelDiff})),b=S[0]}var E=b||y||T||c||l[0]||u[0];if(E&&E.playlist){var w="sortedPlaylistReps";return b?w="leastPixelDiffRep":y?w="resolutionPlusOneRep":T?w="resolutionBestRep":c?w="bandwidthBestRep":l[0]&&(w="enabledPlaylistReps"),Ms("choosing "+Fs(E)+" using "+w+" with options",s),E.playlist}return Ms("could not choose a playlist with options",s),null}},Hs=function(){var e=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return Vs(this.playlists.master,this.systemBandwidth,parseInt(Bs(this.tech_.el(),"width"),10)*e,parseInt(Bs(this.tech_.el(),"height"),10)*e,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)},zs=function(e){var t=e.inbandTextTracks,i=e.metadataArray,n=e.timestampOffset,r=e.videoDuration;if(i){var a=A.default.WebKitDataCue||A.default.VTTCue,s=t.metadataTrack_;if(s&&(i.forEach((function(e){var t=e.cueTime+n;!("number"!=typeof t||A.default.isNaN(t)||t<0)&&t<1/0&&e.frames.forEach((function(e){var i=new a(t,t,e.value||e.url||e.data||"");i.frame=e,i.value=e,function(e){Object.defineProperties(e.frame,{id:{get:function(){return Yr.log.warn("cue.frame.id is deprecated. Use cue.value.key instead."),e.value.key}},value:{get:function(){return Yr.log.warn("cue.frame.value is deprecated. Use cue.value.data instead."),e.value.data}},privateData:{get:function(){return Yr.log.warn("cue.frame.privateData is deprecated. Use cue.value.data instead."),e.value.data}}})}(i),s.addCue(i)}))})),s.cues&&s.cues.length)){for(var o=s.cues,u=[],l=0;l=e&&r.endTime<=t&&i.removeCue(r)},Ws=function(e){return"number"==typeof e&&isFinite(e)},Ys=function(e){var t=e.startOfSegment,i=e.duration,n=e.segment,r=e.part,a=e.playlist,s=a.mediaSequence,o=a.id,u=a.segments,l=void 0===u?[]:u,h=e.mediaIndex,d=e.partIndex,c=e.timeline,f=l.length-1,p="mediaIndex/partIndex increment";e.getMediaInfoForTime?p="getMediaInfoForTime ("+e.getMediaInfoForTime+")":e.isSyncRequest&&(p="getSyncSegmentCandidate (isSyncRequest)");var m="number"==typeof d,g=e.segment.uri?"segment":"pre-segment",_=m?oa({preloadSegment:n})-1:0;return g+" ["+(s+h)+"/"+(s+f)+"]"+(m?" part ["+d+"/"+_+"]":"")+" segment start/end ["+n.start+" => "+n.end+"]"+(m?" part start/end ["+r.start+" => "+r.end+"]":"")+" startOfSegment ["+t+"] duration ["+i+"] timeline ["+c+"] selected by ["+p+"] playlist ["+o+"]"},qs=function(e){return e+"TimingInfo"},Ks=function(e){var t=e.timelineChangeController,i=e.currentTimeline,n=e.segmentTimeline,r=e.loaderType,a=e.audioDisabled;if(i===n)return!1;if("audio"===r){var s=t.lastTimelineChange({type:"main"});return!s||s.to!==n}if("main"===r&&a){var o=t.pendingTimelineChange({type:"audio"});return!o||o.to!==n}return!1},Xs=function(e){var t=e.segmentDuration,i=e.maxDuration;return!!t&&Math.round(t)>i+1/30},Qs=function(e,t){if("hls"!==t)return null;var i,n,r,a,s=(i=e.audioTimingInfo,n=e.videoTimingInfo,r=i&&"number"==typeof i.start&&"number"==typeof i.end?i.end-i.start:0,a=n&&"number"==typeof n.start&&"number"==typeof n.end?n.end-n.start:0,Math.max(r,a));if(!s)return null;var o=e.playlist.targetDuration,u=Xs({segmentDuration:s,maxDuration:2*o}),l=Xs({segmentDuration:s,maxDuration:o}),h="Segment with index "+e.mediaIndex+" from playlist "+e.playlist.id+" has a duration of "+s+" when the reported duration is "+e.duration+" and the target duration is "+o+". For HLS content, a duration in excess of the target duration may result in playback issues. See the HLS specification section on EXT-X-TARGETDURATION for more details: https://tools.ietf.org/html/draft-pantos-http-live-streaming-23#section-4.3.3.1";return u||l?{severity:u?"warn":"info",message:h}:null},$s=function(e){function t(t,i){var n;if(n=e.call(this)||this,!t)throw new TypeError("Initialization settings are required");if("function"!=typeof t.currentTime)throw new TypeError("No currentTime getter specified");if(!t.mediaSource)throw new TypeError("No MediaSource specified");return n.bandwidth=t.bandwidth,n.throughput={rate:0,count:0},n.roundTrip=NaN,n.resetStats_(),n.mediaIndex=null,n.partIndex=null,n.hasPlayed_=t.hasPlayed,n.currentTime_=t.currentTime,n.seekable_=t.seekable,n.seeking_=t.seeking,n.duration_=t.duration,n.mediaSource_=t.mediaSource,n.vhs_=t.vhs,n.loaderType_=t.loaderType,n.currentMediaInfo_=void 0,n.startingMediaInfo_=void 0,n.segmentMetadataTrack_=t.segmentMetadataTrack,n.goalBufferLength_=t.goalBufferLength,n.sourceType_=t.sourceType,n.sourceUpdater_=t.sourceUpdater,n.inbandTextTracks_=t.inbandTextTracks,n.state_="INIT",n.timelineChangeController_=t.timelineChangeController,n.shouldSaveSegmentTimingInfo_=!0,n.parse708captions_=t.parse708captions,n.experimentalExactManifestTimings=t.experimentalExactManifestTimings,n.checkBufferTimeout_=null,n.error_=void 0,n.currentTimeline_=-1,n.pendingSegment_=null,n.xhrOptions_=null,n.pendingSegments_=[],n.audioDisabled_=!1,n.isPendingTimestampOffset_=!1,n.gopBuffer_=[],n.timeMapping_=0,n.safeAppend_=Yr.browser.IE_VERSION>=11,n.appendInitSegment_={audio:!0,video:!0},n.playlistOfLastInitSegment_={audio:null,video:null},n.callQueue_=[],n.loadQueue_=[],n.metadataQueue_={id3:[],caption:[]},n.waitingOnRemove_=!1,n.quotaExceededErrorRetryTimeout_=null,n.activeInitSegmentId_=null,n.initSegments_={},n.cacheEncryptionKeys_=t.cacheEncryptionKeys,n.keyCache_={},n.decrypter_=t.decrypter,n.syncController_=t.syncController,n.syncPoint_={segmentIndex:0,time:0},n.transmuxer_=n.createTransmuxer_(),n.triggerSyncInfoUpdate_=function(){return n.trigger("syncinfoupdate")},n.syncController_.on("syncinfoupdate",n.triggerSyncInfoUpdate_),n.mediaSource_.addEventListener("sourceopen",(function(){n.isEndOfStream_()||(n.ended_=!1)})),n.fetchAtBuffer_=!1,n.logger_=$r("SegmentLoader["+n.loaderType_+"]"),Object.defineProperty(I.default(n),"state",{get:function(){return this.state_},set:function(e){e!==this.state_&&(this.logger_(this.state_+" -> "+e),this.state_=e,this.trigger("statechange"))}}),n.sourceUpdater_.on("ready",(function(){n.hasEnoughInfoToAppend_()&&n.processCallQueue_()})),"main"===n.loaderType_&&n.timelineChangeController_.on("pendingtimelinechange",(function(){n.hasEnoughInfoToAppend_()&&n.processCallQueue_()})),"audio"===n.loaderType_&&n.timelineChangeController_.on("timelinechange",(function(){n.hasEnoughInfoToLoad_()&&n.processLoadQueue_(),n.hasEnoughInfoToAppend_()&&n.processCallQueue_()})),n}L.default(t,e);var i=t.prototype;return i.createTransmuxer_=function(){return ms({remux:!1,alignGopsAtEnd:this.safeAppend_,keepOriginalTimestamps:!0,parse708captions:this.parse708captions_})},i.resetStats_=function(){this.mediaBytesTransferred=0,this.mediaRequests=0,this.mediaRequestsAborted=0,this.mediaRequestsTimedout=0,this.mediaRequestsErrored=0,this.mediaTransferDuration=0,this.mediaSecondsLoaded=0,this.mediaAppends=0},i.dispose=function(){this.trigger("dispose"),this.state="DISPOSED",this.pause(),this.abort_(),this.transmuxer_&&this.transmuxer_.terminate(),this.resetStats_(),this.checkBufferTimeout_&&A.default.clearTimeout(this.checkBufferTimeout_),this.syncController_&&this.triggerSyncInfoUpdate_&&this.syncController_.off("syncinfoupdate",this.triggerSyncInfoUpdate_),this.off()},i.setAudio=function(e){this.audioDisabled_=!e,e?this.appendInitSegment_.audio=!0:this.sourceUpdater_.removeAudio(0,this.duration_())},i.abort=function(){"WAITING"===this.state?(this.abort_(),this.state="READY",this.paused()||this.monitorBuffer_()):this.pendingSegment_&&(this.pendingSegment_=null)},i.abort_=function(){this.pendingSegment_&&this.pendingSegment_.abortRequests&&this.pendingSegment_.abortRequests(),this.pendingSegment_=null,this.callQueue_=[],this.loadQueue_=[],this.metadataQueue_.id3=[],this.metadataQueue_.caption=[],this.timelineChangeController_.clearPendingTimelineChange(this.loaderType_),this.waitingOnRemove_=!1,A.default.clearTimeout(this.quotaExceededErrorRetryTimeout_),this.quotaExceededErrorRetryTimeout_=null},i.checkForAbort_=function(e){return"APPENDING"!==this.state||this.pendingSegment_?!this.pendingSegment_||this.pendingSegment_.requestId!==e:(this.state="READY",!0)},i.error=function(e){return void 0!==e&&(this.logger_("error occurred:",e),this.error_=e),this.pendingSegment_=null,this.error_},i.endOfStream=function(){this.ended_=!0,this.transmuxer_&&ps(this.transmuxer_),this.gopBuffer_.length=0,this.pause(),this.trigger("ended")},i.buffered_=function(){var e=this.getMediaInfo_();if(!this.sourceUpdater_||!e)return Yr.createTimeRanges();if("main"===this.loaderType_){var t=e.hasAudio,i=e.hasVideo,n=e.isMuxed;if(i&&t&&!this.audioDisabled_&&!n)return this.sourceUpdater_.buffered();if(i)return this.sourceUpdater_.videoBuffered()}return this.sourceUpdater_.audioBuffered()},i.initSegmentForMap=function(e,t){if(void 0===t&&(t=!1),!e)return null;var i=Wa(e),n=this.initSegments_[i];return t&&!n&&e.bytes&&(this.initSegments_[i]=n={resolvedUri:e.resolvedUri,byterange:e.byterange,bytes:e.bytes,tracks:e.tracks,timescales:e.timescales}),n||e},i.segmentKey=function(e,t){if(void 0===t&&(t=!1),!e)return null;var i=Ya(e),n=this.keyCache_[i];this.cacheEncryptionKeys_&&t&&!n&&e.bytes&&(this.keyCache_[i]=n={resolvedUri:e.resolvedUri,bytes:e.bytes});var r={resolvedUri:(n||e).resolvedUri};return n&&(r.bytes=n.bytes),r},i.couldBeginLoading_=function(){return this.playlist_&&!this.paused()},i.load=function(){if(this.monitorBuffer_(),this.playlist_)return"INIT"===this.state&&this.couldBeginLoading_()?this.init_():void(!this.couldBeginLoading_()||"READY"!==this.state&&"INIT"!==this.state||(this.state="READY"))},i.init_=function(){return this.state="READY",this.resetEverything(),this.monitorBuffer_()},i.playlist=function(e,t){if(void 0===t&&(t={}),e){var i=this.playlist_,n=this.pendingSegment_;this.playlist_=e,this.xhrOptions_=t,"INIT"===this.state&&(e.syncInfo={mediaSequence:e.mediaSequence,time:0},"main"===this.loaderType_&&this.syncController_.setDateTimeMappingForStart(e));var r=null;if(i&&(i.id?r=i.id:i.uri&&(r=i.uri)),this.logger_("playlist update ["+r+" => "+(e.id||e.uri)+"]"),this.trigger("syncinfoupdate"),"INIT"===this.state&&this.couldBeginLoading_())return this.init_();if(!i||i.uri!==e.uri)return null!==this.mediaIndex&&this.resyncLoader(),this.currentMediaInfo_=void 0,void this.trigger("playlistupdate");var a=e.mediaSequence-i.mediaSequence;if(this.logger_("live window shift ["+a+"]"),null!==this.mediaIndex)if(this.mediaIndex-=a,this.mediaIndex<0)this.mediaIndex=null,this.partIndex=null;else{var s=this.playlist_.segments[this.mediaIndex];if(this.partIndex&&(!s.parts||!s.parts.length||!s.parts[this.partIndex])){var o=this.mediaIndex;this.logger_("currently processing part (index "+this.partIndex+") no longer exists."),this.resetLoader(),this.mediaIndex=o}}n&&(n.mediaIndex-=a,n.mediaIndex<0?(n.mediaIndex=null,n.partIndex=null):(n.mediaIndex>=0&&(n.segment=e.segments[n.mediaIndex]),n.partIndex>=0&&n.segment.parts&&(n.part=n.segment.parts[n.partIndex]))),this.syncController_.saveExpiredSegmentInfo(i,e)}},i.pause=function(){this.checkBufferTimeout_&&(A.default.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=null)},i.paused=function(){return null===this.checkBufferTimeout_},i.resetEverything=function(e){this.ended_=!1,this.appendInitSegment_={audio:!0,video:!0},this.resetLoader(),this.remove(0,1/0,e),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearAllMp4Captions"})},i.resetLoader=function(){this.fetchAtBuffer_=!1,this.resyncLoader()},i.resyncLoader=function(){this.transmuxer_&&ps(this.transmuxer_),this.mediaIndex=null,this.partIndex=null,this.syncPoint_=null,this.isPendingTimestampOffset_=!1,this.callQueue_=[],this.loadQueue_=[],this.metadataQueue_.id3=[],this.metadataQueue_.caption=[],this.abort(),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearParsedMp4Captions"})},i.remove=function(e,t,i,n){if(void 0===i&&(i=function(){}),void 0===n&&(n=!1),t===1/0&&(t=this.duration_()),t<=e)this.logger_("skipping remove because end ${end} is <= start ${start}");else if(this.sourceUpdater_&&this.getMediaInfo_()){var r=1,a=function(){0===--r&&i()};for(var s in!n&&this.audioDisabled_||(r++,this.sourceUpdater_.removeAudio(e,t,a)),(n||"main"===this.loaderType_)&&(this.gopBuffer_=function(e,t,i,n){for(var r=Math.ceil((t-n)*E.ONE_SECOND_IN_TS),a=Math.ceil((i-n)*E.ONE_SECOND_IN_TS),s=e.slice(),o=e.length;o--&&!(e[o].pts<=a););if(-1===o)return s;for(var u=o+1;u--&&!(e[u].pts<=r););return u=Math.max(u,0),s.splice(u,o-u+1),s}(this.gopBuffer_,e,t,this.timeMapping_),r++,this.sourceUpdater_.removeVideo(e,t,a)),this.inbandTextTracks_)Gs(e,t,this.inbandTextTracks_[s]);Gs(e,t,this.segmentMetadataTrack_),a()}else this.logger_("skipping remove because no source updater or starting media info")},i.monitorBuffer_=function(){this.checkBufferTimeout_&&A.default.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=A.default.setTimeout(this.monitorBufferTick_.bind(this),1)},i.monitorBufferTick_=function(){"READY"===this.state&&this.fillBuffer_(),this.checkBufferTimeout_&&A.default.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=A.default.setTimeout(this.monitorBufferTick_.bind(this),500)},i.fillBuffer_=function(){if(!this.sourceUpdater_.updating()){var e=this.chooseNextRequest_();e&&("number"==typeof e.timestampOffset&&(this.isPendingTimestampOffset_=!1,this.timelineChangeController_.pendingTimelineChange({type:this.loaderType_,from:this.currentTimeline_,to:e.timeline})),this.loadSegment_(e))}},i.isEndOfStream_=function(e,t,i){if(void 0===e&&(e=this.mediaIndex),void 0===t&&(t=this.playlist_),void 0===i&&(i=this.partIndex),!t||!this.mediaSource_)return!1;var n="number"==typeof e&&t.segments[e],r=e+1===t.segments.length,a=!n||!n.parts||i+1===n.parts.length;return t.endList&&"open"===this.mediaSource_.readyState&&r&&a},i.chooseNextRequest_=function(){var e=na(this.buffered_())||0,t=Math.max(0,e-this.currentTime_()),i=!this.hasPlayed_()&&t>=1,n=t>=this.goalBufferLength_(),r=this.playlist_.segments;if(!r.length||i||n)return null;this.syncPoint_=this.syncPoint_||this.syncController_.getSyncPoint(this.playlist_,this.duration_(),this.currentTimeline_,this.currentTime_());var a={partIndex:null,mediaIndex:null,startOfSegment:null,playlist:this.playlist_,isSyncRequest:Boolean(!this.syncPoint_)};if(a.isSyncRequest)a.mediaIndex=function(e,t,i){t=t||[];for(var n=[],r=0,a=0;ai))return a}return 0===n.length?0:n[n.length-1]}(this.currentTimeline_,r,e);else if(null!==this.mediaIndex){var s=r[this.mediaIndex],o="number"==typeof this.partIndex?this.partIndex:-1;a.startOfSegment=s.end?s.end:e,s.parts&&s.parts[o+1]?(a.mediaIndex=this.mediaIndex,a.partIndex=o+1):a.mediaIndex=this.mediaIndex+1}else{var u=Ta.getMediaInfoForTime({experimentalExactManifestTimings:this.experimentalExactManifestTimings,playlist:this.playlist_,currentTime:this.fetchAtBuffer_?e:this.currentTime_(),startingPartIndex:this.syncPoint_.partIndex,startingSegmentIndex:this.syncPoint_.segmentIndex,startTime:this.syncPoint_.time}),l=u.segmentIndex,h=u.startTime,d=u.partIndex;a.getMediaInfoForTime=this.fetchAtBuffer_?"bufferedEnd":"currentTime",a.mediaIndex=l,a.startOfSegment=h,a.partIndex=d}var c=r[a.mediaIndex],f=c&&"number"==typeof a.partIndex&&c.parts&&c.parts[a.partIndex];if(!c||"number"==typeof a.partIndex&&!f)return null;"number"!=typeof a.partIndex&&c.parts&&(a.partIndex=0);var p=this.mediaSource_&&"ended"===this.mediaSource_.readyState;return a.mediaIndex>=r.length-1&&p&&!this.seeking_()?null:this.generateSegmentInfo_(a)},i.generateSegmentInfo_=function(e){var t=e.playlist,i=e.mediaIndex,n=e.startOfSegment,r=e.isSyncRequest,a=e.partIndex,s=e.forceTimestampOffset,o=e.getMediaInfoForTime,u=t.segments[i],l="number"==typeof a&&u.parts[a],h={requestId:"segment-loader-"+Math.random(),uri:l&&l.resolvedUri||u.resolvedUri,mediaIndex:i,partIndex:l?a:null,isSyncRequest:r,startOfSegment:n,playlist:t,bytes:null,encryptedBytes:null,timestampOffset:null,timeline:u.timeline,duration:l&&l.duration||u.duration,segment:u,part:l,byteLength:0,transmuxer:this.transmuxer_,getMediaInfoForTime:o},d=void 0!==s?s:this.isPendingTimestampOffset_;h.timestampOffset=this.timestampOffsetForSegment_({segmentTimeline:u.timeline,currentTimeline:this.currentTimeline_,startOfSegment:n,buffered:this.buffered_(),overrideCheck:d});var c=na(this.sourceUpdater_.audioBuffered());return"number"==typeof c&&(h.audioAppendStart=c-this.sourceUpdater_.audioTimestampOffset()),this.sourceUpdater_.videoBuffered().length&&(h.gopsToAlignWith=function(e,t,i){if(null==t||!e.length)return[];var n,r=Math.ceil((t-i+3)*E.ONE_SECOND_IN_TS);for(n=0;nr);n++);return e.slice(n)}(this.gopBuffer_,this.currentTime_()-this.sourceUpdater_.videoTimestampOffset(),this.timeMapping_)),h},i.timestampOffsetForSegment_=function(e){return i=(t=e).segmentTimeline,n=t.currentTimeline,r=t.startOfSegment,a=t.buffered,t.overrideCheck||i!==n?i "+s+" for "+e),function(e,t,i){if(!e[i]){t.trigger({type:"usage",name:"vhs-608"}),t.trigger({type:"usage",name:"hls-608"});var n=i;/^cc708_/.test(i)&&(n="SERVICE"+i.split("_")[1]);var r=t.textTracks().getTrackById(n);if(r)e[i]=r;else{var a=i,s=i,o=!1,u=(t.options_.vhs&&t.options_.vhs.captionServices||{})[n];u&&(a=u.label,s=u.language,o=u.default),e[i]=t.addRemoteTextTrack({kind:"captions",id:n,default:o,label:a,language:s},!1).track}}}(u,i.vhs_.tech_,e),Gs(a,s,u[e]),function(e){var t=e.inbandTextTracks,i=e.captionArray,n=e.timestampOffset;if(i){var r=A.default.WebKitDataCue||A.default.VTTCue;i.forEach((function(e){var i=e.stream;t[i].addCue(new r(e.startTime+n,e.endTime+n,e.text))}))}}({captionArray:o,inbandTextTracks:u,timestampOffset:n})})),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearParsedMp4Captions"})}else this.metadataQueue_.caption.push(this.handleCaptions_.bind(this,e,t));else this.logger_("SegmentLoader received no captions from a caption event")},i.handleId3_=function(e,t,i){if(this.earlyAbortWhenNeeded_(e.stats),!this.checkForAbort_(e.requestId))if(this.pendingSegment_.hasAppendedData_){var n=null===this.sourceUpdater_.videoTimestampOffset()?this.sourceUpdater_.audioTimestampOffset():this.sourceUpdater_.videoTimestampOffset();!function(e,t,i){e.metadataTrack_||(e.metadataTrack_=i.addRemoteTextTrack({kind:"metadata",label:"Timed Metadata"},!1).track,e.metadataTrack_.inBandMetadataTrackDispatchType=t)}(this.inbandTextTracks_,i,this.vhs_.tech_),zs({inbandTextTracks:this.inbandTextTracks_,metadataArray:t,timestampOffset:n,videoDuration:this.duration_()})}else this.metadataQueue_.id3.push(this.handleId3_.bind(this,e,t,i))},i.processMetadataQueue_=function(){this.metadataQueue_.id3.forEach((function(e){return e()})),this.metadataQueue_.caption.forEach((function(e){return e()})),this.metadataQueue_.id3=[],this.metadataQueue_.caption=[]},i.processCallQueue_=function(){var e=this.callQueue_;this.callQueue_=[],e.forEach((function(e){return e()}))},i.processLoadQueue_=function(){var e=this.loadQueue_;this.loadQueue_=[],e.forEach((function(e){return e()}))},i.hasEnoughInfoToLoad_=function(){if("audio"!==this.loaderType_)return!0;var e=this.pendingSegment_;return!!e&&(!this.getCurrentMediaInfo_()||!Ks({timelineChangeController:this.timelineChangeController_,currentTimeline:this.currentTimeline_,segmentTimeline:e.timeline,loaderType:this.loaderType_,audioDisabled:this.audioDisabled_}))},i.getCurrentMediaInfo_=function(e){return void 0===e&&(e=this.pendingSegment_),e&&e.trackInfo||this.currentMediaInfo_},i.getMediaInfo_=function(e){return void 0===e&&(e=this.pendingSegment_),this.getCurrentMediaInfo_(e)||this.startingMediaInfo_},i.hasEnoughInfoToAppend_=function(){if(!this.sourceUpdater_.ready())return!1;if(this.waitingOnRemove_||this.quotaExceededErrorRetryTimeout_)return!1;var e=this.pendingSegment_,t=this.getCurrentMediaInfo_();if(!e||!t)return!1;var i=t.hasAudio,n=t.hasVideo,r=t.isMuxed;return!(n&&!e.videoTimingInfo)&&(!(i&&!this.audioDisabled_&&!r&&!e.audioTimingInfo)&&!Ks({timelineChangeController:this.timelineChangeController_,currentTimeline:this.currentTimeline_,segmentTimeline:e.timeline,loaderType:this.loaderType_,audioDisabled:this.audioDisabled_}))},i.handleData_=function(e,t){if(this.earlyAbortWhenNeeded_(e.stats),!this.checkForAbort_(e.requestId))if(!this.callQueue_.length&&this.hasEnoughInfoToAppend_()){var i=this.pendingSegment_;if(this.setTimeMapping_(i.timeline),this.updateMediaSecondsLoaded_(i.segment),"closed"!==this.mediaSource_.readyState){if(e.map&&(e.map=this.initSegmentForMap(e.map,!0),i.segment.map=e.map),e.key&&this.segmentKey(e.key,!0),i.isFmp4=e.isFmp4,i.timingInfo=i.timingInfo||{},i.isFmp4)this.trigger("fmp4"),i.timingInfo.start=i[qs(t.type)].start;else{var n,r=this.getCurrentMediaInfo_(),a="main"===this.loaderType_&&r&&r.hasVideo;a&&(n=i.videoTimingInfo.start),i.timingInfo.start=this.trueSegmentStart_({currentStart:i.timingInfo.start,playlist:i.playlist,mediaIndex:i.mediaIndex,currentVideoTimestampOffset:this.sourceUpdater_.videoTimestampOffset(),useVideoTimingInfo:a,firstVideoFrameTimeForData:n,videoTimingInfo:i.videoTimingInfo,audioTimingInfo:i.audioTimingInfo})}if(this.updateAppendInitSegmentStatus(i,t.type),this.updateSourceBufferTimestampOffset_(i),i.isSyncRequest){this.updateTimingInfoEnd_(i),this.syncController_.saveSegmentTimingInfo({segmentInfo:i,shouldSaveTimelineMapping:"main"===this.loaderType_});var s=this.chooseNextRequest_();if(s.mediaIndex!==i.mediaIndex||s.partIndex!==i.partIndex)return void this.logger_("sync segment was incorrect, not appending");this.logger_("sync segment was correct, appending")}i.hasAppendedData_=!0,this.processMetadataQueue_(),this.appendData_(i,t)}}else this.callQueue_.push(this.handleData_.bind(this,e,t))},i.updateAppendInitSegmentStatus=function(e,t){"main"!==this.loaderType_||"number"!=typeof e.timestampOffset||e.changedTimestampOffset||(this.appendInitSegment_={audio:!0,video:!0}),this.playlistOfLastInitSegment_[t]!==e.playlist&&(this.appendInitSegment_[t]=!0)},i.getInitSegmentAndUpdateState_=function(e){var t=e.type,i=e.initSegment,n=e.map,r=e.playlist;if(n){var a=Wa(n);if(this.activeInitSegmentId_===a)return null;i=this.initSegmentForMap(n,!0).bytes,this.activeInitSegmentId_=a}return i&&this.appendInitSegment_[t]?(this.playlistOfLastInitSegment_[t]=r,this.appendInitSegment_[t]=!1,this.activeInitSegmentId_=null,i):null},i.handleQuotaExceededError_=function(e,t){var i=this,n=e.segmentInfo,r=e.type,a=e.bytes,s=this.sourceUpdater_.audioBuffered(),o=this.sourceUpdater_.videoBuffered();s.length>1&&this.logger_("On QUOTA_EXCEEDED_ERR, found gaps in the audio buffer: "+ia(s).join(", ")),o.length>1&&this.logger_("On QUOTA_EXCEEDED_ERR, found gaps in the video buffer: "+ia(o).join(", "));var u=s.length?s.start(0):0,l=s.length?s.end(s.length-1):0,h=o.length?o.start(0):0,d=o.length?o.end(o.length-1):0;if(l-u<=1&&d-h<=1)return this.logger_("On QUOTA_EXCEEDED_ERR, single segment too large to append to buffer, triggering an error. Appended byte length: "+a.byteLength+", audio buffer: "+ia(s).join(", ")+", video buffer: "+ia(o).join(", ")+", "),this.error({message:"Quota exceeded error with append of a single segment of content",excludeUntil:1/0}),void this.trigger("error");this.waitingOnRemove_=!0,this.callQueue_.push(this.appendToSourceBuffer_.bind(this,{segmentInfo:n,type:r,bytes:a}));var c=this.currentTime_()-1;this.logger_("On QUOTA_EXCEEDED_ERR, removing audio/video from 0 to "+c),this.remove(0,c,(function(){i.logger_("On QUOTA_EXCEEDED_ERR, retrying append in 1s"),i.waitingOnRemove_=!1,i.quotaExceededErrorRetryTimeout_=A.default.setTimeout((function(){i.logger_("On QUOTA_EXCEEDED_ERR, re-processing call queue"),i.quotaExceededErrorRetryTimeout_=null,i.processCallQueue_()}),1e3)}),!0)},i.handleAppendError_=function(e,t){var i=e.segmentInfo,n=e.type,r=e.bytes;t&&(22!==t.code?(this.logger_("Received non QUOTA_EXCEEDED_ERR on append",t),this.error(n+" append of "+r.length+"b failed for segment #"+i.mediaIndex+" in playlist "+i.playlist.id),this.trigger("appenderror")):this.handleQuotaExceededError_({segmentInfo:i,type:n,bytes:r}))},i.appendToSourceBuffer_=function(e){var t,i,n,r=e.segmentInfo,a=e.type,s=e.initSegment,o=e.data,u=e.bytes;if(!u){var l=[o],h=o.byteLength;s&&(l.unshift(s),h+=s.byteLength),n=0,(t={bytes:h,segments:l}).bytes&&(i=new Uint8Array(t.bytes),t.segments.forEach((function(e){i.set(e,n),n+=e.byteLength}))),u=i}this.sourceUpdater_.appendBuffer({segmentInfo:r,type:a,bytes:u},this.handleAppendError_.bind(this,{segmentInfo:r,type:a,bytes:u}))},i.handleSegmentTimingInfo_=function(e,t,i){if(this.pendingSegment_&&t===this.pendingSegment_.requestId){var n=this.pendingSegment_.segment,r=e+"TimingInfo";n[r]||(n[r]={}),n[r].transmuxerPrependedSeconds=i.prependedContentDuration||0,n[r].transmuxedPresentationStart=i.start.presentation,n[r].transmuxedDecodeStart=i.start.decode,n[r].transmuxedPresentationEnd=i.end.presentation,n[r].transmuxedDecodeEnd=i.end.decode,n[r].baseMediaDecodeTime=i.baseMediaDecodeTime}},i.appendData_=function(e,t){var i=t.type,n=t.data;if(n&&n.byteLength&&("audio"!==i||!this.audioDisabled_)){var r=this.getInitSegmentAndUpdateState_({type:i,initSegment:t.initSegment,playlist:e.playlist,map:e.isFmp4?e.segment.map:null});this.appendToSourceBuffer_({segmentInfo:e,type:i,initSegment:r,data:n})}},i.loadSegment_=function(e){var t=this;this.state="WAITING",this.pendingSegment_=e,this.trimBackBuffer_(e),"number"==typeof e.timestampOffset&&this.transmuxer_&&this.transmuxer_.postMessage({action:"clearAllMp4Captions"}),this.hasEnoughInfoToLoad_()?this.updateTransmuxerAndRequestSegment_(e):this.loadQueue_.push((function(){var i=P.default({},e,{forceTimestampOffset:!0});P.default(e,t.generateSegmentInfo_(i)),t.isPendingTimestampOffset_=!1,t.updateTransmuxerAndRequestSegment_(e)}))},i.updateTransmuxerAndRequestSegment_=function(e){var t=this;this.shouldUpdateTransmuxerTimestampOffset_(e.timestampOffset)&&(this.gopBuffer_.length=0,e.gopsToAlignWith=[],this.timeMapping_=0,this.transmuxer_.postMessage({action:"reset"}),this.transmuxer_.postMessage({action:"setTimestampOffset",timestampOffset:e.timestampOffset}));var i=this.createSimplifiedSegmentObj_(e),n=this.isEndOfStream_(e.mediaIndex,e.playlist,e.partIndex),r=null!==this.mediaIndex,a=e.timeline!==this.currentTimeline_&&e.timeline>0,s=n||r&&a;this.logger_("Requesting "+Ys(e)),i.map&&!i.map.bytes&&(this.logger_("going to request init segment."),this.appendInitSegment_={video:!0,audio:!0}),e.abortRequests=Ls({xhr:this.vhs_.xhr,xhrOptions:this.xhrOptions_,decryptionWorker:this.decrypter_,segment:i,abortFn:this.handleAbort_.bind(this,e),progressFn:this.handleProgress_.bind(this),trackInfoFn:this.handleTrackInfo_.bind(this),timingInfoFn:this.handleTimingInfo_.bind(this),videoSegmentTimingInfoFn:this.handleSegmentTimingInfo_.bind(this,"video",e.requestId),audioSegmentTimingInfoFn:this.handleSegmentTimingInfo_.bind(this,"audio",e.requestId),captionsFn:this.handleCaptions_.bind(this),isEndOfTimeline:s,endedTimelineFn:function(){t.logger_("received endedtimeline callback")},id3Fn:this.handleId3_.bind(this),dataFn:this.handleData_.bind(this),doneFn:this.segmentRequestFinished_.bind(this),onTransmuxerLog:function(i){var n=i.message,r=i.level,a=i.stream;t.logger_(Ys(e)+" logged from transmuxer stream "+a+" as a "+r+": "+n)}})},i.trimBackBuffer_=function(e){var t=function(e,t,i){var n=t-ns.BACK_BUFFER_LENGTH;e.length&&(n=Math.max(n,e.start(0)));var r=t-i;return Math.min(r,n)}(this.seekable_(),this.currentTime_(),this.playlist_.targetDuration||10);t>0&&this.remove(0,t)},i.createSimplifiedSegmentObj_=function(e){var t=e.segment,i=e.part,n={resolvedUri:i?i.resolvedUri:t.resolvedUri,byterange:i?i.byterange:t.byterange,requestId:e.requestId,transmuxer:e.transmuxer,audioAppendStart:e.audioAppendStart,gopsToAlignWith:e.gopsToAlignWith,part:e.part},r=e.playlist.segments[e.mediaIndex-1];if(r&&r.timeline===t.timeline&&(r.videoTimingInfo?n.baseStartTime=r.videoTimingInfo.transmuxedDecodeEnd:r.audioTimingInfo&&(n.baseStartTime=r.audioTimingInfo.transmuxedDecodeEnd)),t.key){var a=t.key.iv||new Uint32Array([0,0,0,e.mediaIndex+e.playlist.mediaSequence]);n.key=this.segmentKey(t.key),n.key.iv=a}return t.map&&(n.map=this.initSegmentForMap(t.map)),n},i.saveTransferStats_=function(e){this.mediaRequests+=1,e&&(this.mediaBytesTransferred+=e.bytesReceived,this.mediaTransferDuration+=e.roundTripTime)},i.saveBandwidthRelatedStats_=function(e,t){this.pendingSegment_.byteLength=t.bytesReceived,e<1/60?this.logger_("Ignoring segment's bandwidth because its duration of "+e+" is less than the min to record "+1/60):(this.bandwidth=t.bandwidth,this.roundTrip=t.roundTripTime)},i.handleTimeout_=function(){this.mediaRequestsTimedout+=1,this.bandwidth=1,this.roundTrip=NaN,this.trigger("bandwidthupdate")},i.segmentRequestFinished_=function(e,t,i){if(this.callQueue_.length)this.callQueue_.push(this.segmentRequestFinished_.bind(this,e,t,i));else if(this.saveTransferStats_(t.stats),this.pendingSegment_&&t.requestId===this.pendingSegment_.requestId){if(e){if(this.pendingSegment_=null,this.state="READY",e.code===ys)return;return this.pause(),e.code===vs?void this.handleTimeout_():(this.mediaRequestsErrored+=1,this.error(e),void this.trigger("error"))}var n=this.pendingSegment_;this.saveBandwidthRelatedStats_(n.duration,t.stats),n.endOfAllRequests=t.endOfAllRequests,i.gopInfo&&(this.gopBuffer_=function(e,t,i){if(!t.length)return e;if(i)return t.slice();for(var n=t[0].pts,r=0;r=n);r++);return e.slice(0,r).concat(t)}(this.gopBuffer_,i.gopInfo,this.safeAppend_)),this.state="APPENDING",this.trigger("appending"),this.waitForAppendsToComplete_(n)}},i.setTimeMapping_=function(e){var t=this.syncController_.mappingForTimeline(e);null!==t&&(this.timeMapping_=t)},i.updateMediaSecondsLoaded_=function(e){"number"==typeof e.start&&"number"==typeof e.end?this.mediaSecondsLoaded+=e.end-e.start:this.mediaSecondsLoaded+=e.duration},i.shouldUpdateTransmuxerTimestampOffset_=function(e){return null!==e&&("main"===this.loaderType_&&e!==this.sourceUpdater_.videoTimestampOffset()||!this.audioDisabled_&&e!==this.sourceUpdater_.audioTimestampOffset())},i.trueSegmentStart_=function(e){var t=e.currentStart,i=e.playlist,n=e.mediaIndex,r=e.firstVideoFrameTimeForData,a=e.currentVideoTimestampOffset,s=e.useVideoTimingInfo,o=e.videoTimingInfo,u=e.audioTimingInfo;if(void 0!==t)return t;if(!s)return u.start;var l=i.segments[n-1];return 0!==n&&l&&void 0!==l.start&&l.end===r+a?o.start:r},i.waitForAppendsToComplete_=function(e){var t=this.getCurrentMediaInfo_(e);if(!t)return this.error({message:"No starting media returned, likely due to an unsupported media format.",blacklistDuration:1/0}),void this.trigger("error");var i=t.hasAudio,n=t.hasVideo,r=t.isMuxed,a="main"===this.loaderType_&&n,s=!this.audioDisabled_&&i&&!r;if(e.waitingOnAppends=0,!e.hasAppendedData_)return e.timingInfo||"number"!=typeof e.timestampOffset||(this.isPendingTimestampOffset_=!0),e.timingInfo={start:0},e.waitingOnAppends++,this.isPendingTimestampOffset_||(this.updateSourceBufferTimestampOffset_(e),this.processMetadataQueue_()),void this.checkAppendsDone_(e);a&&e.waitingOnAppends++,s&&e.waitingOnAppends++,a&&this.sourceUpdater_.videoQueueCallback(this.checkAppendsDone_.bind(this,e)),s&&this.sourceUpdater_.audioQueueCallback(this.checkAppendsDone_.bind(this,e))},i.checkAppendsDone_=function(e){this.checkForAbort_(e.requestId)||(e.waitingOnAppends--,0===e.waitingOnAppends&&this.handleAppendsDone_())},i.checkForIllegalMediaSwitch=function(e){var t=function(e,t,i){return"main"===e&&t&&i?i.hasAudio||i.hasVideo?t.hasVideo&&!i.hasVideo?"Only audio found in segment when we expected video. We can't switch to audio only from a stream that had video. To get rid of this message, please add codec information to the manifest.":!t.hasVideo&&i.hasVideo?"Video found in segment when we expected only audio. We can't switch to a stream with video from an audio only stream. To get rid of this message, please add codec information to the manifest.":null:"Neither audio nor video found in segment.":null}(this.loaderType_,this.getCurrentMediaInfo_(),e);return!!t&&(this.error({message:t,blacklistDuration:1/0}),this.trigger("error"),!0)},i.updateSourceBufferTimestampOffset_=function(e){if(null!==e.timestampOffset&&"number"==typeof e.timingInfo.start&&!e.changedTimestampOffset&&"main"===this.loaderType_){var t=!1;e.timestampOffset-=e.timingInfo.start,e.changedTimestampOffset=!0,e.timestampOffset!==this.sourceUpdater_.videoTimestampOffset()&&(this.sourceUpdater_.videoTimestampOffset(e.timestampOffset),t=!0),e.timestampOffset!==this.sourceUpdater_.audioTimestampOffset()&&(this.sourceUpdater_.audioTimestampOffset(e.timestampOffset),t=!0),t&&this.trigger("timestampoffset")}},i.updateTimingInfoEnd_=function(e){e.timingInfo=e.timingInfo||{};var t=this.getMediaInfo_(),i="main"===this.loaderType_&&t&&t.hasVideo&&e.videoTimingInfo?e.videoTimingInfo:e.audioTimingInfo;i&&(e.timingInfo.end="number"==typeof i.end?i.end:i.start+e.duration)},i.handleAppendsDone_=function(){if(this.pendingSegment_&&this.trigger("appendsdone"),!this.pendingSegment_)return this.state="READY",void(this.paused()||this.monitorBuffer_());var e=this.pendingSegment_;this.updateTimingInfoEnd_(e),this.shouldSaveSegmentTimingInfo_&&this.syncController_.saveSegmentTimingInfo({segmentInfo:e,shouldSaveTimelineMapping:"main"===this.loaderType_});var t=Qs(e,this.sourceType_);if(t&&("warn"===t.severity?Yr.log.warn(t.message):this.logger_(t.message)),this.recordThroughput_(e),this.pendingSegment_=null,this.state="READY",!e.isSyncRequest||(this.trigger("syncinfoupdate"),e.hasAppendedData_)){this.logger_("Appended "+Ys(e)),this.addSegmentMetadataCue_(e),this.fetchAtBuffer_=!0,this.currentTimeline_!==e.timeline&&(this.timelineChangeController_.lastTimelineChange({type:this.loaderType_,from:this.currentTimeline_,to:e.timeline}),"main"!==this.loaderType_||this.audioDisabled_||this.timelineChangeController_.lastTimelineChange({type:"audio",from:this.currentTimeline_,to:e.timeline})),this.currentTimeline_=e.timeline,this.trigger("syncinfoupdate");var i=e.segment;if(i.end&&this.currentTime_()-i.end>3*e.playlist.targetDuration)this.resetEverything();else null!==this.mediaIndex&&this.trigger("bandwidthupdate"),this.trigger("progress"),this.mediaIndex=e.mediaIndex,this.partIndex=e.partIndex,this.isEndOfStream_(e.mediaIndex,e.playlist,e.partIndex)&&this.endOfStream(),this.trigger("appended"),e.hasAppendedData_&&this.mediaAppends++,this.paused()||this.monitorBuffer_()}else this.logger_("Throwing away un-appended sync request "+Ys(e))},i.recordThroughput_=function(e){if(e.duration<1/60)this.logger_("Ignoring segment's throughput because its duration of "+e.duration+" is less than the min to record "+1/60);else{var t=this.throughput.rate,i=Date.now()-e.endOfAllRequests+1,n=Math.floor(e.byteLength/i*8*1e3);this.throughput.rate+=(n-t)/++this.throughput.count}},i.addSegmentMetadataCue_=function(e){if(this.segmentMetadataTrack_){var t=e.segment,i=t.start,n=t.end;if(Ws(i)&&Ws(n)){Gs(i,n,this.segmentMetadataTrack_);var r=A.default.WebKitDataCue||A.default.VTTCue,a={custom:t.custom,dateTimeObject:t.dateTimeObject,dateTimeString:t.dateTimeString,bandwidth:e.playlist.attributes.BANDWIDTH,resolution:e.playlist.attributes.RESOLUTION,codecs:e.playlist.attributes.CODECS,byteLength:e.byteLength,uri:e.uri,timeline:e.timeline,playlist:e.playlist.id,start:i,end:n},s=new r(i,n,JSON.stringify(a));s.value=a,this.segmentMetadataTrack_.addCue(s)}}},t}(Yr.EventTarget);function Js(){}var Zs,eo=function(e){return"string"!=typeof e?e:e.replace(/./,(function(e){return e.toUpperCase()}))},to=["video","audio"],io=function(e,t){var i=t[e+"Buffer"];return i&&i.updating||t.queuePending[e]},no=function e(t,i){if(0!==i.queue.length){var n=0,r=i.queue[n];if("mediaSource"!==r.type){if("mediaSource"!==t&&i.ready()&&"closed"!==i.mediaSource.readyState&&!io(t,i)){if(r.type!==t){if(null===(n=function(e,t){for(var i=0;i=e.playlist.segments.length){e=null;break}e=this.generateSegmentInfo_({playlist:e.playlist,mediaIndex:e.mediaIndex+1,startOfSegment:e.startOfSegment+e.duration,isSyncRequest:e.isSyncRequest})}return e},i.stopForError=function(e){this.error(e),this.state="READY",this.pause(),this.trigger("error")},i.segmentRequestFinished_=function(e,t,i){var n=this;if(this.subtitlesTrack_){if(this.saveTransferStats_(t.stats),!this.pendingSegment_)return this.state="READY",void(this.mediaRequestsAborted+=1);if(e)return e.code===vs&&this.handleTimeout_(),e.code===ys?this.mediaRequestsAborted+=1:this.mediaRequestsErrored+=1,void this.stopForError(e);var r=this.pendingSegment_;this.saveBandwidthRelatedStats_(r.duration,t.stats),this.state="APPENDING",this.trigger("appending");var a=r.segment;if(a.map&&(a.map.bytes=t.map.bytes),r.bytes=t.bytes,"function"!=typeof A.default.WebVTT&&this.subtitlesTrack_&&this.subtitlesTrack_.tech_){var s,o=function(){n.subtitlesTrack_.tech_.off("vttjsloaded",s),n.stopForError({message:"Error loading vtt.js"})};return s=function(){n.subtitlesTrack_.tech_.off("vttjserror",o),n.segmentRequestFinished_(e,t,i)},this.state="WAITING_ON_VTTJS",this.subtitlesTrack_.tech_.one("vttjsloaded",s),void this.subtitlesTrack_.tech_.one("vttjserror",o)}a.requested=!0;try{this.parseVTTCues_(r)}catch(e){return void this.stopForError({message:e.message})}if(this.updateTimeMapping_(r,this.syncController_.timelines[r.timeline],this.playlist_),r.cues.length?r.timingInfo={start:r.cues[0].startTime,end:r.cues[r.cues.length-1].endTime}:r.timingInfo={start:r.startOfSegment,end:r.startOfSegment+r.duration},r.isSyncRequest)return this.trigger("syncinfoupdate"),this.pendingSegment_=null,void(this.state="READY");r.byteLength=r.bytes.byteLength,this.mediaSecondsLoaded+=a.duration,r.cues.forEach((function(e){n.subtitlesTrack_.addCue(n.featuresNativeTextTracks_?new A.default.VTTCue(e.startTime,e.endTime,e.text):e)})),function(e){var t=e.cues;if(t)for(var i=0;i1&&n.push(t[a]);n.length&&n.forEach((function(t){return e.removeCue(t)}))}}(this.subtitlesTrack_),this.handleAppendsDone_()}else this.state="READY"},i.handleData_=function(){},i.updateTimingInfoEnd_=function(){},i.parseVTTCues_=function(e){var t,i=!1;"function"==typeof A.default.TextDecoder?t=new A.default.TextDecoder("utf8"):(t=A.default.WebVTT.StringDecoder(),i=!0);var n=new A.default.WebVTT.Parser(A.default,A.default.vttjs,t);if(e.cues=[],e.timestampmap={MPEGTS:0,LOCAL:0},n.oncue=e.cues.push.bind(e.cues),n.ontimestampmap=function(t){e.timestampmap=t},n.onparsingerror=function(e){Yr.log.warn("Error encountered when parsing cues: "+e.message)},e.segment.map){var r=e.segment.map.bytes;i&&(r=bo(r)),n.parse(r)}var a=e.bytes;i&&(a=bo(a)),n.parse(a),n.flush()},i.updateTimeMapping_=function(e,t,i){var n=e.segment;if(t)if(e.cues.length){var r=e.timestampmap,a=r.MPEGTS/E.ONE_SECOND_IN_TS-r.LOCAL+t.mapping;if(e.cues.forEach((function(e){e.startTime+=a,e.endTime+=a})),!i.syncInfo){var s=e.cues[0].startTime,o=e.cues[e.cues.length-1].startTime;i.syncInfo={mediaSequence:i.mediaSequence+e.mediaIndex,time:Math.min(s,o-n.duration)}}}else n.empty=!0},t}($s),Eo=function(e,t){for(var i=e.cues,n=0;n=r.adStartTime&&t<=r.adEndTime)return r}return null},wo=[{name:"VOD",run:function(e,t,i,n,r){if(i!==1/0){return{time:0,segmentIndex:0,partIndex:null}}return null}},{name:"ProgramDateTime",run:function(e,t,i,n,r){if(!Object.keys(e.timelineToDatetimeMappings).length)return null;var a=null,s=null,o=aa(t);r=r||0;for(var u=0;u=c)&&(s=c,a={time:d,segmentIndex:l.segmentIndex,partIndex:l.partIndex})}}return a}},{name:"Discontinuity",run:function(e,t,i,n,r){var a=null;if(r=r||0,t.discontinuityStarts&&t.discontinuityStarts.length)for(var s=null,o=0;o=d)&&(s=d,a={time:h.time,segmentIndex:u,partIndex:null})}}return a}},{name:"Playlist",run:function(e,t,i,n,r){return t.syncInfo?{time:t.syncInfo.time,segmentIndex:t.syncInfo.mediaSequence-t.mediaSequence,partIndex:null}:null}}],Co=function(e){function t(t){var i;return(i=e.call(this)||this).timelines=[],i.discontinuities=[],i.timelineToDatetimeMappings={},i.logger_=$r("SyncController"),i}L.default(t,e);var i=t.prototype;return i.getSyncPoint=function(e,t,i,n){var r=this.runStrategies_(e,t,i,n);return r.length?this.selectSyncPoint_(r,{key:"time",value:n}):null},i.getExpiredTime=function(e,t){if(!e||!e.segments)return null;var i=this.runStrategies_(e,t,e.discontinuitySequence,0);if(!i.length)return null;var n=this.selectSyncPoint_(i,{key:"segmentIndex",value:0});return n.segmentIndex>0&&(n.time*=-1),Math.abs(n.time+da({defaultDuration:e.targetDuration,durationList:e.segments,startIndex:n.segmentIndex,endIndex:0}))},i.runStrategies_=function(e,t,i,n){for(var r=[],a=0;a=0;i--){var n=e.segments[i];if(n&&void 0!==n.start){t.syncInfo={mediaSequence:e.mediaSequence+i,time:n.start},this.logger_("playlist refresh sync: [time:"+t.syncInfo.time+", mediaSequence: "+t.syncInfo.mediaSequence+"]"),this.trigger("syncinfoupdate");break}}},i.setDateTimeMappingForStart=function(e){if(this.timelineToDatetimeMappings={},e.segments&&e.segments.length&&e.segments[0].dateTimeObject){var t=e.segments[0],i=t.dateTimeObject.getTime()/1e3;this.timelineToDatetimeMappings[t.timeline]=-i}},i.saveSegmentTimingInfo=function(e){var t=e.segmentInfo,i=e.shouldSaveTimelineMapping,n=this.calculateSegmentTimeMapping_(t,t.timingInfo,i),r=t.segment;n&&(this.saveDiscontinuitySyncInfo_(t),t.playlist.syncInfo||(t.playlist.syncInfo={mediaSequence:t.playlist.mediaSequence+t.mediaIndex,time:r.start}));var a=r.dateTimeObject;r.discontinuity&&i&&a&&(this.timelineToDatetimeMappings[r.timeline]=-a.getTime()/1e3)},i.timestampOffsetForTimeline=function(e){return void 0===this.timelines[e]?null:this.timelines[e].time},i.mappingForTimeline=function(e){return void 0===this.timelines[e]?null:this.timelines[e].mapping},i.calculateSegmentTimeMapping_=function(e,t,i){var n,r,a=e.segment,s=e.part,o=this.timelines[e.timeline];if("number"==typeof e.timestampOffset)o={time:e.startOfSegment,mapping:e.startOfSegment-t.start},i&&(this.timelines[e.timeline]=o,this.trigger("timestampoffset"),this.logger_("time mapping for timeline "+e.timeline+": [time: "+o.time+"] [mapping: "+o.mapping+"]")),n=e.startOfSegment,r=t.end+o.mapping;else{if(!o)return!1;n=t.start+o.mapping,r=t.end+o.mapping}return s&&(s.start=n,s.end=r),(!a.start||no){var u=void 0;u=s<0?i.start-da({defaultDuration:t.targetDuration,durationList:t.segments,startIndex:e.mediaIndex,endIndex:r}):i.end+da({defaultDuration:t.targetDuration,durationList:t.segments,startIndex:e.mediaIndex+1,endIndex:r}),this.discontinuities[a]={time:u,accuracy:o}}}},i.dispose=function(){this.trigger("dispose"),this.off()},t}(Yr.EventTarget),Ao=function(e){function t(){var t;return(t=e.call(this)||this).pendingTimelineChanges_={},t.lastTimelineChanges_={},t}L.default(t,e);var i=t.prototype;return i.clearPendingTimelineChange=function(e){this.pendingTimelineChanges_[e]=null,this.trigger("pendingtimelinechange")},i.pendingTimelineChange=function(e){var t=e.type,i=e.from,n=e.to;return"number"==typeof i&&"number"==typeof n&&(this.pendingTimelineChanges_[t]={type:t,from:i,to:n},this.trigger("pendingtimelinechange")),this.pendingTimelineChanges_[t]},i.lastTimelineChange=function(e){var t=e.type,i=e.from,n=e.to;return"number"==typeof i&&"number"==typeof n&&(this.lastTimelineChanges_[t]={type:t,from:i,to:n},delete this.pendingTimelineChanges_[t],this.trigger("timelinechange")),this.lastTimelineChanges_[t]},i.dispose=function(){this.trigger("dispose"),this.pendingTimelineChanges_={},this.lastTimelineChanges_={},this.off()},t}(Yr.EventTarget),ko=as(ss(os((function(){function e(e,t,i){return e(i={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==t&&i.path)}},i.exports),i.exports}var t=e((function(e){function t(e,t){for(var i=0;i-1},t.trigger=function(e){var t=this.listeners[e];if(t)if(2===arguments.length)for(var i=t.length,n=0;n>7))^e]=e;for(t=i=0;!d[t];t^=n||1,i=p[i]||1)for(a=(a=i^i<<1^i<<2^i<<3^i<<4)>>8^255&a^99,d[t]=a,c[a]=t,o=16843009*f[r=f[n=f[t]]]^65537*r^257*n^16843008*t,s=257*f[a]^16843008*a,e=0;e<4;e++)l[e][t]=s=s<<24^s>>>8,h[e][a]=o=o<<24^o>>>8;for(e=0;e<5;e++)l[e]=l[e].slice(0),h[e]=h[e].slice(0);return u}()),this._tables=[[a[0][0].slice(),a[0][1].slice(),a[0][2].slice(),a[0][3].slice(),a[0][4].slice()],[a[1][0].slice(),a[1][1].slice(),a[1][2].slice(),a[1][3].slice(),a[1][4].slice()]];var r=this._tables[0][4],s=this._tables[1],o=e.length,u=1;if(4!==o&&6!==o&&8!==o)throw new Error("Invalid aes key size");var l=e.slice(0),h=[];for(this._key=[l,h],t=o;t<4*o+28;t++)n=l[t-1],(t%o==0||8===o&&t%o==4)&&(n=r[n>>>24]<<24^r[n>>16&255]<<16^r[n>>8&255]<<8^r[255&n],t%o==0&&(n=n<<8^n>>>24^u<<24,u=u<<1^283*(u>>7))),l[t]=l[t-o]^n;for(i=0;t;i++,t--)n=l[3&i?t:t-4],h[i]=t<=4||i<4?n:s[0][r[n>>>24]]^s[1][r[n>>16&255]]^s[2][r[n>>8&255]]^s[3][r[255&n]]}return e.prototype.decrypt=function(e,t,i,n,r,a){var s,o,u,l,h=this._key[1],d=e^h[0],c=n^h[1],f=i^h[2],p=t^h[3],m=h.length/4-2,g=4,_=this._tables[1],v=_[0],y=_[1],b=_[2],T=_[3],S=_[4];for(l=0;l>>24]^y[c>>16&255]^b[f>>8&255]^T[255&p]^h[g],o=v[c>>>24]^y[f>>16&255]^b[p>>8&255]^T[255&d]^h[g+1],u=v[f>>>24]^y[p>>16&255]^b[d>>8&255]^T[255&c]^h[g+2],p=v[p>>>24]^y[d>>16&255]^b[c>>8&255]^T[255&f]^h[g+3],g+=4,d=s,c=o,f=u;for(l=0;l<4;l++)r[(3&-l)+a]=S[d>>>24]<<24^S[c>>16&255]<<16^S[f>>8&255]<<8^S[255&p]^h[g++],s=d,d=c,c=f,f=p,p=s},e}(),o=function(e){function t(){var t;return(t=e.call(this,r)||this).jobs=[],t.delay=1,t.timeout_=null,t}n(t,e);var i=t.prototype;return i.processJob_=function(){this.jobs.shift()(),this.jobs.length?this.timeout_=setTimeout(this.processJob_.bind(this),this.delay):this.timeout_=null},i.push=function(e){this.jobs.push(e),this.timeout_||(this.timeout_=setTimeout(this.processJob_.bind(this),this.delay))},t}(r),u=function(e){return e<<24|(65280&e)<<8|(16711680&e)>>8|e>>>24},l=function(){function e(t,i,n,r){var a=e.STEP,s=new Int32Array(t.buffer),l=new Uint8Array(t.byteLength),h=0;for(this.asyncStream_=new o,this.asyncStream_.push(this.decryptChunk_(s.subarray(h,h+a),i,n,l)),h=a;h>2),m=new s(Array.prototype.slice.call(t)),g=new Uint8Array(e.byteLength),_=new Int32Array(g.buffer);for(n=i[0],r=i[1],a=i[2],o=i[3],f=0;f=0&&(t="main-desc"),t},Io=function(e,t){e.abort(),e.pause(),t&&t.activePlaylistLoader&&(t.activePlaylistLoader.pause(),t.activePlaylistLoader=null)},Lo=function(e,t){t.activePlaylistLoader=e,e.load()},xo={AUDIO:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e],r=t.blacklistCurrentPlaylist;Io(i,n);var a=n.activeTrack(),s=n.activeGroup(),o=(s.filter((function(e){return e.default}))[0]||s[0]).id,u=n.tracks[o];if(a!==u){for(var l in Yr.log.warn("Problem encountered loading the alternate audio track.Switching back to default."),n.tracks)n.tracks[l].enabled=n.tracks[l]===u;n.onTrackChanged()}else r({message:"Problem encountered loading the default audio track."})}},SUBTITLES:function(e,t){return function(){var i=t.segmentLoaders[e],n=t.mediaTypes[e];Yr.log.warn("Problem encountered loading the subtitle track.Disabling subtitle track."),Io(i,n);var r=n.activeTrack();r&&(r.mode="disabled"),n.onTrackChanged()}}},Do={AUDIO:function(e,t,i){if(t){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},SUBTITLES:function(e,t,i){var n=i.tech,r=i.requestOptions,a=i.segmentLoaders[e],s=i.mediaTypes[e];t.on("loadedmetadata",(function(){var e=t.media();a.playlist(e,r),a.track(s.activeTrack()),(!n.paused()||e.endList&&"none"!==n.preload())&&a.load()})),t.on("loadedplaylist",(function(){a.playlist(t.media(),r),n.paused()||a.load()})),t.on("error",xo[e](e,i))}},Ro={AUDIO:function(e,t){var i=t.vhs,n=t.sourceType,r=t.segmentLoaders[e],a=t.requestOptions,s=t.master.mediaGroups,o=t.mediaTypes[e],u=o.groups,l=o.tracks,h=o.logger_,d=t.masterPlaylistLoader,c=ba(d.master);for(var f in s[e]&&0!==Object.keys(s[e]).length||(s[e]={main:{default:{default:!0}}},c&&(s[e].main.default.playlists=d.master.playlists)),s[e])for(var p in u[f]||(u[f]=[]),s[e][f]){var m=s[e][f][p],g=void 0;if(c?(h("AUDIO group '"+f+"' label '"+p+"' is a master playlist"),m.isMasterPlaylist=!0,g=null):g="vhs-json"===n&&m.playlists?new Ua(m.playlists[0],i,a):m.resolvedUri?new Ua(m.resolvedUri,i,a):m.playlists&&"dash"===n?new is(m.playlists[0],i,a,d):null,m=Yr.mergeOptions({id:p,playlistLoader:g},m),Do[e](e,m.playlistLoader,t),u[f].push(m),void 0===l[p]){var _=new Yr.AudioTrack({id:p,kind:Po(m),enabled:!1,language:m.language,default:m.default,label:p});l[p]=_}}r.on("error",xo[e](e,t))},SUBTITLES:function(e,t){var i=t.tech,n=t.vhs,r=t.sourceType,a=t.segmentLoaders[e],s=t.requestOptions,o=t.master.mediaGroups,u=t.mediaTypes[e],l=u.groups,h=u.tracks,d=t.masterPlaylistLoader;for(var c in o[e])for(var f in l[c]||(l[c]=[]),o[e][c])if(!o[e][c][f].forced){var p=o[e][c][f],m=void 0;if("hls"===r)m=new Ua(p.resolvedUri,n,s);else if("dash"===r){if(!p.playlists.filter((function(e){return e.excludeUntil!==1/0})).length)return;m=new is(p.playlists[0],n,s,d)}else"vhs-json"===r&&(m=new Ua(p.playlists?p.playlists[0]:p.resolvedUri,n,s));if(p=Yr.mergeOptions({id:f,playlistLoader:m},p),Do[e](e,p.playlistLoader,t),l[c].push(p),void 0===h[f]){var g=i.addRemoteTextTrack({id:f,kind:"subtitles",default:p.default&&p.autoselect,language:p.language,label:f},!1).track;h[f]=g}}a.on("error",xo[e](e,t))},"CLOSED-CAPTIONS":function(e,t){var i=t.tech,n=t.master.mediaGroups,r=t.mediaTypes[e],a=r.groups,s=r.tracks;for(var o in n[e])for(var u in a[o]||(a[o]=[]),n[e][o]){var l=n[e][o][u];if(/^(?:CC|SERVICE)/.test(l.instreamId)){var h=i.options_.vhs&&i.options_.vhs.captionServices||{},d={label:u,language:l.language,instreamId:l.instreamId,default:l.default&&l.autoselect};if(h[d.instreamId]&&(d=Yr.mergeOptions(d,h[d.instreamId])),void 0===d.default&&delete d.default,a[o].push(Yr.mergeOptions({id:u},l)),void 0===s[u]){var c=i.addRemoteTextTrack({id:d.instreamId,kind:"captions",default:d.default,language:d.language,label:d.label},!1).track;s[u]=c}}}}},Oo=function e(t,i){for(var n=0;n1&&ba(t.master))for(var u=0;u "+a+" from "+t),this.tech_.trigger({type:"usage",name:"vhs-rendition-change-"+t})),this.masterPlaylistLoader_.media(e,i)},i.startABRTimer_=function(){var e=this;this.stopABRTimer_(),this.abrTimer_=A.default.setInterval((function(){return e.checkABR_()}),250)},i.stopABRTimer_=function(){this.tech_.scrubbing&&this.tech_.scrubbing()||(A.default.clearInterval(this.abrTimer_),this.abrTimer_=null)},i.getAudioTrackPlaylists_=function(){var e=this.master(),t=e&&e.playlists||[];if(!e||!e.mediaGroups||!e.mediaGroups.AUDIO)return t;var i,n=e.mediaGroups.AUDIO,r=Object.keys(n);if(Object.keys(this.mediaTypes_.AUDIO.groups).length)i=this.mediaTypes_.AUDIO.activeTrack();else{var a=n.main||r.length&&n[r[0]];for(var s in a)if(a[s].default){i={label:s};break}}if(!i)return t;var o=[];for(var u in n)if(n[u][i.label]){var l=n[u][i.label];if(l.playlists&&l.playlists.length)o.push.apply(o,l.playlists);else if(l.uri)o.push(l);else if(e.playlists.length)for(var h=0;h1&&(this.tech_.trigger({type:"usage",name:"vhs-alternate-audio"}),this.tech_.trigger({type:"usage",name:"hls-alternate-audio"})),this.useCueTags_&&(this.tech_.trigger({type:"usage",name:"vhs-playlist-cue-tags"}),this.tech_.trigger({type:"usage",name:"hls-playlist-cue-tags"}))},i.shouldSwitchToMedia_=function(e){var t=this.masterPlaylistLoader_.media(),i=this.tech_.buffered();return function(e){var t=e.currentPlaylist,i=e.nextPlaylist,n=e.forwardBuffer,r=e.bufferLowWaterLine,a=e.bufferHighWaterLine,s=e.duration,o=e.experimentalBufferBasedABR,u=e.log;if(!i)return Yr.log.warn("We received no playlist to switch to. Please check your stream."),!1;var l="allowing switch "+(t&&t.id||"null")+" -> "+i.id;if(!t)return u(l+" as current playlist is not set"),!0;if(i.id===t.id)return!1;if(!t.endList)return u(l+" as current playlist is live"),!0;var h=o?ns.EXPERIMENTAL_MAX_BUFFER_LOW_WATER_LINE:ns.MAX_BUFFER_LOW_WATER_LINE;if(sc)&&n>=r){var p=l+" as forwardBuffer >= bufferLowWaterLine ("+n+" >= "+r+")";return o&&(p+=" and next bandwidth > current bandwidth ("+d+" > "+c+")"),u(p),!0}return u("not "+l+" as no switching criteria met"),!1}({currentPlaylist:t,nextPlaylist:e,forwardBuffer:i.length?i.end(i.length-1)-this.tech_.currentTime():0,bufferLowWaterLine:this.bufferLowWaterLine(),bufferHighWaterLine:this.bufferHighWaterLine(),duration:this.duration(),experimentalBufferBasedABR:this.experimentalBufferBasedABR,log:this.logger_})},i.setupSegmentLoaderListeners_=function(){var e=this;this.experimentalBufferBasedABR||(this.mainSegmentLoader_.on("bandwidthupdate",(function(){var t=e.selectPlaylist();e.shouldSwitchToMedia_(t)&&e.switchMedia_(t,"bandwidthupdate"),e.tech_.trigger("bandwidthupdate")})),this.mainSegmentLoader_.on("progress",(function(){e.trigger("progress")}))),this.mainSegmentLoader_.on("error",(function(){e.blacklistCurrentPlaylist(e.mainSegmentLoader_.error())})),this.mainSegmentLoader_.on("appenderror",(function(){e.error=e.mainSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.mainSegmentLoader_.on("timestampoffset",(function(){e.tech_.trigger({type:"usage",name:"vhs-timestamp-offset"}),e.tech_.trigger({type:"usage",name:"hls-timestamp-offset"})})),this.audioSegmentLoader_.on("syncinfoupdate",(function(){e.onSyncInfoUpdate_()})),this.audioSegmentLoader_.on("appenderror",(function(){e.error=e.audioSegmentLoader_.error_,e.trigger("error")})),this.mainSegmentLoader_.on("ended",(function(){e.logger_("main segment loader ended"),e.onEndOfStream()})),this.mainSegmentLoader_.on("earlyabort",(function(t){e.experimentalBufferBasedABR||(e.delegateLoaders_("all",["abort"]),e.blacklistCurrentPlaylist({message:"Aborted early because there isn't enough bandwidth to complete the request without rebuffering."},120))}));var t=function(){if(!e.sourceUpdater_.hasCreatedSourceBuffers())return e.tryToCreateSourceBuffers_();var t=e.getCodecsOrExclude_();t&&e.sourceUpdater_.addOrChangeSourceBuffers(t)};this.mainSegmentLoader_.on("trackinfo",t),this.audioSegmentLoader_.on("trackinfo",t),this.mainSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("fmp4",(function(){e.triggeredFmp4Usage||(e.tech_.trigger({type:"usage",name:"vhs-fmp4"}),e.tech_.trigger({type:"usage",name:"hls-fmp4"}),e.triggeredFmp4Usage=!0)})),this.audioSegmentLoader_.on("ended",(function(){e.logger_("audioSegmentLoader ended"),e.onEndOfStream()}))},i.mediaSecondsLoaded_=function(){return Math.max(this.audioSegmentLoader_.mediaSecondsLoaded+this.mainSegmentLoader_.mediaSecondsLoaded)},i.load=function(){this.mainSegmentLoader_.load(),this.mediaTypes_.AUDIO.activePlaylistLoader&&this.audioSegmentLoader_.load(),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&this.subtitleSegmentLoader_.load()},i.smoothQualityChange_=function(e){void 0===e&&(e=this.selectPlaylist()),this.fastQualityChange_(e)},i.fastQualityChange_=function(e){var t=this;void 0===e&&(e=this.selectPlaylist()),e!==this.masterPlaylistLoader_.media()?(this.switchMedia_(e,"fast-quality"),this.mainSegmentLoader_.resetEverything((function(){Yr.browser.IE_VERSION||Yr.browser.IS_EDGE?t.tech_.setCurrentTime(t.tech_.currentTime()+.04):t.tech_.setCurrentTime(t.tech_.currentTime())}))):this.logger_("skipping fastQualityChange because new media is same as old")},i.play=function(){if(!this.setupFirstPlay()){this.tech_.ended()&&this.tech_.setCurrentTime(0),this.hasPlayed_&&this.load();var e=this.tech_.seekable();return this.tech_.duration()===1/0&&this.tech_.currentTime()this.maxPlaylistRetries?1/0:Date.now()+1e3*t,i.excludeUntil=n,e.reason&&(i.lastExcludeReason_=e.reason),this.tech_.trigger("blacklistplaylist"),this.tech_.trigger({type:"usage",name:"vhs-rendition-blacklisted"}),this.tech_.trigger({type:"usage",name:"hls-rendition-blacklisted"});var u=this.selectPlaylist();if(!u)return this.error="Playback cannot continue. No available working or supported playlists.",void this.trigger("error");var l=e.internal?this.logger_:Yr.log.warn,h=e.message?" "+e.message:"";l((e.internal?"Internal problem":"Problem")+" encountered with playlist "+i.id+"."+h+" Switching to playlist "+u.id+"."),u.attributes.AUDIO!==i.attributes.AUDIO&&this.delegateLoaders_("audio",["abort","pause"]),u.attributes.SUBTITLES!==i.attributes.SUBTITLES&&this.delegateLoaders_("subtitle",["abort","pause"]),this.delegateLoaders_("main",["abort","pause"]);var d=u.targetDuration/2*1e3||5e3,c="number"==typeof u.lastRequest&&Date.now()-u.lastRequest<=d;return this.switchMedia_(u,"exclude",s||c)},i.pauseLoading=function(){this.delegateLoaders_("all",["abort","pause"]),this.stopABRTimer_()},i.delegateLoaders_=function(e,t){var i=this,n=[],r="all"===e;(r||"main"===e)&&n.push(this.masterPlaylistLoader_);var a=[];(r||"audio"===e)&&a.push("AUDIO"),(r||"subtitle"===e)&&(a.push("CLOSED-CAPTIONS"),a.push("SUBTITLES")),a.forEach((function(e){var t=i.mediaTypes_[e]&&i.mediaTypes_[e].activePlaylistLoader;t&&n.push(t)})),["main","audio","subtitle"].forEach((function(t){var r=i[t+"SegmentLoader_"];!r||e!==t&&"all"!==e||n.push(r)})),n.forEach((function(e){return t.forEach((function(t){"function"==typeof e[t]&&e[t]()}))}))},i.setCurrentTime=function(e){var t=Zr(this.tech_.buffered(),e);return this.masterPlaylistLoader_&&this.masterPlaylistLoader_.media()&&this.masterPlaylistLoader_.media().segments?t&&t.length?e:(this.mainSegmentLoader_.resetEverything(),this.mainSegmentLoader_.abort(),this.mediaTypes_.AUDIO.activePlaylistLoader&&(this.audioSegmentLoader_.resetEverything(),this.audioSegmentLoader_.abort()),this.mediaTypes_.SUBTITLES.activePlaylistLoader&&(this.subtitleSegmentLoader_.resetEverything(),this.subtitleSegmentLoader_.abort()),void this.load()):0},i.duration=function(){if(!this.masterPlaylistLoader_)return 0;var e=this.masterPlaylistLoader_.media();return e?e.endList?this.mediaSource?this.mediaSource.duration:Zs.Playlist.duration(e):1/0:0},i.seekable=function(){return this.seekable_},i.onSyncInfoUpdate_=function(){var e;if(this.masterPlaylistLoader_){var t=this.masterPlaylistLoader_.media();if(t){var i=this.syncController_.getExpiredTime(t,this.duration());if(null!==i){var n=this.masterPlaylistLoader_.master,r=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t));if(0!==r.length){if(this.mediaTypes_.AUDIO.activePlaylistLoader){if(t=this.mediaTypes_.AUDIO.activePlaylistLoader.media(),null===(i=this.syncController_.getExpiredTime(t,this.duration())))return;if(0===(e=Zs.Playlist.seekable(t,i,Zs.Playlist.liveEdgeDelay(n,t))).length)return}var a,s;this.seekable_&&this.seekable_.length&&(a=this.seekable_.end(0),s=this.seekable_.start(0)),e?e.start(0)>r.end(0)||r.start(0)>e.end(0)?this.seekable_=r:this.seekable_=Yr.createTimeRanges([[e.start(0)>r.start(0)?e.start(0):r.start(0),e.end(0)0&&(n=Math.max(n,i.end(i.length-1))),this.mediaSource.duration!==n&&this.sourceUpdater_.setDuration(n)}},i.dispose=function(){var e=this;this.trigger("dispose"),this.decrypter_.terminate(),this.masterPlaylistLoader_.dispose(),this.mainSegmentLoader_.dispose(),this.loadOnPlay_&&this.tech_.off("play",this.loadOnPlay_),["AUDIO","SUBTITLES"].forEach((function(t){var i=e.mediaTypes_[t].groups;for(var n in i)i[n].forEach((function(e){e.playlistLoader&&e.playlistLoader.dispose()}))})),this.audioSegmentLoader_.dispose(),this.subtitleSegmentLoader_.dispose(),this.sourceUpdater_.dispose(),this.timelineChangeController_.dispose(),this.stopABRTimer_(),this.updateDuration_&&this.mediaSource.removeEventListener("sourceopen",this.updateDuration_),this.mediaSource.removeEventListener("durationchange",this.handleDurationChange_),this.mediaSource.removeEventListener("sourceopen",this.handleSourceOpen_),this.mediaSource.removeEventListener("sourceended",this.handleSourceEnded_),this.off()},i.master=function(){return this.masterPlaylistLoader_.master},i.media=function(){return this.masterPlaylistLoader_.media()||this.initialMedia_},i.areMediaTypesKnown_=function(){var e=!!this.mediaTypes_.AUDIO.activePlaylistLoader,t=!!this.mainSegmentLoader_.getCurrentMediaInfo_(),i=!e||!!this.audioSegmentLoader_.getCurrentMediaInfo_();return!(!t||!i)},i.getCodecsOrExclude_=function(){var e=this,t={main:this.mainSegmentLoader_.getCurrentMediaInfo_()||{},audio:this.audioSegmentLoader_.getCurrentMediaInfo_()||{}};t.video=t.main;var i=Us(this.master(),this.media()),n={},r=!!this.mediaTypes_.AUDIO.activePlaylistLoader;if(t.main.hasVideo&&(n.video=i.video||t.main.videoCodec||g.DEFAULT_VIDEO_CODEC),t.main.isMuxed&&(n.video+=","+(i.audio||t.main.audioCodec||g.DEFAULT_AUDIO_CODEC)),(t.main.hasAudio&&!t.main.isMuxed||t.audio.hasAudio||r)&&(n.audio=i.audio||t.main.audioCodec||t.audio.audioCodec||g.DEFAULT_AUDIO_CODEC,t.audio.isFmp4=t.main.hasAudio&&!t.main.isMuxed?t.main.isFmp4:t.audio.isFmp4),n.audio||n.video){var a,s={};if(["video","audio"].forEach((function(e){if(n.hasOwnProperty(e)&&(r=t[e].isFmp4,o=n[e],!(r?g.browserSupportsCodec(o):g.muxerSupportsCodec(o)))){var i=t[e].isFmp4?"browser":"muxer";s[i]=s[i]||[],s[i].push(n[e]),"audio"===e&&(a=i)}var r,o})),r&&a&&this.media().attributes.AUDIO){var o=this.media().attributes.AUDIO;this.master().playlists.forEach((function(t){(t.attributes&&t.attributes.AUDIO)===o&&t!==e.media()&&(t.excludeUntil=1/0)})),this.logger_("excluding audio group "+o+" as "+a+' does not support codec(s): "'+n.audio+'"')}if(!Object.keys(s).length){if(this.sourceUpdater_.hasCreatedSourceBuffers()&&!this.sourceUpdater_.canChangeType()){var u=[];if(["video","audio"].forEach((function(t){var i=(g.parseCodecs(e.sourceUpdater_.codecs[t]||"")[0]||{}).type,r=(g.parseCodecs(n[t]||"")[0]||{}).type;i&&r&&i.toLowerCase()!==r.toLowerCase()&&u.push('"'+e.sourceUpdater_.codecs[t]+'" -> "'+n[t]+'"')})),u.length)return void this.blacklistCurrentPlaylist({playlist:this.media(),message:"Codec switching not supported: "+u.join(", ")+".",blacklistDuration:1/0,internal:!0})}return n}var l=Object.keys(s).reduce((function(e,t){return e&&(e+=", "),e+=t+' does not support codec(s): "'+s[t].join(",")+'"'}),"")+".";this.blacklistCurrentPlaylist({playlist:this.media(),internal:!0,message:l,blacklistDuration:1/0})}else this.blacklistCurrentPlaylist({playlist:this.media(),message:"Could not determine codecs for playlist.",blacklistDuration:1/0})},i.tryToCreateSourceBuffers_=function(){if("open"===this.mediaSource.readyState&&!this.sourceUpdater_.hasCreatedSourceBuffers()&&this.areMediaTypesKnown_()){var e=this.getCodecsOrExclude_();if(e){this.sourceUpdater_.createSourceBuffers(e);var t=[e.video,e.audio].filter(Boolean).join(",");this.excludeIncompatibleVariants_(t)}}},i.excludeUnsupportedVariants_=function(){var e=this,t=this.master().playlists,i=[];Object.keys(t).forEach((function(n){var r=t[n];if(-1===i.indexOf(r.id)){i.push(r.id);var a=Us(e.master,r),s=[];!a.audio||g.muxerSupportsCodec(a.audio)||g.browserSupportsCodec(a.audio)||s.push("audio codec "+a.audio),!a.video||g.muxerSupportsCodec(a.video)||g.browserSupportsCodec(a.video)||s.push("video codec "+a.video),a.text&&"stpp.ttml.im1t"===a.text&&s.push("text codec "+a.text),s.length&&(r.excludeUntil=1/0,e.logger_("excluding "+r.id+" for unsupported: "+s.join(", ")))}}))},i.excludeIncompatibleVariants_=function(e){var t=this,i=[],n=this.master().playlists,r=Rs(g.parseCodecs(e)),a=Os(r),s=r.video&&g.parseCodecs(r.video)[0]||null,o=r.audio&&g.parseCodecs(r.audio)[0]||null;Object.keys(n).forEach((function(e){var r=n[e];if(-1===i.indexOf(r.id)&&r.excludeUntil!==1/0){i.push(r.id);var u=[],l=Us(t.masterPlaylistLoader_.master,r),h=Os(l);if(l.audio||l.video){if(h!==a&&u.push('codec count "'+h+'" !== "'+a+'"'),!t.sourceUpdater_.canChangeType()){var d=l.video&&g.parseCodecs(l.video)[0]||null,c=l.audio&&g.parseCodecs(l.audio)[0]||null;d&&s&&d.type.toLowerCase()!==s.type.toLowerCase()&&u.push('video codec "'+d.type+'" !== "'+s.type+'"'),c&&o&&c.type.toLowerCase()!==o.type.toLowerCase()&&u.push('audio codec "'+c.type+'" !== "'+o.type+'"')}u.length&&(r.excludeUntil=1/0,t.logger_("blacklisting "+r.id+": "+u.join(" && ")))}}}))},i.updateAdCues_=function(e){var t=0,i=this.seekable();i.length&&(t=i.start(0)),function(e,t,i){if(void 0===i&&(i=0),e.segments)for(var n,r=i,a=0;a0&&this.logger_("resetting possible stalled download count for "+e+" loader"),this[e+"StalledDownloads_"]=0,this[e+"Buffered_"]=t.buffered_()},t.checkSegmentDownloads_=function(e){var t=this.masterPlaylistController_,i=t[e+"SegmentLoader_"],n=i.buffered_(),r=function(e,t){if(e===t)return!1;if(!e&&t||!t&&e)return!0;if(e.length!==t.length)return!0;for(var i=0;i=t.end(t.length-1)))return this.techWaiting_();this.consecutiveUpdates>=5&&e===this.lastRecordedTime?(this.consecutiveUpdates++,this.waiting_()):e===this.lastRecordedTime?this.consecutiveUpdates++:(this.consecutiveUpdates=0,this.lastRecordedTime=e)}},t.cancelTimer_=function(){this.consecutiveUpdates=0,this.timer_&&(this.logger_("cancelTimer_"),clearTimeout(this.timer_)),this.timer_=null},t.fixesBadSeeks_=function(){if(!this.tech_.seeking())return!1;var e,t=this.seekable(),i=this.tech_.currentTime();this.afterSeekableWindow_(t,i,this.media(),this.allowSeeksWithinUnsafeLiveWindow)&&(e=t.end(t.length-1));if(this.beforeSeekableWindow_(t,i)){var n=t.start(0);e=n+(n===t.end(0)?0:.1)}if(void 0!==e)return this.logger_("Trying to seek outside of seekable at time "+i+" with seekable range "+ta(t)+". Seeking to "+e+"."),this.tech_.setCurrentTime(e),!0;var r=this.tech_.buffered();return!!function(e){var t=e.buffered,i=e.targetDuration,n=e.currentTime;return!!t.length&&(!(t.end(0)-t.start(0)<2*i)&&(!(n>t.start(0))&&t.start(0)-n "+i.end(0)+"]. Attempting to resume playback by seeking to the current time."),this.tech_.trigger({type:"usage",name:"vhs-unknown-waiting"}),void this.tech_.trigger({type:"usage",name:"hls-unknown-waiting"})):void 0}},t.techWaiting_=function(){var e=this.seekable(),t=this.tech_.currentTime();if(this.tech_.seeking()&&this.fixesBadSeeks_())return!0;if(this.tech_.seeking()||null!==this.timer_)return!0;if(this.beforeSeekableWindow_(e,t)){var i=e.end(e.length-1);return this.logger_("Fell out of live window at time "+t+". Seeking to live point (seekable end) "+i),this.cancelTimer_(),this.tech_.setCurrentTime(i),this.tech_.trigger({type:"usage",name:"vhs-live-resync"}),this.tech_.trigger({type:"usage",name:"hls-live-resync"}),!0}var n=this.tech_.vhs.masterPlaylistController_.sourceUpdater_,r=this.tech_.buffered();if(this.videoUnderflow_({audioBuffered:n.audioBuffered(),videoBuffered:n.videoBuffered(),currentTime:t}))return this.cancelTimer_(),this.tech_.setCurrentTime(t),this.tech_.trigger({type:"usage",name:"vhs-video-underflow"}),this.tech_.trigger({type:"usage",name:"hls-video-underflow"}),!0;var a=ea(r,t);if(a.length>0){var s=a.start(0)-t;return this.logger_("Stopped at "+t+", setting timer for "+s+", seeking to "+a.start(0)),this.cancelTimer_(),this.timer_=setTimeout(this.skipTheGap_.bind(this),1e3*s,t),!0}return!1},t.afterSeekableWindow_=function(e,t,i,n){if(void 0===n&&(n=!1),!e.length)return!1;var r=e.end(e.length-1)+.1;return!i.endList&&n&&(r=e.end(e.length-1)+3*i.targetDuration),t>r},t.beforeSeekableWindow_=function(e,t){return!!(e.length&&e.start(0)>0&&t2)return{start:r,end:a}}return null},e}(),zo={errorInterval:30,getSource:function(e){return e(this.tech({IWillNotUseThisInPlugins:!0}).currentSource_||this.currentSource())}},Go=function(e){!function e(t,i){var n=0,r=0,a=Yr.mergeOptions(zo,i);t.ready((function(){t.trigger({type:"usage",name:"vhs-error-reload-initialized"}),t.trigger({type:"usage",name:"hls-error-reload-initialized"})}));var s=function(){r&&t.currentTime(r)},o=function(e){null!=e&&(r=t.duration()!==1/0&&t.currentTime()||0,t.one("loadedmetadata",s),t.src(e),t.trigger({type:"usage",name:"vhs-error-reload"}),t.trigger({type:"usage",name:"hls-error-reload"}),t.play())},u=function(){return Date.now()-n<1e3*a.errorInterval?(t.trigger({type:"usage",name:"vhs-error-reload-canceled"}),void t.trigger({type:"usage",name:"hls-error-reload-canceled"})):a.getSource&&"function"==typeof a.getSource?(n=Date.now(),a.getSource.call(t,o)):void Yr.log.error("ERROR: reloadSourceOnError - The option getSource must be a function!")},l=function e(){t.off("loadedmetadata",s),t.off("error",u),t.off("dispose",e)};t.on("error",u),t.on("dispose",l),t.reloadSourceOnError=function(i){l(),e(t,i)}}(this,e)},Wo={PlaylistLoader:Ua,Playlist:Ta,utils:Ka,STANDARD_PLAYLIST_SELECTOR:Hs,INITIAL_PLAYLIST_SELECTOR:function(){var e=this,t=this.playlists.master.playlists.filter(Ta.isEnabled);return Ns(t,(function(e,t){return js(e,t)})),t.filter((function(t){return!!Us(e.playlists.master,t).video}))[0]||null},lastBandwidthSelector:Hs,movingAverageBandwidthSelector:function(e){var t=-1,i=-1;if(e<0||e>1)throw new Error("Moving average bandwidth decay must be between 0 and 1.");return function(){var n=this.useDevicePixelRatio&&A.default.devicePixelRatio||1;return t<0&&(t=this.systemBandwidth,i=this.systemBandwidth),this.systemBandwidth>0&&this.systemBandwidth!==i&&(t=e*this.systemBandwidth+(1-e)*t,i=this.systemBandwidth),Vs(this.playlists.master,t,parseInt(Bs(this.tech_.el(),"width"),10)*n,parseInt(Bs(this.tech_.el(),"height"),10)*n,this.limitRenditionByPlayerDimensions,this.masterPlaylistController_)}},comparePlaylistBandwidth:js,comparePlaylistResolution:function(e,t){var i,n;return e.attributes.RESOLUTION&&e.attributes.RESOLUTION.width&&(i=e.attributes.RESOLUTION.width),i=i||A.default.Number.MAX_VALUE,t.attributes.RESOLUTION&&t.attributes.RESOLUTION.width&&(n=t.attributes.RESOLUTION.width),i===(n=n||A.default.Number.MAX_VALUE)&&e.attributes.BANDWIDTH&&t.attributes.BANDWIDTH?e.attributes.BANDWIDTH-t.attributes.BANDWIDTH:i-n},xhr:Na()};Object.keys(ns).forEach((function(e){Object.defineProperty(Wo,e,{get:function(){return Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),ns[e]},set:function(t){Yr.log.warn("using Vhs."+e+" is UNSAFE be sure you know what you are doing"),"number"!=typeof t||t<0?Yr.log.warn("value of Vhs."+e+" must be greater than or equal to 0"):ns[e]=t}})}));var Yo=function(e,t){for(var i=t.media(),n=-1,r=0;r0?1/this.throughput:0,Math.floor(1/(t+e))},set:function(){Yr.log.error('The "systemBandwidth" property is read-only')}}}),this.options_.bandwidth&&(this.bandwidth=this.options_.bandwidth),this.options_.throughput&&(this.throughput=this.options_.throughput),Object.defineProperties(this.stats,{bandwidth:{get:function(){return i.bandwidth||0},enumerable:!0},mediaRequests:{get:function(){return i.masterPlaylistController_.mediaRequests_()||0},enumerable:!0},mediaRequestsAborted:{get:function(){return i.masterPlaylistController_.mediaRequestsAborted_()||0},enumerable:!0},mediaRequestsTimedout:{get:function(){return i.masterPlaylistController_.mediaRequestsTimedout_()||0},enumerable:!0},mediaRequestsErrored:{get:function(){return i.masterPlaylistController_.mediaRequestsErrored_()||0},enumerable:!0},mediaTransferDuration:{get:function(){return i.masterPlaylistController_.mediaTransferDuration_()||0},enumerable:!0},mediaBytesTransferred:{get:function(){return i.masterPlaylistController_.mediaBytesTransferred_()||0},enumerable:!0},mediaSecondsLoaded:{get:function(){return i.masterPlaylistController_.mediaSecondsLoaded_()||0},enumerable:!0},mediaAppends:{get:function(){return i.masterPlaylistController_.mediaAppends_()||0},enumerable:!0},mainAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.mainAppendsToLoadedData_()||0},enumerable:!0},audioAppendsToLoadedData:{get:function(){return i.masterPlaylistController_.audioAppendsToLoadedData_()||0},enumerable:!0},appendsToLoadedData:{get:function(){return i.masterPlaylistController_.appendsToLoadedData_()||0},enumerable:!0},timeToLoadedData:{get:function(){return i.masterPlaylistController_.timeToLoadedData_()||0},enumerable:!0},buffered:{get:function(){return ia(i.tech_.buffered())},enumerable:!0},currentTime:{get:function(){return i.tech_.currentTime()},enumerable:!0},currentSource:{get:function(){return i.tech_.currentSource_},enumerable:!0},currentTech:{get:function(){return i.tech_.name_},enumerable:!0},duration:{get:function(){return i.tech_.duration()},enumerable:!0},master:{get:function(){return i.playlists.master},enumerable:!0},playerDimensions:{get:function(){return i.tech_.currentDimensions()},enumerable:!0},seekable:{get:function(){return ia(i.tech_.seekable())},enumerable:!0},timestamp:{get:function(){return Date.now()},enumerable:!0},videoPlaybackQuality:{get:function(){return i.tech_.getVideoPlaybackQuality()},enumerable:!0}}),this.tech_.one("canplay",this.masterPlaylistController_.setupFirstPlay.bind(this.masterPlaylistController_)),this.tech_.on("bandwidthupdate",(function(){i.options_.useBandwidthFromLocalStorage&&function(e){if(!A.default.localStorage)return!1;var t=Xo();t=t?Yr.mergeOptions(t,e):e;try{A.default.localStorage.setItem("videojs-vhs",JSON.stringify(t))}catch(e){return!1}}({bandwidth:i.bandwidth,throughput:Math.round(i.throughput)})})),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var e;(e=i).representations=function(){var t=e.masterPlaylistController_.master(),i=ba(t)?e.masterPlaylistController_.getAudioTrackPlaylists_():t.playlists;return i?i.filter((function(e){return!pa(e)})).map((function(t,i){return new jo(e,t,t.id)})):[]}})),this.masterPlaylistController_.sourceUpdater_.on("createdsourcebuffers",(function(){i.setupEme_()})),this.on(this.masterPlaylistController_,"progress",(function(){this.tech_.trigger("progress")})),this.on(this.masterPlaylistController_,"firstplay",(function(){this.ignoreNextSeekingEvent_=!0})),this.setupQualityLevels_(),this.tech_.el()&&(this.mediaSourceUrl_=A.default.URL.createObjectURL(this.masterPlaylistController_.mediaSource),this.tech_.src(this.mediaSourceUrl_))}},i.setupEme_=function(){var e=this,t=this.masterPlaylistController_.mediaTypes_.AUDIO.activePlaylistLoader,i=Ko({player:this.player_,sourceKeySystems:this.source_.keySystems,media:this.playlists.media(),audioMedia:t&&t.media()});this.player_.tech_.on("keystatuschange",(function(t){"output-restricted"===t.status&&e.masterPlaylistController_.blacklistCurrentPlaylist({playlist:e.masterPlaylistController_.media(),message:"DRM keystatus changed to "+t.status+". Playlist will fail to play. Check for HDCP content.",blacklistDuration:1/0})})),11!==Yr.browser.IE_VERSION&&i?(this.logger_("waiting for EME key session creation"),qo({player:this.player_,sourceKeySystems:this.source_.keySystems,audioMedia:t&&t.media(),mainPlaylists:this.playlists.master.playlists}).then((function(){e.logger_("created EME key session"),e.masterPlaylistController_.sourceUpdater_.initializedEme()})).catch((function(t){e.logger_("error while creating EME key session",t),e.player_.error({message:"Failed to initialize media keys for EME",code:3})}))):this.masterPlaylistController_.sourceUpdater_.initializedEme()},i.setupQualityLevels_=function(){var e=this,t=Yr.players[this.tech_.options_.playerId];t&&t.qualityLevels&&!this.qualityLevels_&&(this.qualityLevels_=t.qualityLevels(),this.masterPlaylistController_.on("selectedinitialmedia",(function(){var t,i;t=e.qualityLevels_,(i=e).representations().forEach((function(e){t.addQualityLevel(e)})),Yo(t,i.playlists)})),this.playlists.on("mediachange",(function(){Yo(e.qualityLevels_,e.playlists)})))},t.version=function(){return{"@videojs/http-streaming":"2.10.2","mux.js":"5.13.0","mpd-parser":"0.19.0","m3u8-parser":"4.7.0","aes-decrypter":"3.1.2"}},i.version=function(){return this.constructor.version()},i.canChangeType=function(){return yo.canChangeType()},i.play=function(){this.masterPlaylistController_.play()},i.setCurrentTime=function(e){this.masterPlaylistController_.setCurrentTime(e)},i.duration=function(){return this.masterPlaylistController_.duration()},i.seekable=function(){return this.masterPlaylistController_.seekable()},i.dispose=function(){this.playbackWatcher_&&this.playbackWatcher_.dispose(),this.masterPlaylistController_&&this.masterPlaylistController_.dispose(),this.qualityLevels_&&this.qualityLevels_.dispose(),this.player_&&(delete this.player_.vhs,delete this.player_.dash,delete this.player_.hls),this.tech_&&this.tech_.vhs&&delete this.tech_.vhs,this.tech_&&delete this.tech_.hls,this.mediaSourceUrl_&&A.default.URL.revokeObjectURL&&(A.default.URL.revokeObjectURL(this.mediaSourceUrl_),this.mediaSourceUrl_=null),e.prototype.dispose.call(this)},i.convertToProgramTime=function(e,t){return Xa({playlist:this.masterPlaylistController_.media(),time:e,callback:t})},i.seekToProgramTime=function(e,t,i,n){return void 0===i&&(i=!0),void 0===n&&(n=2),Qa({programTime:e,playlist:this.masterPlaylistController_.media(),retryCount:n,pauseAfterSeek:i,seekTo:this.options_.seekTo,tech:this.options_.tech,callback:t})},t}(Yr.getComponent("Component")),$o={name:"videojs-http-streaming",VERSION:"2.10.2",canHandleSource:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t);return $o.canPlayType(e.type,i)},handleSource:function(e,t,i){void 0===i&&(i={});var n=Yr.mergeOptions(Yr.options,i);return t.vhs=new Qo(e,t,n),Yr.hasOwnProperty("hls")||Object.defineProperty(t,"hls",{get:function(){return Yr.log.warn("player.tech().hls is deprecated. Use player.tech().vhs instead."),t.vhs},configurable:!0}),t.vhs.xhr=Na(),t.vhs.src(e.src,e.type),t.vhs},canPlayType:function(e,t){void 0===t&&(t={});var i=Yr.mergeOptions(Yr.options,t).vhs.overrideNative,n=void 0===i?!Yr.browser.IS_ANY_SAFARI:i,r=_.simpleTypeFromSourceType(e);return r&&(!Wo.supportsTypeNatively(r)||n)?"maybe":""}};g.browserSupportsCodec("avc1.4d400d,mp4a.40.2")&&Yr.getTech("Html5").registerSourceHandler($o,0),Yr.VhsHandler=Qo,Object.defineProperty(Yr,"HlsHandler",{get:function(){return Yr.log.warn("videojs.HlsHandler is deprecated. Use videojs.VhsHandler instead."),Qo},configurable:!0}),Yr.VhsSourceHandler=$o,Object.defineProperty(Yr,"HlsSourceHandler",{get:function(){return Yr.log.warn("videojs.HlsSourceHandler is deprecated. Use videojs.VhsSourceHandler instead."),$o},configurable:!0}),Yr.Vhs=Wo,Object.defineProperty(Yr,"Hls",{get:function(){return Yr.log.warn("videojs.Hls is deprecated. Use videojs.Vhs instead."),Wo},configurable:!0}),Yr.use||(Yr.registerComponent("Hls",Wo),Yr.registerComponent("Vhs",Wo)),Yr.options.vhs=Yr.options.vhs||{},Yr.options.hls=Yr.options.hls||{},Yr.registerPlugin?Yr.registerPlugin("reloadSourceOnError",Go):Yr.plugin("reloadSourceOnError",Go),t.exports=Yr},{"@babel/runtime/helpers/assertThisInitialized":1,"@babel/runtime/helpers/construct":2,"@babel/runtime/helpers/extends":3,"@babel/runtime/helpers/inherits":4,"@babel/runtime/helpers/inheritsLoose":5,"@videojs/vhs-utils/cjs/byte-helpers":9,"@videojs/vhs-utils/cjs/codecs.js":11,"@videojs/vhs-utils/cjs/containers":12,"@videojs/vhs-utils/cjs/id3-helpers":15,"@videojs/vhs-utils/cjs/media-types.js":16,"@videojs/vhs-utils/cjs/resolve-url.js":20,"@videojs/xhr":23,"global/document":34,"global/window":35,keycode:38,"m3u8-parser":39,"mpd-parser":41,"mux.js/lib/tools/parse-sidx":42,"mux.js/lib/utils/clock":43,"safe-json-parse/tuple":45,"videojs-vtt.js":48}],48:[function(e,t,i){var n=e("global/window"),r=t.exports={WebVTT:e("./vtt.js"),VTTCue:e("./vttcue.js"),VTTRegion:e("./vttregion.js")};n.vttjs=r,n.WebVTT=r.WebVTT;var a=r.VTTCue,s=r.VTTRegion,o=n.VTTCue,u=n.VTTRegion;r.shim=function(){n.VTTCue=a,n.VTTRegion=s},r.restore=function(){n.VTTCue=o,n.VTTRegion=u},n.VTTCue||r.shim()},{"./vtt.js":49,"./vttcue.js":50,"./vttregion.js":51,"global/window":35}],49:[function(e,t,i){var n=e("global/document"),r=Object.create||function(){function e(){}return function(t){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return e.prototype=t,new e}}();function a(e,t){this.name="ParsingError",this.code=e.code,this.message=t||e.message}function s(e){function t(e,t,i,n){return 3600*(0|e)+60*(0|t)+(0|i)+(0|n)/1e3}var i=e.match(/^(\d+):(\d{1,2})(:\d{1,2})?\.(\d{3})/);return i?i[3]?t(i[1],i[2],i[3].replace(":",""),i[4]):i[1]>59?t(i[1],i[2],0,i[4]):t(0,i[1],i[2],i[4]):null}function o(){this.values=r(null)}function u(e,t,i,n){var r=n?e.split(n):[e];for(var a in r)if("string"==typeof r[a]){var s=r[a].split(i);if(2===s.length)t(s[0],s[1])}}function l(e,t,i){var n=e;function r(){var t=s(e);if(null===t)throw new a(a.Errors.BadTimeStamp,"Malformed timestamp: "+n);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function l(){e=e.replace(/^\s+/,"")}if(l(),t.startTime=r(),l(),"--\x3e"!==e.substr(0,3))throw new a(a.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+n);e=e.substr(3),l(),t.endTime=r(),l(),function(e,t){var n=new o;u(e,(function(e,t){switch(e){case"region":for(var r=i.length-1;r>=0;r--)if(i[r].id===t){n.set(e,i[r].region);break}break;case"vertical":n.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];n.integer(e,s),n.percent(e,s)&&n.set("snapToLines",!1),n.alt(e,s,["auto"]),2===a.length&&n.alt("lineAlign",a[1],["start","center","end"]);break;case"position":a=t.split(","),n.percent(e,a[0]),2===a.length&&n.alt("positionAlign",a[1],["start","center","end"]);break;case"size":n.percent(e,t);break;case"align":n.alt(e,t,["start","center","end","left","right"])}}),/:/,/\s/),t.region=n.get("region",null),t.vertical=n.get("vertical","");try{t.line=n.get("line","auto")}catch(e){}t.lineAlign=n.get("lineAlign","start"),t.snapToLines=n.get("snapToLines",!0),t.size=n.get("size",100);try{t.align=n.get("align","center")}catch(e){t.align=n.get("align","middle")}try{t.position=n.get("position","auto")}catch(e){t.position=n.get("position",{start:0,left:0,center:50,middle:50,end:100,right:100},t.align)}t.positionAlign=n.get("positionAlign",{start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"},t.align)}(e,t)}a.prototype=r(Error.prototype),a.prototype.constructor=a,a.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},o.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,i){for(var n=0;n=0&&t<=100)&&(this.set(e,t),!0)}};var h=n.createElement&&n.createElement("textarea"),d={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},c={white:"rgba(255,255,255,1)",lime:"rgba(0,255,0,1)",cyan:"rgba(0,255,255,1)",red:"rgba(255,0,0,1)",yellow:"rgba(255,255,0,1)",magenta:"rgba(255,0,255,1)",blue:"rgba(0,0,255,1)",black:"rgba(0,0,0,1)"},f={v:"title",lang:"lang"},p={rt:"ruby"};function m(e,t){function i(){if(!t)return null;var e,i=t.match(/^([^<]*)(<[^>]*>?)?/);return e=i[1]?i[1]:i[2],t=t.substr(e.length),e}function n(e,t){return!p[t.localName]||p[t.localName]===e.localName}function r(t,i){var n=d[t];if(!n)return null;var r=e.document.createElement(n),a=f[t];return a&&i&&(r[a]=i.trim()),r}for(var a,o,u=e.document.createElement("div"),l=u,m=[];null!==(a=i());)if("<"!==a[0])l.appendChild(e.document.createTextNode((o=a,h.innerHTML=o,o=h.textContent,h.textContent="",o)));else{if("/"===a[1]){m.length&&m[m.length-1]===a.substr(2).replace(">","")&&(m.pop(),l=l.parentNode);continue}var g,_=s(a.substr(1,a.length-2));if(_){g=e.document.createProcessingInstruction("timestamp",_),l.appendChild(g);continue}var v=a.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!v)continue;if(!(g=r(v[1],v[3])))continue;if(!n(l,g))continue;if(v[2]){var y=v[2].split(".");y.forEach((function(e){var t=/^bg_/.test(e),i=t?e.slice(3):e;if(c.hasOwnProperty(i)){var n=t?"background-color":"color",r=c[i];g.style[n]=r}})),g.className=y.join(" ")}m.push(v[1]),l.appendChild(g),l=g}return u}var g=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];function _(e){for(var t=0;t=i[0]&&e<=i[1])return!0}return!1}function v(e){var t=[],i="";if(!e||!e.childNodes)return"ltr";function n(e,t){for(var i=t.childNodes.length-1;i>=0;i--)e.push(t.childNodes[i])}function r(e){if(!e||!e.length)return null;var t=e.pop(),i=t.textContent||t.innerText;if(i){var a=i.match(/^.*(\n|\r)/);return a?(e.length=0,a[0]):i}return"ruby"===t.tagName?r(e):t.childNodes?(n(e,t),r(e)):void 0}for(n(t,e);i=r(t);)for(var a=0;a=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;for(var t=e.track,i=t.textTrackList,n=0,r=0;rd&&(h=h<0?-1:1,h*=Math.ceil(d/l)*l),s<0&&(h+=""===a.vertical?i.height:i.width,o=o.reverse()),r.move(c,h)}else{var f=r.lineHeight/i.height*100;switch(a.lineAlign){case"center":s-=f/2;break;case"end":s-=f}switch(a.vertical){case"":t.applyStyles({top:t.formatStyle(s,"%")});break;case"rl":t.applyStyles({left:t.formatStyle(s,"%")});break;case"lr":t.applyStyles({right:t.formatStyle(s,"%")})}o=["+y","-x","+x","-y"],r=new T(t)}var p=function(e,t){for(var r,a=new T(e),s=1,o=0;ou&&(r=new T(e),s=u),e=new T(a)}return r||a}(r,o);t.move(p.toCSSCompatValues(i))}function E(){}y.prototype.applyStyles=function(e,t){for(var i in t=t||this.div,e)e.hasOwnProperty(i)&&(t.style[i]=e[i])},y.prototype.formatStyle=function(e,t){return 0===e?0:e+t},b.prototype=r(y.prototype),b.prototype.constructor=b,T.prototype.move=function(e,t){switch(t=void 0!==t?t:this.lineHeight,e){case"+x":this.left+=t,this.right+=t;break;case"-x":this.left-=t,this.right-=t;break;case"+y":this.top+=t,this.bottom+=t;break;case"-y":this.top-=t,this.bottom-=t}},T.prototype.overlaps=function(e){return this.lefte.left&&this.tope.top},T.prototype.overlapsAny=function(e){for(var t=0;t=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right},T.prototype.overlapsOppositeAxis=function(e,t){switch(t){case"+x":return this.lefte.right;case"+y":return this.tope.bottom}},T.prototype.intersectPercentage=function(e){return Math.max(0,Math.min(this.right,e.right)-Math.max(this.left,e.left))*Math.max(0,Math.min(this.bottom,e.bottom)-Math.max(this.top,e.top))/(this.height*this.width)},T.prototype.toCSSCompatValues=function(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}},T.getSimpleBoxPosition=function(e){var t=e.div?e.div.offsetHeight:e.tagName?e.offsetHeight:0,i=e.div?e.div.offsetWidth:e.tagName?e.offsetWidth:0,n=e.div?e.div.offsetTop:e.tagName?e.offsetTop:0;return{left:(e=e.div?e.div.getBoundingClientRect():e.tagName?e.getBoundingClientRect():e).left,right:e.right,top:e.top||n,height:e.height||t,bottom:e.bottom||n+(e.height||t),width:e.width||i}},E.StringDecoder=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}},E.convertCueToDOMTree=function(e,t){return e&&t?m(e,t):null};E.processCues=function(e,t,i){if(!e||!t||!i)return null;for(;i.firstChild;)i.removeChild(i.firstChild);var n=e.document.createElement("div");if(n.style.position="absolute",n.style.left="0",n.style.right="0",n.style.top="0",n.style.bottom="0",n.style.margin="1.5%",i.appendChild(n),function(e){for(var t=0;t100)throw new Error("Position must be between 0 and 100.");m=e,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return g},set:function(e){var t=a(e);t&&(g=t,this.hasBeenReset=!0)}},size:{enumerable:!0,get:function(){return _},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");_=e,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return v},set:function(e){var t=a(e);if(!t)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");v=t,this.hasBeenReset=!0}}}),this.displayState=void 0}s.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},t.exports=s},{}],51:[function(e,t,i){var n={"":!0,up:!0};function r(e){return"number"==typeof e&&e>=0&&e<=100}t.exports=function(){var e=100,t=3,i=0,a=100,s=0,o=100,u="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return e},set:function(t){if(!r(t))throw new Error("Width must be between 0 and 100.");e=t}},lines:{enumerable:!0,get:function(){return t},set:function(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");t=e}},regionAnchorY:{enumerable:!0,get:function(){return a},set:function(e){if(!r(e))throw new Error("RegionAnchorX must be between 0 and 100.");a=e}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(e){if(!r(e))throw new Error("RegionAnchorY must be between 0 and 100.");i=e}},viewportAnchorY:{enumerable:!0,get:function(){return o},set:function(e){if(!r(e))throw new Error("ViewportAnchorY must be between 0 and 100.");o=e}},viewportAnchorX:{enumerable:!0,get:function(){return s},set:function(e){if(!r(e))throw new Error("ViewportAnchorX must be between 0 and 100.");s=e}},scroll:{enumerable:!0,get:function(){return u},set:function(e){var t=function(e){return"string"==typeof e&&(!!n[e.toLowerCase()]&&e.toLowerCase())}(e);!1===t||(u=t)}}})}},{}],52:[function(e,t,i){"use strict";t.exports={H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER:0,DEFAILT_WEBGL_PLAY_ID:"glplayer",PLAYER_IN_TYPE_MP4:"mp4",PLAYER_IN_TYPE_FLV:"flv",PLAYER_IN_TYPE_HTTPFLV:"httpflv",PLAYER_IN_TYPE_RAW_265:"raw265",PLAYER_IN_TYPE_TS:"ts",PLAYER_IN_TYPE_MPEGTS:"mpegts",PLAYER_IN_TYPE_M3U8:"hls",PLAYER_IN_TYPE_M3U8_VOD:"m3u8",PLAYER_IN_TYPE_M3U8_LIVE:"hls",APPEND_TYPE_STREAM:0,APPEND_TYPE_FRAME:1,APPEND_TYPE_SEQUENCE:2,DEFAULT_WIDTH:600,DEFAULT_HEIGHT:600,DEFAULT_FPS:30,DEFAULT_FRAME_DUR:40,DEFAULT_FIXED:!1,DEFAULT_SAMPLERATE:44100,DEFAULT_CHANNELS:2,DEFAULT_CONSU_SAMPLE_LEN:20,PLAYER_MODE_VOD:"vod",PLAYER_MODE_NOTIME_LIVE:"live",AUDIO_MODE_ONCE:"ONCE",AUDIO_MODE_SWAP:"SWAP",DEFAULT_STRING_LIVE:"LIVE",CODEC_H265:0,CODEC_H264:1,PLAYER_CORE_TYPE_DEFAULT:0,PLAYER_CORE_TYPE_CNATIVE:1,PLAYER_CNATIVE_VOD_RETRY_MAX:7,URI_PROTOCOL_WEBSOCKET:"ws",URI_PROTOCOL_WEBSOCKET_DESC:"websocket",URI_PROTOCOL_HTTP:"http",URI_PROTOCOL_HTTP_DESC:"http",FETCH_FIRST_MAX_TIMES:5,FETCH_HTTP_FLV_TIMEOUT_MS:7e3,V_CODEC_NAME_HEVC:265,V_CODEC_NAME_AVC:264,V_CODEC_NAME_UNKN:500,A_CODEC_NAME_AAC:112,A_CODEC_NAME_MP3:113,A_CODEC_NAME_UNKN:500,CACHE_NO_LOADCACHE:1001,CACHE_WITH_PLAY_SIGN:1002,CACHE_WITH_NOPLAY_SIGN:1003,V_CODEC_AVC_DEFAULT_FPS:25}},{}],53:[function(e,t,i){"use strict";var n=window.AudioContext||window.webkitAudioContext,r=e("../consts"),a=e("./av-common");t.exports=function(){var e={options:{sampleRate:r.DEFAULT_SAMPLERATE,appendType:r.APPEND_TYPE_FRAME,playMode:r.AUDIO_MODE_SWAP},sourceChannel:-1,audioCtx:new n({latencyHint:"interactive",sampleRate:r.DEFAULT_SAMPLERATE}),gainNode:null,sourceList:[],startStatus:!1,sampleQueue:[],nextBuffer:null,playTimestamp:0,playStartTime:0,durationMs:-1,isLIVE:!1,voice:1,onLoadCache:null,resetStartParam:function(){e.playTimestamp=0,e.playStartTime=0},setOnLoadCache:function(t){e.onLoadCache=t},setDurationMs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;e.durationMs=t},setVoice:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;e.voice=t,e.gainNode.gain.value=t},getAlignVPTS:function(){return e.playTimestamp+(a.GetMsTime()-e.playStartTime)/1e3},swapSource:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==e.startStatus)return null;if(t<0||t>=e.sourceList.length)return null;if(i<0||i>=e.sourceList.length)return null;try{e.sourceChannel===t&&null!==e.sourceList[t]&&(e.sourceList[t].disconnect(e.gainNode),e.sourceList[t]=null)}catch(e){console.error("[DEFINE ERROR] audioPcmModule disconnect source Index:"+t+" error happened!",e)}e.sourceChannel=i;var n=e.decodeSample(i,t);-2==n&&e.isLIVE&&(e.getAlignVPTS()>=e.durationMs/1e3-.04?e.pause():null!==e.onLoadCache&&e.onLoadCache())},addSample:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==t||!t||null==t)&&(0==e.sampleQueue.length&&(e.seekPos=t.pts),e.sampleQueue.push(t),e.sampleQueue.length,!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=e.nextBuffer||e.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){e.swapSource(t,i)}),0==e.sampleQueue.length)return e.isLIVE?(e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].onended=function(){e.swapSource(t,i)},e.sourceList[t].stop(),0):-2;if(e.sourceList[t].buffer)return e.swapSource(t,i),0;if(null==e.nextBuffer||e.nextBuffer.data.length<1)return e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0,e.sourceList[t].stop(),1;var n=e.nextBuffer.data;e.playTimestamp=e.nextBuffer.pts,e.playStartTime=a.GetMsTime(),e.nextBuffer.data,e.playTimestamp;try{var r=e.audioCtx.createBuffer(1,n.length,e.options.sampleRate);r.copyToChannel(n,0),null!==e.sourceList[t]&&(e.sourceList[t].buffer=r,e.sourceList[t].connect(e.gainNode),e.sourceList[t].start(),e.sourceList[t].startState=!0)}catch(t){return e.nextBuffer=null,-3}return e.nextBuffer=null,0},decodeWholeSamples:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.sourceChannel=t,t<0||t>=e.sourceList.length)return-1;if(null!=e.sourceList[t]&&null!=e.sourceList[t]&&e.sourceList[t]||(e.sourceList[t]=e.audioCtx.createBufferSource(),e.sourceList[t].onended=function(){}),0==e.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e},setVoice:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.voice=e,t.gainNode.gain.value=e},getAlignVPTS:function(){return t.playTimestamp+(a.GetMsTime()-t.playStartTime)/1e3},swapSource:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(0==t.startStatus)return null;if(e<0||e>=t.sourceList.length)return null;if(i<0||i>=t.sourceList.length)return null;try{t.sourceChannel===e&&null!==t.sourceList[e]&&(t.sourceList[e].disconnect(t.gainNode),t.sourceList[e]=null)}catch(t){console.error("[DEFINE ERROR] audioModule disconnect source Index:"+e+" error happened!",t)}t.sourceChannel=i;var n=t.decodeSample(i,e);-2==n&&t.isLIVE&&(t.getAlignVPTS()>=t.durationMs/1e3-.04?t.pause():null!==t.onLoadCache&&t.onLoadCache())},addSample:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return!(null==e||!e||null==e)&&(0==t.sampleQueue.length&&(t.seekPos=e.pts),t.sampleQueue.push(e),!0)},runNextBuffer:function(){window.setInterval((function(){if(!(null!=t.nextBuffer||t.sampleQueue.length0&&void 0!==arguments[0]?arguments[0]:-1,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;if(e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){t.swapSource(e,i)}),0==t.sampleQueue.length)return t.isLIVE?(t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].onended=function(){t.swapSource(e,i)},t.sourceList[e].stop(),0):-2;if(t.sourceList[e].buffer)return t.swapSource(e,i),0;if(null==t.nextBuffer||t.nextBuffer.data.length<1)return t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0,t.sourceList[e].stop(),1;var n=t.nextBuffer.data.buffer;t.playTimestamp=t.nextBuffer.pts,t.playStartTime=a.GetMsTime();try{t.audioCtx.decodeAudioData(n,(function(i){null!==t.sourceList[e]&&(t.sourceList[e].buffer=i,t.sourceList[e].connect(t.gainNode),t.sourceList[e].start(),t.sourceList[e].startState=!0)}),(function(e){}))}catch(e){return t.nextBuffer=null,-3}return t.nextBuffer=null,0},decodeWholeSamples:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(t.sourceChannel=e,e<0||e>=t.sourceList.length)return-1;if(null!=t.sourceList[e]&&null!=t.sourceList[e]&&t.sourceList[e]||(t.sourceList[e]=t.audioCtx.createBufferSource(),t.sourceList[e].onended=function(){}),0==t.sampleQueue.length)return-2;for(var i=null,n=null,a=0;a=2){var s=i.length/2;a=new Float32Array(s);for(var o=0,u=0;uthis._push_start_idx))return-1;this.playStartTime<0&&(this.playStartTime=a.GetMsTime(),this.playTimestamp=a.GetMsTime()),this._swapStartPlay=!1;var e=this._push_start_idx+this._once_pop_len;e>this._pcm_array_buf.length&&(e=this._pcm_array_buf.length);var t=this._pcm_array_buf.slice(this._push_start_idx,e);this._push_start_idx+=t.length,this._now_seg_dur=1*t.length/this._sample_rate*1e3,t.length,this._sample_rate,this._now_seg_dur;var i=this._ctx.createBuffer(1,t.length,this._sample_rate);return t.length,new Date,i.copyToChannel(t,0),this._active_node=this._ctx.createBufferSource(),this._active_node.buffer=i,this._active_node.connect(this._gain),this.playStartTime=a.GetMsTime(),this._active_node.start(0),this.playTimestamp+=this._now_seg_dur,0}},{key:"getAlignVPTS",value:function(){return this.playTimestamp}},{key:"pause",value:function(){null!==this._playInterval&&(window.clearInterval(this._playInterval),this._playInterval=null)}},{key:"play",value:function(){var e=this;this._playInterval=window.setInterval((function(){e.readingLoopWithF32()}),10)}}])&&n(t.prototype,i),s&&n(t,s),e}();i.AudioPcmPlayer=s},{"../consts":52,"./av-common":56}],56:[function(e,t,i){"use strict";var n=e("../consts"),r=[{format:"mp4",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mov",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"mkv",value:"mp4",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"flv",value:"flv",core:n.PLAYER_CORE_TYPE_CNATIVE},{format:"m3u8",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"m3u",value:"hls",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"ps",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"mpegts",value:"ts",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"hevc",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"h265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT},{format:"265",value:"raw265",core:n.PLAYER_CORE_TYPE_DEFAULT}],a=[{format:n.URI_PROTOCOL_HTTP,value:n.URI_PROTOCOL_HTTP_DESC},{format:n.URI_PROTOCOL_WEBSOCKET,value:n.URI_PROTOCOL_WEBSOCKET_DESC}];t.exports={frameDataAlignCrop:function(e,t,i,n,r,a,s,o){if(0==e-n)return[a,s,o];for(var u=n*r,l=u/4,h=new Uint8Array(u),d=new Uint8Array(l),c=new Uint8Array(l),f=n,p=n/2,m=0;m=0)return i.value}return r[0].value},GetFormatPlayCore:function(e){if(null!=e)for(var t=0;t=0)return i.value}return a[0].value},GetMsTime:function(){return(new Date).getTime()},GetScriptPath:function(e){var t=e.toString(),i=t.match(/^\s*function\s*\(\s*\)\s*\{(([\s\S](?!\}$))*[\s\S])/),n=[i[1]];return window.URL.createObjectURL(new Blob(n,{type:"text/javascript"}))},BrowserJudge:function(){var e=window.document,t=window.navigator.userAgent.toLowerCase(),i=e.documentMode,n=window.chrome||!1,r={agent:t,isIE:/msie/.test(t),isGecko:t.indexOf("gecko")>0&&t.indexOf("like gecko")<0,isWebkit:t.indexOf("webkit")>0,isStrict:"CSS1Compat"===e.compatMode,supportSubTitle:function(){return"track"in e.createElement("track")},supportScope:function(){return"scoped"in e.createElement("style")},ieVersion:function(){try{return t.match(/msie ([\d.]+)/)[1]||0}catch(e){return i}},operaVersion:function(){try{if(window.opera)return t.match(/opera.([\d.]+)/)[1];if(t.indexOf("opr")>0)return t.match(/opr\/([\d.]+)/)[1]}catch(e){return 0}},versionFilter:function(){if(1===arguments.length&&"string"==typeof arguments[0]){var e=arguments[0],t=e.indexOf(".");if(t>0){var i=e.indexOf(".",t+1);if(-1!==i)return e.substr(0,i)}return e}return 1===arguments.length?arguments[0]:0}};try{r.type=r.isIE?"IE":window.opera||t.indexOf("opr")>0?"Opera":t.indexOf("chrome")>0?"Chrome":window.openDatabase?"Safari":t.indexOf("firefox")>0?"Firefox":"unknow",r.version="IE"===r.type?r.ieVersion():"Firefox"===r.type?t.match(/firefox\/([\d.]+)/)[1]:"Chrome"===r.type?t.match(/chrome\/([\d.]+)/)[1]:"Opera"===r.type?r.operaVersion():"Safari"===r.type?t.match(/version\/([\d.]+)/)[1]:"0",r.shell=function(){if(t.indexOf("maxthon")>0)return r.version=t.match(/maxthon\/([\d.]+)/)[1]||r.version,"傲游浏览器";if(t.indexOf("qqbrowser")>0)return r.version=t.match(/qqbrowser\/([\d.]+)/)[1]||r.version,"QQ浏览器";if(t.indexOf("se 2.x")>0)return"搜狗浏览器";if(n&&"Opera"!==r.type){var e=window.external,i=window.clientInformation.languages;if(e&&"LiebaoGetVersion"in e)return"猎豹浏览器";if(t.indexOf("bidubrowser")>0)return r.version=t.match(/bidubrowser\/([\d.]+)/)[1]||t.match(/chrome\/([\d.]+)/)[1],"百度浏览器";if(r.supportSubTitle()&&void 0===i){var a=Object.keys(n.webstore).length;window;return a>1?"360极速浏览器":"360安全浏览器"}return"Chrome"}return r.type},r.name=r.shell(),r.version=r.versionFilter(r.version)}catch(e){}return[r.type,r.version]}}},{"../consts":52}],57:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffG711FlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s()}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){for(var h=Module.HEAPU8.subarray(l,l+10),d=0;d100&&(c=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=c,this.mediaInfo.fps=c,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e,t,i,n){var r=Module.HEAPU8.subarray(e,e+t),a=new Uint8Array(r).buffer,s=this._ptsFixed2(i),o=null,u=a.byteLength%4;if(0!==u){var l=new Uint8Array(a.byteLength+u);l.set(new Uint8Array(a),0),o=new Float32Array(l.buffer)}else o=new Float32Array(a);var h={pts:s,data:o};this.audioWAudio.addSample(h),this.checkCacheState()}},{key:"_decode",value:function(){var e=this;setTimeout((function(){null!==e.workerFetch&&(Module.cwrap("decodeG711Frame","number",["number"])(e.corePtr),e._decode())}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseG711","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return e.pts,this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var t=1*e.frameTime;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),e.cache_status){if(n-i>=e.frameTime-s){var o=e.YuvBuf.shift();if(null!=o&&null!==o){o.pts;var u=0;null!==e.audioWAudio&&void 0!==e.audioWAudio?(u=1e3*(o.pts-e.audioWAudio.getAlignVPTS()),s=u<0&&-1*u<=t||u>0&&u<=t||0===u||u>0&&u>t?a.GetMsTime()-n+1:e.frameTime):s=a.GetMsTime()-n+1,e.showScreen&&e.onRender&&e.onRender(o.line_y,o.h,o.bufY,o.bufU,o.bufV),o.pts,r.renderFrame(e.AVGLObj,o.bufY,o.bufU,o.bufV,o.line_y,o.h)}e.YuvBuf.length<=0&&(e.cache_status=!1,e.onLoadCache&&e.onLoadCache(),e.audioWAudio&&e.audioWAudio.pause()),i=n}}else s=e.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var t=e.YuvBuf.shift();null!=t&&null!==t&&(t.pts,e.showScreen&&e.onRender&&e.onRender(t.line_y,t.h,t.bufY,t.bufU,t.bufV),r.renderFrame(e.AVGLObj,t.bufY,t.bufU,t.bufV,t.line_y,t.h)),e.YuvBuf.length<=0&&(e.cache_status=!1)}),e.frameTime)}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),Module.cwrap("initializeSniffG711Module","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_sampleCallback,0,1),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),0===o.H265WEBJS_COMPILE_MULTI_THREAD_SHAREDBUFFER&&this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpG711Core=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-core-pcm":53,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],58:[function(e,t,i){"use strict";function n(e,t){for(var i=0;it.config.probeSize?(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1):t.getPackageTimeMS>0&&a.GetMsTime()-t.getPackageTimeMS>=o.FETCH_HTTP_FLV_TIMEOUT_MS&&(t.getPackageTimeMS=a.GetMsTime(),t.workerFetch.postMessage({cmd:"retry",data:null,msg:"retry"}))}),5));break;case"fetch-chunk":var n=i.data;t.download_length+=n.length,setTimeout((function(){var e=Module._malloc(n.length);Module.HEAP8.set(n,e),Module.cwrap("pushSniffHttpFlvData","number",["number","number","number","number"])(t.corePtr,e,n.length,t.config.probeSize),Module._free(e),e=null}),0),t.totalLen+=n.length,n.length>0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++;break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_reinitAudioModule",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:44100;this.config.ignoreAudio>0||(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=s({sampleRate:e,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0)}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,s,u,l){var h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0;if(1!==h){for(var d=Module.HEAPU8.subarray(l,l+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=u,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+5)),this.chaseFrame=0,this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS?(this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.config.ignoreAudio<1&&!1===this.muted&&this._reinitAudioModule(this.mediaInfo.sampleRate)):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}else this.onProbeFinish&&this.onProbeFinish(h)}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u,l){var h=this,d=Module.HEAPU8.subarray(e,e+n*o),c=new Uint8Array(d),f=Module.HEAPU8.subarray(t,t+r*o/2),p=new Uint8Array(f),m=Module.HEAPU8.subarray(i,i+a*o/2),g={bufY:c,bufU:p,bufV:new Uint8Array(m),line_y:n,h:o,pts:u};this.YuvBuf.push(g),this.YuvBuf.length,this.checkCacheState(),Module._free(d),d=null,Module._free(f),f=null,Module._free(m),m=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||!0!==this.config.autoPlay||(this.play(),setTimeout((function(){h.isPlayingState()}),3e3)))}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){this.config.ignoreAudio}},{key:"_callbackAAC",value:function(e,t,i,n){if(!(this.config.ignoreAudio>0)){var r=this._ptsFixed2(n);if(this.audioWAudio&&!1===this.muted){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){this.YuvBuf.length,this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length;var e=this.YuvBuf.length>=25&&(!0===this.muted||this.config.ignoreAudio>0||!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.config.ignoreAudio<1&&(this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e))}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,delete window.g_players[this.corePtr],0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.config.ignoreAudio,this.audioWAudio,this.config.ignoreAudio<1&&this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.chaseFrame=0,this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(this.chaseFrame=0,!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;var i=1*t.frameTime;if(void 0===this.playInterval||null===this.playInterval){var n=0,s=0,o=0;if(this.config.ignoreAudio<1&&!1===this.mediaInfo.audioNone&&null!=this.audioWAudio&&!1===this.mediaInfo.noFPS)this.config.ignoreAudio,this.mediaInfo.audioNone,this.audioWAudio,this.mediaInfo.noFPS,this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){if(s-n>=t.frameTime-o){var e=t.YuvBuf.shift();if(e.pts,t.YuvBuf.length,null!=e&&null!==e){var u=0;null!==t.audioWAudio&&void 0!==t.audioWAudio?(u=1e3*(e.pts-t.audioWAudio.getAlignVPTS()),o=u<0&&-1*u<=i||u>0&&u<=i||0===u||u>0&&u>i?a.GetMsTime()-s+1:t.frameTime):o=a.GetMsTime()-s+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),n=s}}else o=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play();else{var u=-1;this.playInterval=setInterval((function(){if(s=a.GetMsTime(),t.cache_status){t.YuvBuf.length,t.frameTime,t.frameTime,t.chaseFrame;var e=-1;if(u>0&&(e=s-n,t.frameTime,t.chaseFrame<=0&&o>0&&(t.chaseFrame=Math.floor(o/t.frameTime),t.chaseFrame)),u<=0||e>=t.frameTime||t.chaseFrame>0){u=1;var i=t.YuvBuf.shift();i.pts,t.YuvBuf.length,null!=i&&null!==i&&(t.showScreen&&t.onRender&&t.onRender(i.line_y,i.h,i.bufY,i.bufU,i.bufV),i.pts,r.renderFrame(t.AVGLObj,i.bufY,i.bufU,i.bufV,i.line_y,i.h),o=a.GetMsTime()-s+1),t.YuvBuf.length<=0&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache()),n=s,t.chaseFrame>0&&(t.chaseFrame--,0===t.chaseFrame&&(o=t.frameTime))}}else o=t.frameTime,u=-1,t.chaseFrame=0,n=0,s=0,o=0}),1)}}this.onPlayState&&this.onPlayState(this.isPlayingState())}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null,t=new AbortController,i=t.signal,n=(self,function(e){var t=!1;t||(t=!0,fetch(e,{signal:i}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return self.postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}self.postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" httplive request error:"+e+" start to retry";console.error(t),self.postMessage({cmd:"fetch-error",data:t,msg:"fetch-error"})}})))});self.onmessage=function(r){var a=r.data;switch(void 0===a.cmd||null===a.cmd?"":a.cmd){case"start":e=a.data,n(e),self.postMessage({cmd:"startok",data:"WORKER STARTED",msg:"startok"});break;case"stop":t.abort(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"});break;case"retry":t.abort(),t=null,i=null,t=new AbortController,i=t.signal,setTimeout((function(){n(e)}),3e3)}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback,this.config.ignoreAudio),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CHttpLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],59:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"getCachePTS",value:function(){return 1!==this.config.ignoreAudio&&this.audioWAudio?Math.max(this.vCachePTS,this.aCachePTS):this.vCachePTS}},{key:"getMaxPTS",value:function(){return Math.max(this.vCachePTS,this.aCachePTS)}},{key:"isPlayingState",value:function(){return this.isPlaying}},{key:"_clearDecInterval",value:function(){this.decVFrameInterval&&window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null}},{key:"_checkPlayFinished",value:function(){return!(this.config.playMode!==h.PLAYER_MODE_VOD||!(!0===this.bufRecvStat&&(this.playPTS>=this.bufLastVDTS||this.audioWAudio&&this.playPTS>=this.bufLastADTS)||this.duration-this.playPTS0&&n-i>=t.frameTime-r){var e=t._videoQueue.shift();e.pts,o.renderFrame(t.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),(r=u.GetMsTime()-n)>=t.frameTime&&(r=t.frameTime),i=n}}),2):this.playFrameInterval=window.setInterval((function(){if(n=u.GetMsTime(),e._videoQueue.length>0&&n-i>=e.frameTime-r){var t=e._videoQueue.shift(),s=0;if(e.isNewSeek||null===e.audioWAudio||void 0===e.audioWAudio||(s=1e3*(t.pts-e.audioWAudio.getAlignVPTS()),e.playPTS=Math.max(e.audioWAudio.getAlignVPTS(),e.playPTS)),i=n,e.playPTS=Math.max(t.pts,e.playPTS),e.isNewSeek&&e.seekTarget-e.frameDur>t.pts)return void(r=e.frameTime);if(e.isNewSeek&&(e.audioWAudio&&e.audioWAudio.setVoice(e.audioVoice),e.audioWAudio&&e.audioWAudio.play(),r=0,e.isNewSeek=!1,e.seekTarget=0),e.showScreen&&e.onRender&&e.onRender(t.line1,t.height,t.data_y,t.data_u,t.data_v),o.renderFrame(e.yuv,t.data_y,t.data_u,t.data_v,t.line1,t.height),e.onPlayingTime&&e.onPlayingTime(t.pts),!e.isNewSeek&&e.audioWAudio&&(s<0&&-1*s<=a||s>=0)){if(e.config.playMode===h.PLAYER_MODE_VOD)if(t.pts>=e.duration)e.onLoadCacheFinshed&&e.onLoadCacheFinshed(),e.onPlayingFinish&&e.onPlayingFinish(),e._clearDecInterval(),e.pause();else if(e._checkPlayFinished())return;r=u.GetMsTime()-n}else!e.isNewSeek&&e.audioWAudio&&(r=e.frameTime)}e._checkPlayFinished()}),1)}this.isNewSeek||this.audioWAudio&&this.audioWAudio.play()}},{key:"pause",value:function(){this.isPlaying=!1,this._pause(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&(this.isCacheV=h.CACHE_WITH_NOPLAY_SIGN)}},{key:"_pause",value:function(){this.playFrameInterval&&window.clearInterval(this.playFrameInterval),this.playFrameInterval=null,this.audioWAudio&&this.audioWAudio.pause()}},{key:"seek",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.openFrameCall=!1,this.pause(),this._clearDecInterval(),null!==this.avFeedVideoInterval&&(window.clearInterval(this.avFeedVideoInterval),this.avFeedVideoInterval=null),null!==this.avFeedAudioInterval&&(window.clearInterval(this.avFeedAudioInterval),this.avFeedAudioInterval=null),this.yuvMaxTime=0,this.playVPipe.length=0,this._videoQueue.length=0,this.audioWAudio&&this.audioWAudio.stop(),e&&e(),this.isNewSeek=!0,this.avSeekVState=!0,this.seekTarget=i.seekTime,null!==this.audioWAudio&&void 0!==this.audioWAudio&&(this.audioWAudio.setVoice(0),this.audioWAudio.resetStartParam(),this.audioWAudio.stop()),this._avFeedData(i.seekTime),setTimeout((function(){t.yuvMaxTime=0,t._videoQueue.length=0,t.openFrameCall=!0,t.frameCallTag+=1,t._decVFrameIntervalFunc()}),1e3)}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"cacheIsFull",value:function(){return this._videoQueue.length>=this._VIDEO_CACHE_LEN}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.canvas.offsetWidth!=h||this.canvas.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.canvas.style.marginTop=c+"px",this.canvas.style.marginLeft=f+"px",this.canvas.style.width=h+"px",this.canvas.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_createYUVCanvas",value:function(){this.canvasBox=document.querySelector("#"+this.config.playerId),this.canvasBox.style.overflow="hidden",this.canvas=document.createElement("canvas"),this.canvas.style.width=this.canvasBox.clientWidth+"px",this.canvas.style.height=this.canvasBox.clientHeight+"px",this.canvas.style.top="0px",this.canvas.style.left="0px",this.canvasBox.appendChild(this.canvas),this.yuv=o.setupCanvas(this.canvas,{preserveDrawingBuffer:!1})}},{key:"_avRecvPackets",value:function(){var e=this;this.bufObject.cleanPipeline(),null!==this.avRecvInterval&&(window.clearInterval(this.avRecvInterval),this.avRecvInterval=null),!0===this.config.checkProbe?this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkg","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5):this.avRecvInterval=window.setInterval((function(){Module.cwrap("getSniffStreamPkgNoCheckProbe","number",["number"])(e.corePtr),e._avCheckRecvFinish()}),5),this._avFeedData(0,!1)}},{key:"_avCheckRecvFinish",value:function(){this.config.playMode===h.PLAYER_MODE_VOD&&this.duration-this.getMaxPTS()=t._VIDEO_CACHE_LEN&&(t.onSeekFinish&&t.onSeekFinish(),t.onPlayingTime&&t.onPlayingTime(e),t.play(),window.clearInterval(i),i=null)}),10);return!0}},{key:"_afterAvFeedSeekToStartWithUnFinBuffer",value:function(e){var t=this,i=this,n=window.setInterval((function(){t._videoQueue.length,i._videoQueue.length>=i._VIDEO_CACHE_LEN&&(i.onSeekFinish&&i.onSeekFinish(),i.onPlayingTime&&i.onPlayingTime(e),!1===i.reFull?i.play():i.reFull=!1,window.clearInterval(n),n=null)}),10);return!0}},{key:"_avFeedData",value:function(e){var t=this;if(this.playVPipe.length=0,this.audioWAudio&&this.audioWAudio.cleanQueue(),e<=0&&!1===this.bufOK){var i=0;if(t.avFeedVideoInterval=window.setInterval((function(){var n=t.bufObject.videoBuffer.length;if(n-1>i||t.duration>0&&t.duration-t.getMaxPTS()0){for(var s=0;s0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.bufLastVDTS,t.bufObject.videoBuffer,t.playVPipe)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null,t.playVPipe[t.playVPipe.length-1].pts,t.duration,t.bufObject.videoBuffer,t.playVPipe);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithFinishedBuffer(e),t.avSeekVState=!1))}),5),void 0!==t.audioWAudio&&null!==t.audioWAudio&&t.config.ignoreAudio<1){var n=0;t.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>n||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null,t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts,t.bufObject.audioBuffer)}),5)}}else{var r=this.bufObject.seekIDR(e),s=parseInt(r,10);this.playPTS=0;var o=s;if(this.avFeedVideoInterval=window.setInterval((function(){var i=t.bufObject.videoBuffer.length;if(i-1>o||t.duration-t.getMaxPTS()0){for(var r=0;r0&&t.playVPipe[t.playVPipe.length-1].pts>=t.bufLastVDTS&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.playVPipe.length>0&&t.playVPipe[t.playVPipe.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedVideoInterval),t.avFeedVideoInterval=null);t.avSeekVState&&(t.getMaxPTS(),t.duration,t.config.playMode===h.PLAYER_MODE_VOD&&(t._afterAvFeedSeekToStartWithUnFinBuffer(e),t.avSeekVState=!1))}),5),this.audioWAudio&&this.config.ignoreAudio<1){var u=parseInt(e,10);this.avFeedAudioInterval=window.setInterval((function(){var e=t.bufObject.audioBuffer.length;if(e-1>u||t.duration-t.getMaxPTS()0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.bufLastADTS&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}else t.config.playMode===h.PLAYER_MODE_VOD&&t.audioWAudio.sampleQueue.length>0&&t.audioWAudio.sampleQueue[t.audioWAudio.sampleQueue.length-1].pts>=t.duration&&(window.clearInterval(t.avFeedAudioInterval),t.avFeedAudioInterval=null)}),5)}}}},{key:"_probeFinCallback",value:function(e,t,i,n,r,a,s,o,u){var d=this;this._createYUVCanvas(),h.V_CODEC_NAME_HEVC,this.config.fps=1*n,this.frameTime=1e3/this.config.fps,this.width=t,this.height=i,this.frameDur=1/this.config.fps,this.duration=e-this.frameDur,this.vCodecID=o,this.config.sampleRate=a,this.channels=s,this.audioIdx=r,this.duration<0&&(this.config.playMode=h.PLAYER_MODE_NOTIME_LIVE,this.frameTime,this.frameDur);for(var c=Module.HEAPU8.subarray(u,u+10),f=0;f=0&&this.config.ignoreAudio<1?this.audioNone=!1:this.audioNone=!0,h.V_CODEC_NAME_HEVC===this.vCodecID&&(!1===this.audioNone&&(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.audioWAudio=l({sampleRate:a,appendType:h.APPEND_TYPE_FRAME}),this.audioWAudio.setDurationMs(1e3*e),this.onLoadCache&&this.audioWAudio.setOnLoadCache((function(){if(d.retryAuSampleNo,d.retryAuSampleNo<=5){d.pause(),d.onLoadCache&&d.onLoadCache();var e=window.setInterval((function(){return d.retryAuSampleNo,d.audioWAudio.sampleQueue.length,d.audioWAudio.sampleQueue.length>2?(d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),d.play(),d.retryAuSampleNo=0,window.clearInterval(e),void(e=null)):(d.retryAuSampleNo+=1,d.retryAuSampleNo>5?(d.play(),d.onLoadCacheFinshed&&d.onLoadCacheFinshed(),window.clearInterval(e),void(e=null)):void 0)}),1e3)}}))),this._avRecvPackets(),this._decVFrameIntervalFunc()),this.onProbeFinish&&this.onProbeFinish()}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_naluCallback",value:function(e,t,i,n,r,a,s,o){var u=this._ptsFixed2(a);o>0&&(u=a);var l=Module.HEAPU8.subarray(e,e+t),h=new Uint8Array(l);this.bufObject.appendFrameWithDts(u,s,h,!0,i),this.bufLastVDTS=Math.max(s,this.bufLastVDTS),this.vCachePTS=Math.max(u,this.vCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}},{key:"_samplesCallback",value:function(e,t,i,n){}},{key:"_aacFrameCallback",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s=new Uint8Array(a);this.bufObject.appendFrame(r,s,!1,!0),this.bufLastADTS=Math.max(r,this.bufLastADTS),this.aCachePTS=Math.max(r,this.aCachePTS),this.onCacheProcess&&this.onCacheProcess(this.getCachePTS())}}},{key:"_setLoadCache",value:function(){if(null===this.avFeedVideoInterval&&null===this.avFeedAudioInterval&&this.playVPipe.length<=0)return 1;if(this.isCacheV===h.CACHE_NO_LOADCACHE){var e=this.isPlaying;this.pause(),this.onLoadCache&&this.onLoadCache(),this.isCacheV=e?h.CACHE_WITH_PLAY_SIGN:h.CACHE_WITH_NOPLAY_SIGN}return 0}},{key:"_setLoadCacheFinished",value:function(){this.isCacheV!==h.CACHE_NO_LOADCACHE&&(this.isCacheV,this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.isCacheV===h.CACHE_WITH_PLAY_SIGN&&this.play(),this.isCacheV=h.CACHE_NO_LOADCACHE)}},{key:"_createDecVframeInterval",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=this;null!==this.decVFrameInterval&&(window.clearInterval(this.decVFrameInterval),this.decVFrameInterval=null);var i=0;this.loopMs=e,this.decVFrameInterval=window.setInterval((function(){if(t._videoQueue.length<1?t._setLoadCache():t._videoQueue.length>=t._VIDEO_CACHE_LEN&&t._setLoadCacheFinished(),t._videoQueue.length0){100===t.loopMs&&t._createDecVframeInterval(10);var e=t.playVPipe.shift(),n=e.data,r=Module._malloc(n.length);Module.HEAP8.set(n,r);var a=parseInt(1e3*e.pts,10),s=parseInt(1e3*e.dts,10);t.yuvMaxTime=Math.max(e.pts,t.yuvMaxTime);var o=Module.cwrap("decodeVideoFrame","number",["number","number","number","number","number"])(t.corePtr,r,n.length,a,s,t.frameCallTag);o>0&&(i=o),Module._free(r),r=null}}else i=Module.cwrap("naluLListLength","number",["number"])(t.corePtr)}),e)}},{key:"_decVFrameIntervalFunc",value:function(){null==this.decVFrameInterval&&this._createDecVframeInterval(10)}},{key:"_frameCallback",value:function(e,t,i,n,r,a,s,o,u,l){if(this._videoQueue.length,!1===this.openFrameCall)return-1;if(l!==this.frameCallTag)return-2;if(u>this.yuvMaxTime+this.frameDur)return-3;if(this.isNewSeek&&this.seekTarget-u>3*this.frameDur)return-4;var h=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),this.playPTS>u)return-5;var d=Module.HEAPU8.subarray(e,e+n*o),f=Module.HEAPU8.subarray(t,t+r*o/2),p=Module.HEAPU8.subarray(i,i+a*o/2),m=new Uint8Array(d),g=new Uint8Array(f),_=new Uint8Array(p),v=new c(m,g,_,n,r,a,s,o,u);if(h<=0||u>this._videoQueue[h-1].pts)this._videoQueue.push(v);else if(uthis._videoQueue[y].pts&&y+1this.yuvMaxTime+this.frameDur||this.isNewSeek&&this.seekTarget-u>3*this.frameDur)){var p=this._videoQueue.length;if(this.canvas.width==n&&this.canvas.height==o||(this.canvas.width=n,this.canvas.height=o,this.isCheckDisplay)||this._checkDisplaySize(s,n,o),!(this.playPTS>u)){var m=new c(h,d,f,n,r,a,s,o,u);if(p<=0||u>this._videoQueue[p-1].pts)this._videoQueue.push(m);else if(uthis._videoQueue[g].pts&&g+10){var e=this._videoQueue.shift();return e.pts,this.onRender&&this.onRender(e.line1,e.height,e.data_y,e.data_u,e.data_v),o.renderFrame(this.yuv,e.data_y,e.data_u,e.data_v,e.line1,e.height),!0}return!1}},{key:"setProbeSize",value:function(e){this.probeSize=e}},{key:"pushBuffer",value:function(e){if(void 0===this.corePtr||null===this.corePtr)return-1;var t=Module._malloc(e.length);Module.HEAP8.set(e,t);var i=Module.cwrap("pushSniffStreamData","number",["number","number","number","number"])(this.corePtr,t,e.length,this.probeSize);return i}}])&&n(t.prototype,i),f&&n(t,f),e}();i.CNativeCore=f},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],60:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&(t.getPackageTimeMS=a.GetMsTime()),t.pushPkg++,void 0!==t.AVGetInterval&&null!==t.AVGetInterval||(t.AVGetInterval=window.setInterval((function(){Module.cwrap("getBufferLengthApi","number",["number"])(t.corePtr)>t.config.probeSize&&(Module.cwrap("getSniffHttpFlvPkg","number",["number"])(t.corePtr),t.pushPkg-=1)}),5));break;case"close":t.AVGetInterval&&clearInterval(t.AVGetInterval),t.AVGetInterval=null;case"fetch-fin":break;case"fetch-error":t.onNetworkError&&t.onNetworkError(i.data)}}},{key:"_checkDisplaySize",value:function(e,t,i){var n=t-e,r=this.config.width+Math.ceil(n/2),a=t/this.config.width>i/this.config.height,s=(r/t).toFixed(2),o=(this.config.height/i).toFixed(2),u=a?s:o,l=this.config.fixed,h=l?r:parseInt(t*u),d=l?this.config.height:parseInt(i*u);if(this.CanvasObj.offsetWidth!=h||this.CanvasObj.offsetHeight!=d){var c=parseInt((this.canvasBox.offsetHeight-d)/2),f=parseInt((this.canvasBox.offsetWidth-h)/2);c=c<0?0:c,f=f<0?0:f,this.CanvasObj.style.marginTop=c+"px",this.CanvasObj.style.marginLeft=f+"px",this.CanvasObj.style.width=h+"px",this.CanvasObj.style.height=d+"px"}return this.isCheckDisplay=!0,[h,d]}},{key:"_ptsFixed2",value:function(e){return Math.ceil(100*e)/100}},{key:"_callbackProbe",value:function(e,t,i,n,r,a,u,l,h){for(var d=Module.HEAPU8.subarray(h,h+10),c=0;c100&&(f=o.DEFAULT_FPS,this.mediaInfo.noFPS=!0),this.vCodecID=l,this.config.fps=f,this.mediaInfo.fps=f,this.mediaInfo.size.width=t,this.mediaInfo.size.height=i,this.frameTime=Math.floor(1e3/(this.mediaInfo.fps+2)),this.CanvasObj.width==t&&this.CanvasObj.height==i||(this.CanvasObj.width=t,this.CanvasObj.height=i,this.isCheckDisplay)||this._checkDisplaySize(t,t,i),r>=0&&!1===this.mediaInfo.noFPS&&this.config.ignoreAudio<1?(void 0!==this.audioWAudio&&null!==this.audioWAudio&&(this.audioWAudio.stop(),this.audioWAudio=null),this.config.sampleRate=a,this.mediaInfo.sampleRate=a,this.audioWAudio=s({sampleRate:this.mediaInfo.sampleRate,appendType:o.APPEND_TYPE_FRAME}),this.audioWAudio.isLIVE=!0):this.mediaInfo.audioNone=!0,this.onProbeFinish&&this.onProbeFinish()}},{key:"_callbackYUV",value:function(e,t,i,n,r,a,s,o,u){var l=Module.HEAPU8.subarray(e,e+n*o),h=new Uint8Array(l),d=Module.HEAPU8.subarray(t,t+r*o/2),c=new Uint8Array(d),f=Module.HEAPU8.subarray(i,i+a*o/2),p={bufY:h,bufU:c,bufV:new Uint8Array(f),line_y:n,h:o,pts:u};this.YuvBuf.push(p),this.checkCacheState(),Module._free(l),l=null,Module._free(d),d=null,Module._free(f),f=null,!1===this.readyShowDone&&!0===this.playYUV()&&(this.readyShowDone=!0,this.onReadyShowDone&&this.onReadyShowDone(),this.audioWAudio||this.play())}},{key:"_callbackNALU",value:function(e,t,i,n,r,a,s){if(!1===this.readyKeyFrame){if(i<=0)return;this.readyKeyFrame=!0}var o=Module.HEAPU8.subarray(e,e+t),u=new Uint8Array(o);this.NaluBuf.push({bufData:u,len:t,isKey:i,w:n,h:r,pts:1e3*a,dts:1e3*s}),Module._free(o),o=null}},{key:"_callbackPCM",value:function(e){}},{key:"_callbackAAC",value:function(e,t,i,n){var r=this._ptsFixed2(n);if(this.audioWAudio){var a=Module.HEAPU8.subarray(e,e+t),s={pts:r,data:new Uint8Array(a)};this.audioWAudio.addSample(s),this.checkCacheState()}}},{key:"_decode",value:function(){var e=this;setTimeout((function(){if(null!==e.workerFetch){var t=e.NaluBuf.shift();if(null!=t){var i=Module._malloc(t.bufData.length);Module.HEAP8.set(t.bufData,i),Module.cwrap("decodeHttpFlvVideoFrame","number",["number","number","number","number","number"])(e.corePtr,i,t.bufData.length,t.pts,t.dts,0),Module._free(i),i=null}e._decode()}}),1)}},{key:"setScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.showScreen=e}},{key:"checkCacheState",value:function(){var e=this.YuvBuf.length>=25&&(!0===this.mediaInfo.audioNone||this.audioWAudio&&this.audioWAudio.sampleQueue.length>=50);return!1===this.cache_status&&e&&(this.playInterval&&this.audioWAudio&&this.audioWAudio.play(),this.onLoadCacheFinshed&&this.onLoadCacheFinshed(),this.cache_status=!0),e}},{key:"setVoice",value:function(e){this.audioVoice=e,this.audioWAudio&&this.audioWAudio.setVoice(e)}},{key:"_removeBindFuncPtr",value:function(){null!==this._ptr_probeCallback&&Module.removeFunction(this._ptr_probeCallback),null!==this._ptr_frameCallback&&Module.removeFunction(this._ptr_frameCallback),null!==this._ptr_naluCallback&&Module.removeFunction(this._ptr_naluCallback),null!==this._ptr_sampleCallback&&Module.removeFunction(this._ptr_sampleCallback),null!==this._ptr_aacCallback&&Module.removeFunction(this._ptr_aacCallback),this._ptr_probeCallback=null,this._ptr_frameCallback=null,this._ptr_naluCallback=null,this._ptr_sampleCallback=null,this._ptr_aacCallback=null}},{key:"release",value:function(){return this.pause(),this.NaluBuf.length=0,this.YuvBuf.length=0,void 0!==this.workerFetch&&null!==this.workerFetch&&this.workerFetch.postMessage({cmd:"stop",data:"stop",msg:"stop"}),this.workerFetch=null,this.AVGetInterval&&clearInterval(this.AVGetInterval),this.AVGetInterval=null,this._removeBindFuncPtr(),void 0!==this.corePtr&&null!==this.corePtr&&Module.cwrap("releaseHttpFLV","number",["number"])(this.corePtr),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null,this.audioWAudio&&this.audioWAudio.stop(),this.audioWAudio=null,void 0!==this.AVGLObj&&null!==this.AVGLObj&&(r.releaseContext(this.AVGLObj),this.AVGLObj=null),this.CanvasObj&&this.CanvasObj.remove(),this.CanvasObj=null,window.onclick=document.body.onclick=null,0}},{key:"isPlayingState",value:function(){return null!==this.playInterval&&void 0!==this.playInterval}},{key:"pause",value:function(){this.audioWAudio&&this.audioWAudio.pause(),this.playInterval&&clearInterval(this.playInterval),this.playInterval=null}},{key:"playYUV",value:function(){if(this.YuvBuf.length>0){var e=this.YuvBuf.shift();return this.onRender&&this.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(this.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h),!0}return!1}},{key:"play",value:function(){var e=this,t=this;if(!1===this.checkCacheState())return this.onLoadCache&&this.onLoadCache(),setTimeout((function(){e.play()}),100),!1;if(void 0===this.playInterval||null===this.playInterval){var i=0,n=0,s=0;!1===this.mediaInfo.audioNone&&this.audioWAudio&&!1===this.mediaInfo.noFPS?(this.playInterval=setInterval((function(){if(n=a.GetMsTime(),t.cache_status){if(n-i>=t.frameTime-s){var e=t.YuvBuf.shift();if(null!=e&&null!==e){var o=0;null!==t.audioWAudio&&void 0!==t.audioWAudio&&(o=1e3*(e.pts-t.audioWAudio.getAlignVPTS())),s=t.audioWAudio?o<0&&-1*o<=t.frameTime||o>=0?a.GetMsTime()-n+1:t.frameTime:a.GetMsTime()-n+1,t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),e.pts,r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)}(t.YuvBuf.length<=0||t.audioWAudio&&t.audioWAudio.sampleQueue.length<=0)&&(t.cache_status=!1,t.onLoadCache&&t.onLoadCache(),t.audioWAudio&&t.audioWAudio.pause()),i=n}}else s=t.frameTime}),1),this.audioWAudio&&this.audioWAudio.play()):this.playInterval=setInterval((function(){var e=t.YuvBuf.shift();null!=e&&null!==e&&(t.showScreen&&t.onRender&&t.onRender(e.line_y,e.h,e.bufY,e.bufU,e.bufV),r.renderFrame(t.AVGLObj,e.bufY,e.bufU,e.bufV,e.line_y,e.h)),t.YuvBuf.length<=0&&(t.cache_status=!1)}),t.frameTime)}}},{key:"start",value:function(e){var t=this;this.workerFetch=new Worker(a.GetScriptPath((function(){var e=null;self,self.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"start":var n=i.data;(e=new WebSocket(n)).binaryType="arraybuffer",e.onopen=function(t){e.send("Hello WebSockets!")},e.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},e.onclose=function(e){};break;case"stop":e&&e.close(),self.close(),self.postMessage({cmd:"close",data:"close",msg:"close"})}}}))),this.workerFetch.onmessage=function(e){t._workerFetch_onmessage(e,t)},this.workerFetch,this._ptr_probeCallback=Module.addFunction(this._callbackProbe.bind(this)),this._ptr_yuvCallback=Module.addFunction(this._callbackYUV.bind(this)),this._ptr_naluCallback=Module.addFunction(this._callbackNALU.bind(this)),this._ptr_sampleCallback=Module.addFunction(this._callbackPCM.bind(this)),this._ptr_aacCallback=Module.addFunction(this._callbackAAC.bind(this)),Module.cwrap("initializeSniffHttpFlvModule","number",["number","number","number","number","number","number"])(this.corePtr,this._ptr_probeCallback,this._ptr_yuvCallback,this._ptr_naluCallback,this._ptr_sampleCallback,this._ptr_aacCallback),this.AVGLObj=r.setupCanvas(this.CanvasObj,{preserveDrawingBuffer:!1}),this.workerFetch.postMessage({cmd:"start",data:e,msg:"start"}),this._decode()}}])&&n(t.prototype,i),u&&n(t,u),e}());i.CWsLiveCore=u},{"../consts":52,"../demuxer/buffer":66,"../demuxer/bufferFrame":67,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./audio-native-core":55,"./av-common":56,"./cache":61,"./cacheYuv":62}],61:[function(e,t,i){(function(i){"use strict";e("./cacheYuv");i.CACHE_APPEND_STATUS_CODE={FAILED:-1,OVERFLOW:-2,OK:0,NOT_FULL:1,FULL:2,NULL:3},t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:60,t={limit:e,yuvCache:[],appendCacheByCacheYuv:function(e){e.pts;return t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.OVERFLOW:(t.yuvCache.push(e),t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL)},getState:function(){return t.yuvCache.length<=0?CACHE_APPEND_STATUS_CODE.NULL:t.yuvCache.length>=t.limit?CACHE_APPEND_STATUS_CODE.FULL:CACHE_APPEND_STATUS_CODE.NOT_FULL},cleanPipeline:function(){t.yuvCache.length=0},vYuv:function(){return t.yuvCache.length<=0?null:t.yuvCache.shift()}};return t}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./cacheYuv":62}],62:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i>1;return r.indexOf(t)},GET_NALU_TYPE:function(e){var t=(126&e)>>1;if(t>=1&&t<=9)return n.DEFINE_P_FRAME;if(t>=16&&t<=21)return n.DEFINE_KEY_FRAME;var i=r.indexOf(t);return i>=0?r[i]:n.DEFINE_OTHERS_FRAME},PACK_NALU:function(e){var t=e.nalu,i=e.vlc.vlc;null==t.vps&&(t.vps=new Uint8Array);var n=new Uint8Array(t.vps.length+t.sps.length+t.pps.length+t.sei.length+i.length);return n.set(t.vps,0),n.set(t.sps,t.vps.length),n.set(t.pps,t.vps.length+t.sps.length),n.set(t.sei,t.vps.length+t.sps.length+t.pps.length),n.set(i,t.vps.length+t.sps.length+t.pps.length+t.sei.length),n}}},{"./hevc-header":63}],65:[function(e,t,i){"use strict";function n(e){return function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t0&&void 0!==arguments[0]&&arguments[0];null!=t&&(t.showScreen=e)},setSize:function(e,i){t.config.width=e||l.DEFAULT_WIDTH,t.config.height=i||l.DEFAULT_HEIGHT},setFrameRate:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:25;t.config.fps=e,t.config.frameDurMs=1e3/e},setDurationMs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;t.durationMs=e,0==t.config.audioNone&&t.audio.setDurationMs(e)},setPlayingCall:function(e){t.onPlayingTime=e},setVoice:function(e){t.realVolume=e,0==t.config.audioNone&&t.audio.setVoice(t.realVolume)},isPlayingState:function(){return t.isPlaying||t.isCaching===l.CACHE_WITH_PLAY_SIGN},appendAACFrame:function(e){t.audio.addSample(e),t.aCachePTS=Math.max(e.pts,t.aCachePTS)},appendHevcFrame:function(e){var i;t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array((i=n(t.stream)).concat.apply(i,n(e))):t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList.push(e),t.vCachePTS=Math.max(e.pts,t.vCachePTS))},getCachePTS:function(){return Math.max(t.vCachePTS,t.aCachePTS)},endAudio:function(){0==t.config.audioNone&&t.audio.stop()},cleanSample:function(){0==t.config.audioNone&&t.audio.cleanQueue()},cleanVideoQueue:function(){t.config.appendHevcType==l.APPEND_TYPE_STREAM?t.stream=new Uint8Array:t.config.appendHevcType==l.APPEND_TYPE_FRAME&&(t.frameList=[],t.frameList.length=0)},cleanCacheYUV:function(){t.cacheYuvBuf.cleanPipeline()},pause:function(){t.loop&&window.clearInterval(t.loop),t.loop=null,0==t.config.audioNone&&t.audio.pause(),t.isPlaying=!1,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&(t.isCaching=l.CACHE_WITH_NOPLAY_SIGN)},checkFinished:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.PLAYER_MODE_VOD;return e==l.PLAYER_MODE_VOD&&t.cacheYuvBuf.yuvCache.length<=0&&(t.videoPTS.toFixed(1)>=(t.durationMs-t.config.frameDurMs)/1e3||t.noCacheFrame>=10)&&(null!=t.onPlayingFinish&&(l.PLAYER_MODE_VOD,t.frameList.length,t.cacheYuvBuf.yuvCache.length,t.videoPTS.toFixed(1),t.durationMs,t.config.frameDurMs,t.noCacheFrame,t.onPlayingFinish()),!0)},clearAllCache:function(){t.nowPacket=null,t.vCachePTS=0,t.aCachePTS=0,t.cleanSample(),t.cleanVideoQueue(),t.cleanCacheYUV()},seek:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isPlaying;t.pause(),t.stopCacheThread(),t.clearAllCache(),e&&e(),t.isNewSeek=!0,t.flushDecoder=1,t.videoPTS=parseInt(i.seekTime);var r={seekPos:i.seekTime||-1,mode:i.mode||l.PLAYER_MODE_VOD,accurateSeek:i.accurateSeek||!0,seekEvent:i.seekEvent||!0,realPlay:n};t.cacheThread(),t.play(r)},getNalu1Packet:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=null,n=-1;if(t.config.appendHevcType==l.APPEND_TYPE_STREAM)i=t.nextNalu();else{if(t.config.appendHevcType!=l.APPEND_TYPE_FRAME)return null;var r=t.frameList.shift();if(!r)return null;i=r.data,n=r.pts,e&&(t.videoPTS=n)}return{nalBuf:i,pts:n}},decodeNalu1Frame:function(e,i){var n=Module._malloc(e.length);Module.HEAP8.set(e,n);var r=parseInt(1e3*i);Module.cwrap("decodeCodecContext","number",["number","number","number","number","number"])(t.vcodecerPtr,n,e.length,r,t.flushDecoder);return t.flushDecoder=0,Module._free(n),n=null,!1},cacheThread:function(){t.cacheLoop=window.setInterval((function(){if(t.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.FULL){var e=t.getNalu1Packet(!1);if(null!=e){var i=e.nalBuf,n=e.pts;t.decodeNalu1Frame(i,n,!0)}}}),10)},stopCacheThread:function(){null!==t.cacheLoop&&(window.clearInterval(t.cacheLoop),t.cacheLoop=null)},loadCache:function(){if(!(t.frameList.length<=3)){var e=t.isPlaying;if(t.cacheYuvBuf.yuvCache.length<=3){t.pause(),null!=t.onLoadCache&&t.onLoadCache(),t.isCaching=e?l.CACHE_WITH_PLAY_SIGN:l.CACHE_WITH_NOPLAY_SIGN;var i=t.frameList.length>30?30:t.frameList.length;null===t.cacheInterval&&(t.cacheInterval=window.setInterval((function(){t.cacheYuvBuf.yuvCache.length>=i&&(null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed(),window.clearInterval(t.cacheInterval),t.cacheInterval=null,t.isCaching===l.CACHE_WITH_PLAY_SIGN&&t.play(t.playParams),t.isCaching=l.CACHE_NO_LOADCACHE)}),40))}}},playFunc:function(){var e=!1;if(t.playParams.seekEvent||r.GetMsTime()-t.calcuteStartTime>=t.frameTime-t.preCostTime){e=!0;var i=!0;if(t.calcuteStartTime=r.GetMsTime(),t.config.audioNone)t.playFrameYUV(i,t.playParams.accurateSeek);else{t.fix_poc_err_skip>0&&(t.fix_poc_err_skip--,i=!1);var n=t.videoPTS-t.audio.getAlignVPTS();if(n>0)return void(t.playParams.seekEvent&&!t.config.audioNone&&t.audio.setVoice(0));if(i){if(!(i=-1*n<=1*t.frameTimeSec)){for(var a=parseInt(n/t.frameTimeSec),s=0;s=i&&(t.playFrameYUV(!0,t.playParams.accurateSeek),i+=1)}),1)}else t.videoPTS>=t.playParams.seekPos&&!t.isNewSeek||0===t.playParams.seekPos||0===t.playParams.seekPos?(t.frameTime=1e3/t.config.fps,t.frameTimeSec=t.frameTime/1e3,0==t.config.audioNone&&t.audio.play(),t.realVolume=t.config.audioNone?0:t.audio.voice,t.playParams.seekEvent&&(t.fix_poc_err_skip=10),t.loop=window.setInterval((function(){var e=r.GetMsTime();t.playFunc(),t.preCostTime=r.GetMsTime()-e}),1)):(t.loop=window.setInterval((function(){t.playFrameYUV(!1,t.playParams.accurateSeek),t.checkFinished(t.playParams.mode)?(window.clearInterval(t.loop),t.loop=null):t.videoPTS>=t.playParams.seekPos&&(window.clearInterval(t.loop),t.loop=null,t.play(t.playParams))}),1),t.isNewSeek=!1)},stop:function(){t.release(),Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr),t.stream=new Uint8Array},release:function(){return void 0!==t.yuv&&null!==t.yuv&&(u.releaseContext(t.yuv),t.yuv=null),t.endAudio(),t.cacheLoop&&window.clearInterval(t.cacheLoop),t.cacheLoop=null,t.loop&&window.clearInterval(t.loop),t.loop=null,t.pause(),null!==t.videoCallback&&Module.removeFunction(t.videoCallback),t.videoCallback=null,Module.cwrap("release","number",["number"])(t.vcodecerPtr),t.stream=null,t.frameList.length=0,t.durationMs=-1,t.videoPTS=0,t.isPlaying=!1,t.canvas.remove(),t.canvas=null,window.onclick=document.body.onclick=null,!0},nextNalu:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(t.stream.length<=4)return!1;for(var i=-1,n=0;n=t.stream.length){if(-1==i)return!1;var r=t.stream.subarray(i);return t.stream=new Uint8Array,r}var a="0 0 1"==t.stream.slice(0,3).join(" "),s="0 0 0 1"==t.stream.slice(0,4).join(" ");if(a||s){if(-1==i)i=n;else{if(e<=1){var o=t.stream.subarray(i,n);return t.stream=t.stream.subarray(n),o}e-=1}n+=3}}return!1},decodeSendPacket:function(e){var i=Module._malloc(e.length);Module.HEAP8.set(e,i);var n=Module.cwrap("decodeSendPacket","number",["number","number","number"])(t.vcodecerPtr,i,e.length);return Module._free(i),n},decodeRecvFrame:function(){return Module.cwrap("decodeRecv","number",["number"])(t.vcodecerPtr)},playYUV:function(){return t.playFrameYUV(!0,!0)},playFrameYUV:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.cacheYuvBuf.vYuv();if(null==n)return t.noCacheFrame+=1,e&&!t.playParams.seekEvent&&t.loadCache(),!1;t.noCacheFrame=0;var r=n.pts;return t.videoPTS=r,(!e&&i||e)&&e&&(t.onRender(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR),t.drawImage(n.width,n.height,n.imageBufferY,n.imageBufferB,n.imageBufferR)),e&&!t.playParams.seekEvent&&t.isPlaying&&t.loadCache(),!0},drawImage:function(e,i,n,r,a){if(t.canvas.width===e&&t.canvas.height==i||(t.canvas.width=e,t.canvas.height=i),t.showScreen&&null!=t.onRender&&t.onRender(e,i,n,r,a),!t.isCheckDisplay)t.checkDisplaySize(e,i);var s=e*i,o=e/2*(i/2),l=new Uint8Array(s+2*o);l.set(n,0),l.set(r,s),l.set(a,s+o),u.renderFrame(t.yuv,n,r,a,e,i)},debugYUV:function(e){t.debugYUVSwitch=!0,t.debugID=e},checkDisplaySize:function(e,i){var n=e/t.config.width>i/t.config.height,r=(t.config.width/e).toFixed(2),a=(t.config.height/i).toFixed(2),s=n?r:a,o=t.config.fixed,u=o?t.config.width:parseInt(e*s),l=o?t.config.height:parseInt(i*s);if(t.canvas.offsetWidth!=u||t.canvas.offsetHeight!=l){var h=parseInt((t.canvasBox.offsetHeight-l)/2),d=parseInt((t.canvasBox.offsetWidth-u)/2);t.canvas.style.marginTop=h+"px",t.canvas.style.marginLeft=d+"px",t.canvas.style.width=u+"px",t.canvas.style.height=l+"px"}return t.isCheckDisplay=!0,[u,l]},makeWasm:function(){if(null!=t.config.token){t.vcodecerPtr=Module.cwrap("registerPlayer","number",["string","string"])(t.config.token,h.PLAYER_VERSION),t.videoCallback=Module.addFunction((function(e,i,n,r,a,s,u,l,h){var d=Module.HEAPU8.subarray(e,e+r*l),c=Module.HEAPU8.subarray(i,i+a*l/2),f=Module.HEAPU8.subarray(n,n+s*l/2),p=new Uint8Array(d),m=new Uint8Array(c),g=new Uint8Array(f),_=1*h/1e3,v=new o.CacheYuvStruct(_,r,l,p,m,g);Module._free(d),d=null,Module._free(c),c=null,Module._free(f),f=null,t.cacheYuvBuf.appendCacheByCacheYuv(v)})),Module.cwrap("setCodecType","number",["number","number","number"])(t.vcodecerPtr,t.config.videoCodec,t.videoCallback);Module.cwrap("initMissile","number",["number"])(t.vcodecerPtr);Module.cwrap("initializeDecoder","number",["number"])(t.vcodecerPtr)}},makeIt:function(){var e=document.querySelector("div#"+t.config.playerId),i=document.createElement("canvas");i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px",i.style.top="0px",i.style.left="0px",e.appendChild(i),t.canvasBox=e,t.canvas=i,t.yuv=u.setupCanvas(i,{preserveDrawingBuffer:!1}),0==t.config.audioNone&&(t.audio=a({sampleRate:t.config.sampleRate,appendType:t.config.appendHevcType})),t.isPlayLoadingFinish=1}};return t.makeWasm(),t.makeIt(),t.cacheThread(),t}},{"../consts":52,"../render-engine/webgl-420p":79,"../version":82,"./audio-core":54,"./av-common":56,"./cache":61,"./cacheYuv":62}],66:[function(e,t,i){"use strict";var n=e("./bufferFrame");t.exports=function(){var e={videoBuffer:[],audioBuffer:[],idrIdxBuffer:[],appendFrame:function(t,i){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=new n.BufferFrame(t,a,i,r),o=parseInt(t);return r?(e.videoBuffer.length-1>=o?e.videoBuffer[o].push(s):e.videoBuffer.push([s]),a&&!e.idrIdxBuffer.includes(t)&&e.idrIdxBuffer.push(t)):e.audioBuffer.length-1>=o&&null!=e.audioBuffer[o]&&null!=e.audioBuffer[o]?e.audioBuffer[o]&&e.audioBuffer[o].push(s):e.audioBuffer.push([s]),!0},appendFrameWithDts:function(t,i,r){var a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=n.ConstructWithDts(t,i,s,r,a),u=parseInt(i);return a?(e.videoBuffer.length-1>=u?e.videoBuffer[u].push(o):e.videoBuffer.push([o]),s&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=u&&null!=e.audioBuffer[u]&&null!=e.audioBuffer[u]?e.audioBuffer[u]&&e.audioBuffer[u].push(o):e.audioBuffer.push([o]),e.videoBuffer,e.idrIdxBuffer,!0},appendFrameByBufferFrame:function(t){var i=t.pts,n=parseInt(i);return t.video?(e.videoBuffer.length-1>=n?e.videoBuffer[n].push(t):e.videoBuffer.push([t]),isKey&&!e.idrIdxBuffer.includes(i)&&e.idrIdxBuffer.push(i)):e.audioBuffer.length-1>=n?e.audioBuffer[n].push(t):e.audioBuffer.push([t]),!0},cleanPipeline:function(){e.videoBuffer.length=0,e.audioBuffer.length=0},vFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.videoBuffer.length-1))return e.videoBuffer[t]},aFrame:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(t<0||t>e.audioBuffer.length-1))return e.audioBuffer[t]},seekIDR:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e.idrIdxBuffer,e.videoBuffer,t<0)return null;if(e.idrIdxBuffer.includes(t))return t;for(var i=0;it||0===i&&e.idrIdxBuffer[i]>=t){for(var n=1;n>=0;n--){var r=i-n;if(r>=0)return e.idrIdxBuffer[r],e.idrIdxBuffer[r]}return e.idrIdxBuffer[i],j,e.idrIdxBuffer[i]}}};return e}},{"./bufferFrame":67}],67:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&i.extensionInfo.vHeight>0&&(i.size.width=i.extensionInfo.vWidth,i.size.height=i.extensionInfo.vHeight)),i.mediaInfo.duration,null!=i.onDemuxed&&i.onDemuxed(i.onReadyOBJ);for(var e=!1;void 0!==i.mpegTsObj&&null!==i.mpegTsObj;){var n=i.mpegTsObj.readPacket();if(n.size<=0)break;var r=n.dtime>0?n.dtime:n.ptime;if(!(r<0)){if(0==n.type){r<=i.vPreFramePTS&&(e=!0);var a=u.PACK_NALU(n.layer),o=1==n.keyframe,l=1==e?r+i.vStartTime:r,h=new s.BufferFrame(l,o,a,!0);i.bufObject.appendFrame(h.pts,h.data,!0,h.isKey),i.vPreFramePTS=l,null!=i.onSamples&&i.onSamples(i.onReadyOBJ,h)}else if(r<=i.aPreFramePTS&&(e=!0),"aac"==i.mediaInfo.aCodec)for(var d=n.data,c=0;c=3?(i._onTsReady(e),window.clearInterval(i.timerTsWasm),i.timerTsWasm=null):(i.mpegTsWasmRetryLoadTimes+=1,i.mpegTsObj.initDemuxer())}),3e3)}},{key:"_onTsReady",value:function(e){var t=this;t.hls.fetchM3u8(e),t.mpegTsWasmState=!0,t.timerFeed=window.setInterval((function(){if(t.tsList.length>0&&0==t.lockWait.state)try{var e=t.tsList.shift();if(null!=e){var i=e.streamURI,n=e.streamDur;t.lockWait.state=!0,t.lockWait.lockMember.dur=n,t.mpegTsObj.isLive=t.hls.isLive(),t.mpegTsObj.demuxURL(i)}else console.error("_onTsReady need wait ")}catch(e){console.error("onTsReady ERROR:",e),t.lockWait.state=!1}}),50)}},{key:"release",value:function(){this.hls&&this.hls.release(),this.hls=null,this.timerFeed&&window.clearInterval(this.timerFeed),this.timerFeed=null,this.timerTsWasm&&window.clearInterval(this.timerTsWasm),this.timerTsWasm=null}},{key:"bindReady",value:function(e){this.onReadyOBJ=e}},{key:"popBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1===e?t+1>this.bufObject.videoBuffer.length?null:this.bufObject.vFrame(t):2===e?t+1>this.bufObject.audioBuffer.length?null:this.bufObject.aFrame(t):void 0}},{key:"getVLen",value:function(){return this.bufObject.videoBuffer.length}},{key:"getALen",value:function(){return this.bufObject.audioBuffer.length}},{key:"getLastIdx",value:function(){return this.bufObject.videoBuffer.length-1}},{key:"getALastIdx",value:function(){return this.bufObject.audioBuffer.length-1}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSampleChannel",value:function(){return this.aChannel}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),h&&n(t,h),e}();i.M3u8=h},{"../consts":52,"../decoder/hevc-imp":64,"./buffer":66,"./bufferFrame":67,"./m3u8base":69,"./mpegts/mpeg.js":73}],69:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i ",t),setTimeout((function(){i.fetchM3u8(e)}),500)}))}},{key:"_uriParse",value:function(e){this._preURI="";var t=e.split("://"),i=null,n=null;if(t.length<1)return!1;t.length>1?(i=t[0],n=t[1].split("/"),this._preURI=i+"://"):n=t[0].split("/");for(var r=0;rp&&(o=p);var m=n[l+=1],g=null;if(m.indexOf("http")>=0)g=m;else{if("/"===m[0]){var _=this._preURI.split("//"),v=_[_.length-1].split("/");this._preURI=_[0]+"//"+v[0]}g=this._preURI+m}this._slices.indexOf(g)<0&&(this._slices.push(g),this._slices[this._slices.length-1],null!=this.onTransportStream&&this.onTransportStream(g,p))}}}if(this._slices.length>s.hlsSliceLimit&&this._type==r.PLAYER_IN_TYPE_M3U8_LIVE&&(this._slices=this._slices.slice(-1*s.hlsSliceLimit)),null!=this.onFinished){var y={type:this._type,duration:-1};this.onFinished(y)}return o}},{key:"_readTag",value:function(e){var t=s.tagParse.exec(e);return null!==t?{key:t[1],value:t[3]}:null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.M3u8Base=o},{"../consts":52}],70:[function(e,t,i){"use strict";var n=e("mp4box"),r=e("../decoder/hevc-header"),a=e("../decoder/hevc-imp"),s=e("./buffer"),o=e("../consts"),u={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,Reserved:13,"frequency is written explictly":15},l=function(e){for(var t=[],i=0;i1&&void 0!==arguments[1]&&arguments[1],i=null;return t?((i=e)[0]=r.DEFINE_STARTCODE[0],i[1]=r.DEFINE_STARTCODE[1],i[2]=r.DEFINE_STARTCODE[2],i[3]=r.DEFINE_STARTCODE[3]):((i=new Uint8Array(r.DEFINE_STARTCODE.length+e.length)).set(r.DEFINE_STARTCODE,0),i.set(e,r.DEFINE_STARTCODE.length)),i},h.prototype.setAACAdts=function(e){var t=null,i=this.aacProfile,n=u[this.sampleRate],r=new Uint8Array(7),a=r.length+e.length;return r[0]=255,r[1]=241,r[2]=(i-1<<6)+(n<<2)+0,r[3]=128+(a>>11),r[4]=(2047&a)>>3,r[5]=31+((7&a)<<5),r[6]=252,(t=new Uint8Array(a)).set(r,0),t.set(e,r.length),t},h.prototype.demux=function(){var e=this;e.seekPos=-1,e.mp4boxfile=n.createFile(),e.movieInfo=null,e.videoCodec=null,e.durationMs=-1,e.fps=-1,e.sampleRate=-1,e.aacProfile=2,e.size={width:-1,height:-1},e.bufObject=s(),e.audioNone=!1,e.naluHeader={vps:null,sps:null,pps:null,sei:null},e.mp4boxfile.onError=function(e){},this.mp4boxfile.onReady=function(t){for(var i in e.movieInfo=t,t.tracks)"VideoHandler"!==t.tracks[i].name&&"video"!==t.tracks[i].type||(t.tracks[i].codec,t.tracks[i].codec.indexOf("hev")>=0||t.tracks[i].codec.indexOf("hvc")>=0?e.videoCodec=o.CODEC_H265:t.tracks[i].codec.indexOf("avc")>=0&&(e.videoCodec=o.CODEC_H264));var n=-1;if(n=t.videoTracks[0].samples_duration/t.videoTracks[0].timescale,e.durationMs=1e3*n,e.fps=t.videoTracks[0].nb_samples/n,e.seekDiffTime=1/e.fps,e.size.width=t.videoTracks[0].track_width,e.size.height=t.videoTracks[0].track_height,t.audioTracks.length>0){e.sampleRate=t.audioTracks[0].audio.sample_rate;var r=t.audioTracks[0].codec.split(".");e.aacProfile=r[r.length-1]}else e.audioNone=!0;null!=e.onMp4BoxReady&&e.onMp4BoxReady(e.videoCodec),e.videoCodec===o.CODEC_H265?(e.initializeAllSourceBuffers(),e.mp4boxfile.start()):(e.videoCodec,o.CODEC_H264)},e.mp4boxfile.onSamples=function(t,i,n){var s=window.setInterval((function(){for(var i=0;i3?e.naluHeader.sei=e.setStartCode(g[3][0].data,!1):e.naluHeader.sei=new Uint8Array,e.naluHeader}else e.videoCodec==o.CODEC_H264&&(e.naluHeader.vps=new Uint8Array,e.naluHeader.sps=e.setStartCode(f.SPS[0].nalu,!1),e.naluHeader.pps=e.setStartCode(f.PPS[0].nalu,!1),e.naluHeader.sei=new Uint8Array);h[4].toString(16),e.naluHeader.vps[4].toString(16),l(e.naluHeader.vps),l(h);var _=e.setStartCode(h.subarray(0,e.naluHeader.vps.length),!0);if(l(_),h[4]===e.naluHeader.vps[4]){var v=e.naluHeader.vps.length+4,y=e.naluHeader.vps.length+e.naluHeader.sps.length+4,b=e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4;if(e.naluHeader.sei.length<=0&&e.naluHeader.sps.length>0&&h[v]===e.naluHeader.sps[4]&&e.naluHeader.pps.length>0&&h[y]===e.naluHeader.pps[4]&&78===h[b]){h[e.naluHeader.vps.length+4],e.naluHeader.sps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+4],e.naluHeader.pps[4],h[e.naluHeader.vps.length+e.naluHeader.sps.length+e.naluHeader.pps.length+4];for(var T=0,S=0;S4&&h[4]===e.naluHeader.sei[4]){var E=h.subarray(0,10),w=new Uint8Array(e.naluHeader.vps.length+E.length);w.set(E,0),w.set(e.naluHeader.vps,E.length),w[3]=1,e.naluHeader.vps=null,e.naluHeader.vps=new Uint8Array(w),w=null,E=null,(h=h.subarray(10))[4],e.naluHeader.vps[4],e.naluHeader.vps}else if(0===e.naluHeader.sei.length&&78===h[4]){h=e.setStartCode(h,!0);for(var C=0,A=0;A1&&void 0!==arguments[1]?arguments[1]:0;return e.fileStart=t,this.mp4boxfile.appendBuffer(e)},h.prototype.finishBuffer=function(){this.mp4boxfile.flush()},h.prototype.play=function(){},h.prototype.getVideoCoder=function(){return this.videoCodec},h.prototype.getDurationMs=function(){return this.durationMs},h.prototype.getFPS=function(){return this.fps},h.prototype.getSampleRate=function(){return this.sampleRate},h.prototype.getSize=function(){return this.size},h.prototype.seek=function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}},h.prototype.popBuffer=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0},h.prototype.addBuffer=function(e){var t=e.id;this.mp4boxfile.setExtractionOptions(t)},h.prototype.initializeAllSourceBuffers=function(){if(this.movieInfo){for(var e=this.movieInfo,t=0;t>5)}},{key:"sliceAACFrames",value:function(e,t){for(var i=[],n=e,r=0;r>4==15){var a=this._getPktLen(t[r+3],t[r+4],t[r+5]);if(a<=0)continue;var s=t.subarray(r,r+a),o=new Uint8Array(a);o.set(s,0),i.push({ptime:n,data:o}),n+=this.frameDurSec,r+=a}else r+=1;return i}}])&&n(t.prototype,i),r&&n(t,r),e}();i.AACDecoder=r},{}],73:[function(e,t,i){(function(t){"use strict";function n(e,t){for(var i=0;i ",e),n=null})).catch((function(i){console.error("demuxerTsInit ERROR fetch ERROR ==> ",i),t._releaseOffset(),t.onDemuxedFailed&&t.onDemuxedFailed(i,e)}))}},{key:"_releaseOffset",value:function(){void 0!==this.offsetDemux&&null!==this.offsetDemux&&(Module._free(this.offsetDemux),this.offsetDemux=null)}},{key:"_demuxCore",value:function(e){if(this._releaseOffset(),this._refreshDemuxer(),!(e.length<=0)){this.offsetDemux=Module._malloc(e.length),Module.HEAP8.set(e,this.offsetDemux);var t=Module.cwrap("demuxBox","number",["number","number","number"])(this.offsetDemux,e.length,this.isLive);Module._free(this.offsetDemux),this.offsetDemux=null,t>=0&&(this._setMediaInfo(),this._setExtensionInfo(),null!=this.onDemuxed&&this.onDemuxed())}}},{key:"_setMediaInfo",value:function(){var e=Module.cwrap("getMediaInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],s=Module.HEAPF64[e/8+1+1],o=Module.HEAPF64[e/8+1+1+1],u=Module.HEAPF64[e/8+1+1+1+1],l=Module.HEAPU32[e/4+2+2+2+2+2];this.mediaAttr.vFps=n,this.mediaAttr.vGop=l,this.mediaAttr.vDuration=s,this.mediaAttr.aDuration=o,this.mediaAttr.duration=u;var h=Module.cwrap("getAudioCodecID","number",[])();h>=0?(this.mediaAttr.aCodec=a.CODEC_OFFSET_TABLE[h],this.mediaAttr.sampleRate=t>0?t:a.DEFAULT_SAMPLERATE,this.mediaAttr.sampleChannel=i>=0?i:a.DEFAULT_CHANNEL):(this.mediaAttr.sampleRate=0,this.mediaAttr.sampleChannel=0,this.mediaAttr.audioNone=!0);var d=Module.cwrap("getVideoCodecID","number",[])();d>=0&&(this.mediaAttr.vCodec=a.CODEC_OFFSET_TABLE[d]),null==this.aacDec?this.aacDec=new r.AACDecoder(this.mediaAttr):this.aacDec.updateConfig(this.mediaAttr)}},{key:"_setExtensionInfo",value:function(){var e=Module.cwrap("getExtensionInfo","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1];this.extensionInfo.vWidth=t,this.extensionInfo.vHeight=i}},{key:"readMediaInfo",value:function(){return this.mediaAttr}},{key:"readExtensionInfo",value:function(){return this.extensionInfo}},{key:"readAudioNone",value:function(){return this.mediaAttr.audioNone}},{key:"_readLayer",value:function(){null===this.naluLayer?this.naluLayer={vps:null,sps:null,pps:null,sei:null}:(this.naluLayer.vps=null,this.naluLayer.sps=null,this.naluLayer.pps=null,this.naluLayer.sei=null),null===this.vlcLayer?this.vlcLayer={vlc:null}:this.vlcLayer.vlc=null;var e=Module.cwrap("getSPSLen","number",[])(),t=Module.cwrap("getSPS","number",[])();if(!(e<0)){var i=Module.HEAPU8.subarray(t,t+e);this.naluLayer.sps=new Uint8Array(e),this.naluLayer.sps.set(i,0);var n=Module.cwrap("getPPSLen","number",[])(),r=Module.cwrap("getPPS","number",[])(),s=Module.HEAPU8.subarray(r,r+n);this.naluLayer.pps=new Uint8Array(n),this.naluLayer.pps.set(s,0);var o=Module.cwrap("getSEILen","number",[])(),u=Module.cwrap("getSEI","number",[])(),l=Module.HEAPU8.subarray(u,u+o);this.naluLayer.sei=new Uint8Array(o),this.naluLayer.sei.set(l,0);var h=Module.cwrap("getVLCLen","number",[])(),d=Module.cwrap("getVLC","number",[])(),c=Module.HEAPU8.subarray(d,d+h);if(this.vlcLayer.vlc=new Uint8Array(h),this.vlcLayer.vlc.set(c,0),this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265){var f=Module.cwrap("getVPSLen","number",[])(),p=Module.cwrap("getVPS","number",[])(),m=Module.HEAPU8.subarray(p,p+f);this.naluLayer.vps=new Uint8Array(f),this.naluLayer.vps.set(m,0),Module._free(m),m=null}else this.mediaAttr.vCodec==a.DEF_AVC||(this.mediaAttr.vCodec,a.DEF_H264);return Module._free(i),i=null,Module._free(s),s=null,Module._free(l),l=null,Module._free(c),c=null,{nalu:this.naluLayer,vlc:this.vlcLayer}}}},{key:"isHEVC",value:function(){return this.mediaAttr.vCodec==a.DEF_HEVC||this.mediaAttr.vCodec==a.DEF_H265}},{key:"readPacket",value:function(){var e=Module.cwrap("getPacket","number",[])(),t=Module.HEAPU32[e/4],i=Module.HEAPU32[e/4+1],n=Module.HEAPF64[e/8+1],r=Module.HEAPF64[e/8+1+1],s=Module.HEAPU32[e/4+1+1+2+2],o=Module.HEAPU32[e/4+1+1+2+2+1],u=Module.HEAPU8.subarray(o,o+i),l=this._readLayer(),h={type:t,size:i,ptime:n,dtime:r,keyframe:s,src:u,data:1==t&&this.mediaAttr.aCodec==a.DEF_AAC?this.aacDec.sliceAACFrames(n,u):u,layer:l};return Module._free(u),u=null,h}},{key:"_refreshDemuxer",value:function(){this.releaseTsDemuxer(),this._initDemuxer()}},{key:"_initDemuxer",value:function(){Module.cwrap("initTsMissile","number",[])(),Module.cwrap("initializeDemuxer","number",[])()}},{key:"releaseTsDemuxer",value:function(){Module.cwrap("exitTsMissile","number",[])()}}])&&n(i.prototype,s),o&&n(i,o),e}();i.MPEG_JS=s}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":71,"./decoder/aac":72}],74:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&e.extensionInfo.vHeight>0&&(e.size.width=e.extensionInfo.vWidth,e.size.height=e.extensionInfo.vHeight);for(var t=null;!((t=e.mpegTsObj.readPacket()).size<=0);){var i=t.dtime;if(0==t.type){var n=s.PACK_NALU(t.layer),r=1==t.keyframe;e.bufObject.appendFrame(i,n,!0,r)}else if("aac"==e.mediaInfo.aCodec)for(var a=t.data,o=0;o0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;return t<0?null:1==e?this.bufObject.vFrame(t):2==e?this.bufObject.aFrame(t):void 0}},{key:"isHEVC",value:function(){return this.mpegTsObj.isHEVC()}},{key:"getACodec",value:function(){return this.aCodec}},{key:"getVCodec",value:function(){return this.vCodec}},{key:"getAudioNone",value:function(){return this.mpegTsObj.mediaAttr.audioNone}},{key:"getDurationMs",value:function(){return this.durationMs}},{key:"getFPS",value:function(){return this.fps}},{key:"getSampleRate",value:function(){return this.sampleRate}},{key:"getSize",value:function(){return this.size}},{key:"seek",value:function(e){if(e>=0){var t=this.bufObject.seekIDR(e);this.seekPos=t}}}])&&n(t.prototype,i),o&&n(t,o),e}();i.MpegTs=o},{"../decoder/hevc-imp":64,"./buffer":66,"./mpegts/mpeg.js":73}],75:[function(e,t,i){(function(t){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:1;return!(this.playParam.videoCodec===_.CODEC_H265||e<=0||void 0===this.player||null===this.player)&&this.player.setPlaybackRate(e)}},{key:"getPlaybackRate",value:function(){return void 0!==this.player&&null!==this.player&&(this.playParam.videoCodec===_.CODEC_H265?1:this.player.getPlaybackRate())}},{key:"setRenderScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return void 0!==this.player&&null!==this.player&&(this.player.setScreen(e),!0)}},{key:"play",value:function(){if(void 0===this.player||null===this.player)return!1;if(this.playParam.videoCodec===_.CODEC_H265){var e={seekPos:this._getSeekTarget(),mode:this.playMode,accurateSeek:this.configFormat.accurateSeek,seekEvent:!1,realPlay:!0};this.player.play(e)}else this.player.play();return!0}},{key:"pause",value:function(){return void 0!==this.player&&null!==this.player&&(this.player.pause(),!0)}},{key:"isPlaying",value:function(){return void 0!==this.player&&null!==this.player&&this.player.isPlayingState()}},{key:"setVoice",value:function(e){return!(e<0||void 0===this.player||null===this.player||(this.volume=e,this.player&&this.player.setVoice(e),0))}},{key:"getVolume",value:function(){return this.volume}},{key:"mediaInfo",value:function(){var e={meta:this.playParam,videoType:this.playMode};return e.meta.isHEVC=0===this.playParam.videoCodec,e}},{key:"snapshot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===e||void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?(this.player.setScreen(!0),e.width=this.snapshotYuvLastFrame.width,e.height=this.snapshotYuvLastFrame.height,this.snapshotYuvLastFrame,void 0!==this.snapshotCanvasContext&&null!==this.snapshotCanvasContext||(this.snapshotCanvasContext=y.setupCanvas(e,{preserveDrawingBuffer:!1})),y.renderFrame(this.snapshotCanvasContext,this.snapshotYuvLastFrame.luma,this.snapshotYuvLastFrame.chromaB,this.snapshotYuvLastFrame.chromaR,this.snapshotYuvLastFrame.width,this.snapshotYuvLastFrame.height)):(e.width=this.playParam.size.width,e.height=this.playParam.size.height,e.getContext("2d").drawImage(this.player.videoTag,0,0,e.width,e.height))),null}},{key:"_seekHLS",value:function(e,t,i){if(void 0===this.player||null===this.player)return!1;setTimeout((function(){t.player.getCachePTS(),t.player.getCachePTS()>e?i():t._seekHLS(e,t,i)}),100)}},{key:"seek",value:function(e){if(void 0===this.player||null===this.player)return!1;var t=this;this.seekTarget=e,this.onSeekStart&&this.onSeekStart(e),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null);var i=this._getSeekTarget();return this.playParam.videoCodec===_.CODEC_H264?(this.player.seek(e),this.onSeekFinish&&this.onSeekFinish()):this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?(this.pause(),this._seekHLS(e,this,(function(){t.player.seek((function(){}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})}))):this._seekHLS(e,this,(function(){t.player.seek((function(){t.configFormat.type==_.PLAYER_IN_TYPE_MP4?t.mp4Obj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_TS||t.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?t.mpegTsObj.seek(e):t.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(t.hlsObj.onSamples=null,t.hlsObj.seek(e));var i,n=(i=0,i=t.configFormat.accurateSeek?e:t._getBoxBufSeekIDR(),parseInt(i)),r=parseInt(t._getBoxBufSeekIDR())||0;t._avFeedMP4Data(r,n)}),{seekTime:i,mode:t.playMode,accurateSeek:t.configFormat.accurateSeek})})),!0}},{key:"fullScreen",value:function(){if(this.autoScreenClose=!0,this.player.vCodecID,this.player,this.player.vCodecID===_.V_CODEC_NAME_HEVC){var e=document.querySelector("#"+this.configFormat.playerId),t=e.getElementsByTagName("canvas")[0];e.style.width=this.screenW+"px",e.style.height=this.screenH+"px";var i=this._checkScreenDisplaySize(this.screenW,this.screenH,this.playParam.size.width,this.playParam.size.height);t.style.marginTop=i[0]+"px",t.style.marginLeft=i[1]+"px",t.style.width=i[2]+"px",t.style.height=i[3]+"px",this._requestFullScreen(e)}else this._requestFullScreen(this.player.videoTag)}},{key:"closeFullScreen",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!1===e&&(this.autoScreenClose=!1,this._exitFull()),this.player.vCodecID===_.V_CODEC_NAME_HEVC){var t=document.querySelector("#"+this.configFormat.playerId),i=t.getElementsByTagName("canvas")[0];t.style.width=this.configFormat.playerW+"px",t.style.height=this.configFormat.playerH+"px";var n=this._checkScreenDisplaySize(this.configFormat.playerW,this.configFormat.playerH,this.playParam.size.width,this.playParam.size.height);i.style.marginTop=n[0]+"px",i.style.marginLeft=n[1]+"px",i.style.width=n[2]+"px",i.style.height=n[3]+"px"}}},{key:"playNextFrame",value:function(){return this.pause(),void 0!==this.playParam&&null!==this.playParam&&(0===this.playParam.videoCodec?this.player.playYUV():this.player.nativeNextFrame(),!0)}},{key:"resize",value:function(e,t){if(void 0!==this.player&&null!==this.player){if(!(e&&t&&this.playParam.size.width&&this.playParam.size.height))return!1;var i=this.playParam.size.width,n=this.playParam.size.height,r=0===this.playParam.videoCodec,a=document.querySelector("#"+this.configFormat.playerId);if(a.style.width=e+"px",a.style.height=t+"px",!0===r){var s=a.getElementsByTagName("canvas")[0],o=function(e,t){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=parseInt(i*o,10),l=parseInt(n*o,10);return[parseInt((t-l)/2,10),parseInt((e-u)/2,10),u,l]}(e,t);s.style.marginTop=o[0]+"px",s.style.marginLeft=o[1]+"px",s.style.width=o[2]+"px",s.style.height=o[3]+"px"}else{var u=a.getElementsByTagName("video")[0];u.style.width=e+"px",u.style.height=t+"px"}return!0}return!1}},{key:"_checkScreenDisplaySize",value:function(e,t,i,n){var r=i/e>n/t,a=(e/i).toFixed(2),s=(t/n).toFixed(2),o=r?a:s,u=this.fixed?e:parseInt(i*o),l=this.fixed?t:parseInt(n*o);return[parseInt((t-l)/2),parseInt((e-u)/2),u,l]}},{key:"_isFullScreen",value:function(){var e=document.fullscreenElement||document.mozFullscreenElement||document.webkitFullscreenElement;return document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled,null!=e}},{key:"_requestFullScreen",value:function(e){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():e.webkitRequestFullscreen&&e.webkitRequestFullScreen()}},{key:"_exitFull",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}},{key:"_durationText",value:function(e){if(e<0)return"Play";var t=Math.round(e);return Math.floor(t/3600)+":"+Math.floor(t%3600/60)+":"+Math.floor(t%60)}},{key:"_getSeekTarget",value:function(){return this.configFormat.accurateSeek?this.seekTarget:this._getBoxBufSeekIDR()}},{key:"_getBoxBufSeekIDR",value:function(){return this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.mp4Obj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this.mpegTsObj.seekPos:this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this.hlsObj.seekPos:void 0}},{key:"_playControl",value:function(){this.isPlaying()?this.pause():this.play()}},{key:"_avFeedMP4Data",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(void 0===this.player||null===this.player)return!1;var r=parseInt(this.playParam.durationMs/1e3);this.player.clearAllCache(),this.timerFeed=window.setInterval((function(){var a=null,s=null,o=!0,u=!0;if(e.configFormat.type==_.PLAYER_IN_TYPE_MP4?(a=e.mp4Obj.popBuffer(1,t),s=e.mp4Obj.audioNone?null:e.mp4Obj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_TS||e.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?(a=e.mpegTsObj.popBuffer(1,t),s=e.mpegTsObj.getAudioNone()?null:e.mpegTsObj.popBuffer(2,i)):e.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&(a=e.hlsObj.popBuffer(1,t),s=e.hlsObj.audioNone?null:e.hlsObj.popBuffer(2,i),t=e.hlsObj.getLastIdx()&&(o=!1),i=e.hlsObj.getALastIdx()&&(u=!1)),!0===o&&null!=a)for(var l=0;lr)return window.clearInterval(e.timerFeed),e.timerFeed=null,e.player.vCachePTS,e.player.aCachePTS,void(null!=n&&n())}),5)}},{key:"_isSupportWASM",value:function(){var e=function(){try{if("object"===("undefined"==typeof WebAssembly?"undefined":n(WebAssembly))&&"function"==typeof WebAssembly.instantiate){var e=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly.Module)return new WebAssembly.Instance(e)instanceof WebAssembly.Instance}}catch(e){}return!1}();if(!1===e)return!1;if(!0===e){var t=f.BrowserJudge(),i=t[0],r=t[1];if("Chrome"===i&&r<85)return!1;if(i.indexOf("360")>=0)return!1;if(/Safari/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&r>13)return!1}return!0}},{key:"_makeMP4Player",value:function(){if(this._isSupportWASM(),!1===this._isSupportWASM()){if(this.configFormat.type==_.PLAYER_IN_TYPE_MP4)this._makeNativePlayer();else{if(this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS)return-1;if(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8)this._videoJsPlayer(0);else if(this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265)return-1}return 1}return this.mediaExtProtocol===_.URI_PROTOCOL_WEBSOCKET_DESC?(this.configFormat.type,this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265?this._raw265Entry():this._cWsFLVDecoderEntry(),0):(null!=this.configFormat.extInfo.core&&null!==this.configFormat.extInfo.core&&this.configFormat.extInfo.core===_.PLAYER_CORE_TYPE_CNATIVE?this._cDemuxDecoderEntry():this.configFormat.type==_.PLAYER_IN_TYPE_MP4?this.configFormat.extInfo.moovStartFlag?this._mp4EntryVodStream():this._mp4Entry():this.configFormat.type==_.PLAYER_IN_TYPE_TS||this.configFormat.type==_.PLAYER_IN_TYPE_MPEGTS?this._mpegTsEntry():this.configFormat.type==_.PLAYER_IN_TYPE_M3U8?this._m3u8Entry():this.configFormat.type===_.PLAYER_IN_TYPE_RAW_265&&this._raw265Entry(),0)}},{key:"_makeMP4PlayerViewEvent",value:function(e,t,i,n){var r=this,s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,u=this;if(this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=s,this.playParam.videoCodec=o||_.CODEC_H265,this.playParam,(this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE||this.configFormat.type==_.PLAYER_IN_TYPE_RAW_265)&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),u.configFormat.extInfo.autoCrop){var l=document.querySelector("#"+this.configFormat.playerId),h=n.width/n.height,d=this.configFormat.playerW/this.configFormat.playerH;h>d?l.style.height=this.configFormat.playerW/h+"px":h0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,a=arguments.length>5?arguments[5]:void 0,o=this;this.playParam.durationMs=e,this.playParam.fps=t,this.playParam.sampleRate=i,this.playParam.size=n,this.playParam.audioNone=r,this.playParam.videoCodec=a||_.CODEC_H264,this.configFormat.type==_.PLAYER_IN_TYPE_M3U8&&this.hlsConf.hlsType==_.PLAYER_IN_TYPE_M3U8_LIVE&&(this.playMode=_.PLAYER_MODE_NOTIME_LIVE),this.player=new s.Mp4Player({width:this.configFormat.playerW,height:this.configFormat.playerH,sampleRate:i,fps:t,appendHevcType:_.APPEND_TYPE_FRAME,fixed:!1,playerId:this.configFormat.playerId,audioNone:r,token:this.configFormat.token,videoCodec:a,autoPlay:this.configFormat.extInfo.autoPlay}),this.player.makeIt(this.videoURL),this.player.onPlayingTime=function(t){o._durationText(t),o._durationText(e/1e3),null!=o.onPlayTime&&o.onPlayTime(t)},this.player.onPlayingFinish=function(){null!=o.onPlayFinish&&o.onPlayFinish()},this.player.onLoadFinish=function(){o.playParam.durationMs=1e3*o.player.duration,o.playParam.size=o.player.getSize(),o.onLoadFinish&&o.onLoadFinish(),o.onReadyShowDone&&o.onReadyShowDone()},this.player.onPlayState=function(e){o.onPlayState&&o.onPlayState(e)},this.player.onCacheProcess=function(e){o.onCacheProcess&&o.onCacheProcess(e)}}},{key:"_initMp4BoxObject",value:function(){var e=this;this.timerFeed=null,this.mp4Obj=new p,this.mp4Obj.onMp4BoxReady=function(t){var i=e.mp4Obj.getFPS(),n=T(i,e.mp4Obj.getDurationMs()),r=e.mp4Obj.getSampleRate(),a=e.mp4Obj.getSize(),s=e.mp4Obj.getVideoCoder();t===_.CODEC_H265?(e._makeMP4PlayerViewEvent(n,i,r,a,e.mp4Obj.audioNone,s),parseInt(n/1e3),e._avFeedMP4Data(0,0)):e._makeNativePlayer(n,i,r,a,e.mp4Obj.audioNone,s)}}},{key:"_mp4Entry",value:function(){var e=this,t=this;fetch(this.videoURL).then((function(e){return e.arrayBuffer()})).then((function(i){t._initMp4BoxObject(),e.mp4Obj.demux(),e.mp4Obj.appendBufferData(i,0),e.mp4Obj.finishBuffer(),e.mp4Obj.seek(-1)}))}},{key:"_mp4EntryVodStream",value:function(){var e=this,t=this;this.timerFeed=null,this.mp4Obj=new p,this._initMp4BoxObject(),this.mp4Obj.demux();var i=0,n=!1,r=window.setInterval((function(){n||(n=!0,fetch(e.videoURL).then((function(e){return function e(n){return n.read().then((function(a){if(a.done)return t.mp4Obj.finishBuffer(),t.mp4Obj.seek(-1),void window.clearInterval(r);var s=a.value;return t.mp4Obj.appendBufferData(s.buffer,i),i+=s.byteLength,e(n)}))}(e.body.getReader())})).catch((function(e){})))}),1)}},{key:"_cDemuxDecoderEntry",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.configFormat.type;var i=this,n=!1,r=new AbortController,a=r.signal,s={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay,defaultFps:this.configFormat.extInfo.rawFps,cacheLength:this.configFormat.extInfo.cacheLength};this.player=new o.CNativeCore(s),window.g_players[this.player.corePtr]=this.player,this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onRelease=function(){r.abort()},this.player.onProbeFinish=function(){n=!0,i.player.config,i.player.audioNone,i.playParam.fps=i.player.config.fps,i.playParam.durationMs=T(i.playParam.fps,1e3*i.player.duration),i.player.duration<0&&(i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.durationMs=-1),i.playParam.sampleRate=i.player.config.sampleRate,i.playParam.size={width:i.player.width,height:i.player.height},i.playParam.audioNone=i.player.audioNone,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,r.abort(),i.player.release(),i.player=null,i.mediaExtFormat===_.PLAYER_IN_TYPE_MP4?i._makeNativePlayer(i.playParam.durationMs,i.playParam.fps,i.playParam.sampleRate,i.playParam.size,!1,i.playParam.videoCodec):i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV?i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone):i.onLoadFinish&&i.onLoadFinish())},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),null!=i.onPlayTime&&i.onPlayTime(0),i.onPlayFinish&&i.onPlayFinish(),i.player.reFull=!0,i.seek(0)},this.player.onCacheProcess=function(t){e.onCacheProcess&&e.onCacheProcess(t)},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onSeekFinish=function(){null!=e.onSeekFinish&&e.onSeekFinish()};var u=!1,l=0,h=function e(o){setTimeout((function(){if(!1===u){if(r.abort(),r=null,a=null,o>=_.FETCH_FIRST_MAX_TIMES)return;r=new AbortController,a=r.signal,e(o+1)}}),_.FETCH_HTTP_FLV_TIMEOUT_MS),fetch(i.videoURL,{signal:a}).then((function(e){if(u=!0,e.headers.has("Content-Length"))l=e.headers.get("Content-Length"),i.player&&i.player.setProbeSize(l*i.configFormat.extInfo.coreProbePart);else{if(i.mediaExtFormat===_.PLAYER_IN_TYPE_FLV)return r.abort(),i.player.release(),i.player=null,i._cLiveFLVDecoderEntry(s),!0;i.player&&i.player.setProbeSize(4096)}return e.headers.get("Content-Length"),i.configFormat.type,i.mediaExtFormat,function e(r){return r.read().then((function(a){if(a.done)return!0===n||(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1));a.value.buffer;var s=new Uint8Array(a.value.buffer);return i.player&&i.player.pushBuffer(s)<0?(i.player.release(),i.player=null,t<_.PLAYER_CNATIVE_VOD_RETRY_MAX?(t+=1,i._cDemuxDecoderEntry(t),!0):(i._mp4EntryVodStream(),!1)):e(r)}))}(e.body.getReader())})).catch((function(e){e.toString().includes("user aborted")||console.error("cdemuxdecoder error",e)}))};h(0)}},{key:"_cLiveG711DecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new l.CHttpG711Core(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cLiveFLVDecoderEntry",value:function(e){var t=this,i=this;e.probeSize=this.configFormat.extInfo.probeSize,this.player=new u.CHttpLiveCore(e),window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(1===t)return i.player.release(),i.player=null,void i._cLiveG711DecoderEntry(e);i.playParam.fps=i.player.mediaInfo.fps,i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE,i.playParam.sampleRate=i.player.mediaInfo.sampleRate,i.playParam.size={width:i.player.mediaInfo.width,height:i.player.mediaInfo.height},i.playParam.audioNone=i.player.mediaInfo.audioNone,i.player.mediaInfo,i.player.vCodecID===_.V_CODEC_NAME_HEVC?(i.playParam.audioIdx<0&&(i.playParam.audioNone=!0),i.playParam.videoCodec=_.CODEC_H265,i.onLoadFinish&&i.onLoadFinish()):(i.playParam.videoCodec=_.CODEC_H264,i.player.release(),i.player=null,i._flvJsPlayer(i.playParam.durationMs,i.playParam.audioNone))},this.player.onNetworkError=function(e){i.onNetworkError&&i.onNetworkError(e)},this.player.onReadyShowDone=function(){i.configFormat.extInfo.readyShow=!1,i.onReadyShowDone&&i.onReadyShowDone()},this.player.onLoadCache=function(){null!=t.onLoadCache&&t.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=t.onLoadCacheFinshed&&t.onLoadCacheFinshed()},this.player.onRender=function(e,t,n,r,a){i.snapshotYuvLastFrame.luma=null,i.snapshotYuvLastFrame.chromaB=null,i.snapshotYuvLastFrame.chromaR=null,i.snapshotYuvLastFrame.width=e,i.snapshotYuvLastFrame.height=t,i.snapshotYuvLastFrame.luma=new Uint8Array(n),i.snapshotYuvLastFrame.chromaB=new Uint8Array(r),i.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=i.onRender&&i.onRender(e,t,n,r,a)},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.start(this.videoURL)}},{key:"_cWsFLVDecoderEntry",value:function(){var e=this,t=this,i={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,token:this.configFormat.token,readyShow:this.configFormat.extInfo.readyShow,checkProbe:this.configFormat.extInfo.checkProbe,ignoreAudio:this.configFormat.extInfo.ignoreAudio,playMode:this.playMode,autoPlay:this.configFormat.extInfo.autoPlay};i.probeSize=this.configFormat.extInfo.probeSize,this.player=new h.CWsLiveCore(i),i.probeSize,window.g_players[this.player.corePtr]=this.player,this.player.onProbeFinish=function(){t.playParam.fps=t.player.mediaInfo.fps,t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE,t.playParam.sampleRate=t.player.mediaInfo.sampleRate,t.playParam.size={width:t.player.mediaInfo.width,height:t.player.mediaInfo.height},t.playParam.audioNone=t.player.mediaInfo.audioNone,t.player.mediaInfo,t.player.vCodecID===_.V_CODEC_NAME_HEVC?(t.playParam.audioIdx<0&&(t.playParam.audioNone=!0),t.playParam.videoCodec=_.CODEC_H265,t.onLoadFinish&&t.onLoadFinish()):(t.playParam.videoCodec=_.CODEC_H264,t.player.release(),t.player=null,t._flvJsPlayer(t.playParam.durationMs,t.playParam.audioNone))},this.player.onNetworkError=function(e){t.onNetworkError&&t.onNetworkError(e)},this.player.onReadyShowDone=function(){t.configFormat.extInfo.readyShow=!1,t.onReadyShowDone&&t.onReadyShowDone()},this.player.onLoadCache=function(){null!=e.onLoadCache&&e.onLoadCache()},this.player.onLoadCacheFinshed=function(){null!=e.onLoadCacheFinshed&&e.onLoadCacheFinshed()},this.player.onRender=function(e,i,n,r,a){t.snapshotYuvLastFrame.luma=null,t.snapshotYuvLastFrame.chromaB=null,t.snapshotYuvLastFrame.chromaR=null,t.snapshotYuvLastFrame.width=e,t.snapshotYuvLastFrame.height=i,t.snapshotYuvLastFrame.luma=new Uint8Array(n),t.snapshotYuvLastFrame.chromaB=new Uint8Array(r),t.snapshotYuvLastFrame.chromaR=new Uint8Array(a),null!=t.onRender&&t.onRender(e,i,n,r,a)},this.player.start(this.videoURL)}},{key:"_mpegTsEntry",value:function(){var e=this,t=new AbortController,i=t.signal;this.timerFeed=null,this.mpegTsObj=new m.MpegTs,this.mpegTsObj.bindReady(e),this.mpegTsObj.onDemuxed=this._mpegTsEntryReady.bind(this),this.mpegTsObj.onReady=function(){var n=null;fetch(e.videoURL,{signal:i}).then((function(r){if(r.headers.has("Content-Length"))return function t(i){return i.read().then((function(r){if(!r.done){var a=r.value;if(null===n)n=a;else{var s=a,o=n.length+s.length,u=new Uint8Array(o);u.set(n),u.set(s,n.length),n=new Uint8Array(u),s=null,u=null}return t(i)}e.mpegTsObj.demux(n)}))}(r.body.getReader());t.abort(),i=null,t=null;var a={width:e.configFormat.playerW,height:e.configFormat.playerH,playerId:e.configFormat.playerId,token:e.configFormat.token,readyShow:e.configFormat.extInfo.readyShow,checkProbe:e.configFormat.extInfo.checkProbe,ignoreAudio:e.configFormat.extInfo.ignoreAudio,playMode:e.playMode,autoPlay:e.configFormat.extInfo.autoPlay};e._cLiveFLVDecoderEntry(a)})).catch((function(e){if(!e.toString().includes("user aborted")){var t=" mpegts request error:"+e;console.error(t)}}))},this.mpegTsObj.initMPEG()}},{key:"_mpegTsEntryReady",value:function(e){var t=e,i=(t.mpegTsObj.getVCodec(),t.mpegTsObj.getACodec()),n=t.mpegTsObj.getDurationMs(),r=t.mpegTsObj.getFPS(),a=t.mpegTsObj.getSampleRate(),s=t.mpegTsObj.getSize(),o=this.mpegTsObj.isHEVC();if(!o)return this.mpegTsObj.releaseTsDemuxer(),this.mpegTsObj=null,this.playParam.durationMs=n,this.playParam.fps=r,this.playParam.sampleRate=a,this.playParam.size=s,this.playParam.audioNone=""==i,this.playParam.videoCodec=o?0:1,this.playParam,void(this.onLoadFinish&&this.onLoadFinish());t._makeMP4PlayerViewEvent(n,r,a,s,""==i),parseInt(n/1e3),t._avFeedMP4Data(0,0)}},{key:"_m3u8Entry",value:function(){var e=this,t=this;if(!1===this._isSupportWASM())return this._videoJsPlayer(0);var i=!1,n=0;this.hlsObj=new g.M3u8,this.hlsObj.bindReady(t),this.hlsObj.onFinished=function(e,r){0==i&&(n=t.hlsObj.getDurationMs(),t.hlsConf.hlsType=r.type,i=!0)},this.hlsObj.onCacheProcess=function(t){e.playMode!==_.PLAYER_MODE_NOTIME_LIVE&&e.onCacheProcess&&e.onCacheProcess(t)},this.hlsObj.onDemuxed=function(e){if(null==t.player){var i=t.hlsObj.isHevcParam,r=(t.hlsObj.getVCodec(),t.hlsObj.getACodec()),a=t.hlsObj.getFPS(),s=t.hlsObj.getSampleRate(),o=t.hlsObj.getSize(),u=!1;if(u=t.hlsObj.getSampleChannel()<=0||""===r,!i)return t.hlsObj.release(),t.hlsObj.mpegTsObj&&t.hlsObj.mpegTsObj.releaseTsDemuxer(),t.hlsObj=null,t.playParam.durationMs=n,t.playParam.fps=a,t.playParam.sampleRate=s,t.playParam.size=o,t.playParam.audioNone=""==r,t.playParam.videoCodec=i?0:1,t.playParam,void t._videoJsPlayer(n);t._makeMP4PlayerViewEvent(n,a,s,o,u)}},this.hlsObj.onSamples=this._hlsOnSamples.bind(this),this.hlsObj.demux(this.videoURL)}},{key:"_hlsOnSamples",value:function(e,t){1==t.video?this.player.appendHevcFrame(t):!1===this.hlsObj.audioNone&&this.player.appendAACFrame(t)}},{key:"_videoJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=this,i={probeDurationMS:e,width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,autoPlay:this.configFormat.extInfo.autoPlay};this.player=new d.NvVideojsCore(i),this.player.onMakeItReady=function(){t.onMakeItReady&&t.onMakeItReady()},this.player.onLoadFinish=function(){t.playParam.size=t.player.getSize(),t.playParam.videoCodec=1,t.player.duration===1/0||t.player.duration<0?(t.playParam.durationMs=-1,t.playMode=_.PLAYER_MODE_NOTIME_LIVE):(t.playParam.durationMs=1e3*t.player.duration,t.playMode=_.PLAYER_MODE_VOD),t.playParam,t.player.duration,t.player.getSize(),t.onLoadFinish&&t.onLoadFinish()},this.player.onReadyShowDone=function(){t.onReadyShowDone&&t.onReadyShowDone()},this.player.onPlayingFinish=function(){t.pause(),t.seek(0),null!=t.onPlayFinish&&t.onPlayFinish()},this.player.onPlayingTime=function(e){t._durationText(e),t._durationText(t.player.duration),null!=t.onPlayTime&&t.onPlayTime(e)},this.player.onSeekFinish=function(){t.onSeekFinish&&t.onSeekFinish()},this.player.onPlayState=function(e){t.onPlayState&&t.onPlayState(e)},this.player.onCacheProcess=function(e){t.onCacheProcess&&t.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_flvJsPlayer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this,n={width:this.configFormat.playerW,height:this.configFormat.playerH,playerId:this.configFormat.playerId,ignoreAudio:this.configFormat.extInfo.ignoreAudio,duration:e,autoPlay:this.configFormat.extInfo.autoPlay,audioNone:t};this.player=new c.NvFlvjsCore(n),this.player.onLoadFinish=function(){i.playParam.size=i.player.getSize(),!i.player.duration||NaN===i.player.duration||i.player.duration===1/0||i.player.duration<0?(i.playParam.durationMs=-1,i.playMode=_.PLAYER_MODE_NOTIME_LIVE):(i.playParam.durationMs=1e3*i.player.duration,i.playMode=_.PLAYER_MODE_VOD),i.onLoadFinish&&i.onLoadFinish()},this.player.onReadyShowDone=function(){i.onReadyShowDone&&i.onReadyShowDone()},this.player.onPlayingTime=function(e){i._durationText(e),i._durationText(i.player.duration),null!=i.onPlayTime&&i.onPlayTime(e)},this.player.onPlayingFinish=function(){i.pause(),i.seek(0),null!=i.onPlayFinish&&i.onPlayFinish()},this.player.onPlayState=function(e){i.onPlayState&&i.onPlayState(e)},this.player.onCacheProcess=function(e){i.onCacheProcess&&i.onCacheProcess(e)},this.player.makeIt(this.videoURL)}},{key:"_raw265Entry",value:function(){var e=this;this.videoURL;var t=function t(){setTimeout((function(){e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}),e.workerParse.parseEmpty,e.workerFetch.onMsgFetchFinished,!0===e.workerFetch.onMsgFetchFinished&&!0===e.workerParse.frameListEmpty&&!1===e.workerParse.streamEmpty&&e.workerParse.postMessage({cmd:"last-nalu",data:null,msg:"last-nalu"}),!0===e.workerParse.parseEmpty&&(e.workerParse.stopNaluInterval=!0),!0!==e.workerParse.stopNaluInterval&&t()}),1e3)};this._makeMP4PlayerViewEvent(-1,this.configFormat.extInfo.rawFps,-1,{width:this.configFormat.playerW,height:this.configFormat.playerH},!0,_.CODEC_H265),this.timerFeed&&(window.clearInterval(this.timerFeed),this.timerFeed=null),e.workerFetch=new Worker(f.GetScriptPath((function(){var e=new AbortController,t=e.signal,i=null;onmessage=function(n){var r=n.data;switch(void 0===r.cmd||null===r.cmd?"":r.cmd){case"start":var a=r.url;"http"===r.type?fetch(a,{signal:t}).then((function(e){return function e(t){return t.read().then((function(i){if(!i.done){var n=i.value;return postMessage({cmd:"fetch-chunk",data:n,msg:"fetch-chunk"}),e(t)}postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}))}(e.body.getReader())})).catch((function(e){})):"websocket"===r.type&&function(e){(i=new WebSocket(e)).binaryType="arraybuffer",i.onopen=function(e){i.send("Hello WebSockets!")},i.onmessage=function(e){if(e.data instanceof ArrayBuffer){var t=e.data;t.byteLength>0&&postMessage({cmd:"fetch-chunk",data:new Uint8Array(t),msg:"fetch-chunk"})}},i.onclose=function(e){postMessage({cmd:"fetch-fin",data:null,msg:"fetch-fin"})}}(a),postMessage({cmd:"default",data:"WORKER STARTED",msg:"default"});break;case"stop":"http"===r.type?e.abort():"websocket"===r.type&&i&&i.close(),close()}}}))),e.workerFetch.onMsgFetchFinished=!1,e.workerFetch.onmessage=function(i){var n=i.data;switch(void 0===n.cmd||null===n.cmd?"":n.cmd){case"fetch-chunk":var r=n.data;e.workerParse.postMessage({cmd:"append-chunk",data:r,msg:"append-chunk"});break;case"fetch-fin":e.workerFetch.onMsgFetchFinished=!0,t()}},e.workerParse=new Worker(f.GetScriptPath((function(){var e,t=((e=new Object).frameList=[],e.stream=null,e.frameListEmpty=function(){return e.frameList.length<=0},e.streamEmpty=function(){return null===e.stream||e.stream.length<=0},e.checkEmpty=function(){return!0===e.streamEmpty()&&!0===e.frameListEmpty()||(e.stream,e.frameList,!1)},e.pushFrameRet=function(t){return!(!t||null==t||null==t||(e.frameList&&null!=e.frameList&&null!=e.frameList||(e.frameList=[]),e.frameList.push(t),0))},e.nextFrame=function(){return!e.frameList&&null==e.frameList||null==e.frameList&&e.frameList.length<1?null:e.frameList.shift()},e.clearFrameRet=function(){e.frameList=null},e.setStreamRet=function(t){e.stream=t},e.getStreamRet=function(){return e.stream},e.appendStreamRet=function(t){if(!t||void 0===t||null==t)return!1;if(!e.stream||void 0===e.stream||null==e.stream)return e.stream=t,!0;var i=e.stream.length,n=t.length,r=new Uint8Array(i+n);r.set(e.stream,0),r.set(t,i),e.stream=r;for(var a=0;a<9999;a++){var s=e.nextNalu();if(!1===s||null==s)break;e.frameList.push(s)}return!0},e.subBuf=function(t,i){var n=new Uint8Array(e.stream.subarray(t,i+1));return e.stream=new Uint8Array(e.stream.subarray(i+1)),n},e.lastNalu=function(){var t=e.subBuf(0,e.stream.length);e.frameList.push(t)},e.nextNalu=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return!1;if(0==e.stream[n]&&0==e.stream[n+1]&&1==e.stream[n+2]||0==e.stream[n]&&0==e.stream[n+1]&&0==e.stream[n+2]&&1==e.stream[n+3]){var r=n;if(n+=3,-1==i)i=r;else{if(t<=1)return e.subBuf(i,r-1);t-=1}}}return!1},e.nextNalu2=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;if(null==e.stream||e.stream.length<=4)return!1;for(var i=-1,n=0;n=e.stream.length)return-1!=i&&e.subBuf(i,e.stream.length-1);var r="0 0 1"==e.stream.slice(n,n+3).join(" "),a="0 0 0 1"==e.stream.slice(n,n+4).join(" ");if(r||a){var s=n;if(n+=3,-1==i)i=s;else{if(t<=1)return e.subBuf(i,s-1);t-=1}}}return!1},e);onmessage=function(e){var i=e.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"append-chunk":var n=i.data;t.appendStreamRet(n);var r=t.nextFrame();postMessage({cmd:"return-nalu",data:r,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"get-nalu":var a=t.nextFrame();postMessage({cmd:"return-nalu",data:a,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"last-nalu":var s=t.lastNalu();postMessage({cmd:"return-nalu",data:s,msg:"return-nalu",parseEmpty:t.checkEmpty(),streamEmpty:t.streamEmpty(),frameListEmpty:t.frameListEmpty()});break;case"stop":postMessage("parse - WORKER STOPPED: "+i),close()}}}))),e.workerParse.stopNaluInterval=!1,e.workerParse.parseEmpty=!1,e.workerParse.streamEmpty=!1,e.workerParse.frameListEmpty=!1,e.workerParse.onmessage=function(t){var i=t.data;switch(void 0===i.cmd||null===i.cmd?"":i.cmd){case"return-nalu":var n=i.data,r=i.parseEmpty,a=i.streamEmpty,s=i.frameListEmpty;e.workerParse.parseEmpty=r,e.workerParse.streamEmpty=a,e.workerParse.frameListEmpty=s,!1===n||null==n?!0===e.workerFetch.onMsgFetchFinished&&!0===r&&(e.workerParse.stopNaluInterval=!0):(e.append265NaluFrame(n),e.workerParse.postMessage({cmd:"get-nalu",data:null,msg:"get-nalu"}))}},this.workerFetch.postMessage({cmd:"start",url:this.videoURL,type:this.mediaExtProtocol,msg:"start"}),function t(){setTimeout((function(){e.configFormat.extInfo.readyShow&&(e.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL?(e.player.playFrameYUV(!0,!0),e.configFormat.extInfo.readyShow=!1,e.onReadyShowDone&&e.onReadyShowDone()):t())}),1e3)}()}},{key:"append265NaluFrame",value:function(e){var t={data:e,pts:this.rawModePts};this.player.appendHevcFrame(t),this.configFormat.extInfo.readyShow&&this.player.cacheYuvBuf.getState()!=CACHE_APPEND_STATUS_CODE.NULL&&(this.player.playFrameYUV(!0,!0),this.configFormat.extInfo.readyShow=!1,this.onReadyShowDone&&this.onReadyShowDone()),this.rawModePts+=1/this.configFormat.extInfo.rawFps}}])&&r(i.prototype,S),E&&r(i,E),e}();i.H265webjs=S,t.new265webjs=function(e,t){return new S(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./consts":52,"./decoder/av-common":56,"./decoder/c-http-g711-core":57,"./decoder/c-httplive-core":58,"./decoder/c-native-core":59,"./decoder/c-wslive-core":60,"./decoder/cache":61,"./decoder/player-core":65,"./demuxer/m3u8":68,"./demuxer/mp4":70,"./demuxer/mpegts/mpeg.js":73,"./demuxer/ts":74,"./native/mp4-player":76,"./native/nv-flvjs-core":77,"./native/nv-videojs-core":78,"./render-engine/webgl-420p":79,"./utils/static-mem":80,"./utils/ui/ui":81}],76:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=t.duration-.04)return t.onCacheProcess&&t.onCacheProcess(t.duration),void window.clearInterval(t.bufferInterval);t.onCacheProcess&&t.onCacheProcess(e)}),200)},this.videoTag.src=e,this.videoTag.style.width="100%",this.videoTag.style.height="100%",i.appendChild(this.videoTag)}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.configFormat.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.configFormat.height}}},{key:"play",value:function(){this.videoTag.play()}},{key:"seek",value:function(e){this.videoTag.currentTime=e}},{key:"pause",value:function(){this.videoTag.pause()}},{key:"setVoice",value:function(e){this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"release",value:function(){this.videoTag&&this.videoTag.remove(),this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}},{key:"nativeNextFrame",value:function(){void 0!==this.videoTag&&null!==this.videoTag&&(this.videoTag.currentTime+=1/this.configFormat.fps)}}])&&n(t.prototype,i),a&&n(t,a),e}();i.Mp4Player=a},{"../consts":52}],77:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i0&&s.GetMsTime()-t.lastDecodedFrameTime>1e4)return window.clearInterval(t.checkPicBlockInterval),t.checkPicBlockInterval=null,void t._reBuildFlvjs(e)}),1e3)}},{key:"_checkLoadState",value:function(e){var t=this;this.checkStartIntervalCount=0,this.checkStartInterval=window.setInterval((function(){return t.lastDecodedFrame,t.isInitDecodeFrames,t.checkStartIntervalCount,!1!==t.isInitDecodeFrames?(t.checkStartIntervalCount=0,window.clearInterval(t.checkStartInterval),void(t.checkStartInterval=null)):(t.checkStartIntervalCount+=1,t.checkStartIntervalCount>20?(window.clearInterval(t.checkStartInterval),t.checkStartIntervalCount=0,t.checkStartInterval=null,void(!1===t.isInitDecodeFrames&&t._reBuildFlvjs(e))):void 0)}),500)}},{key:"makeIt",value:function(e){var t=this;if(a.isSupported()){var i=document.querySelector("#"+this.configFormat.playerId);this.videoTag=document.createElement("video"),this.videoTag.id=this.myPlayerID,this.videoTag.style.width=this.configFormat.width+"px",this.videoTag.style.height=this.configFormat.height+"px",i.appendChild(this.videoTag),!0===this.configFormat.autoPlay&&(this.videoTag.muted="muted",this.videoTag.autoplay="autoplay",window.onclick=document.body.onclick=function(e){t.videoTag.muted=!1,t.isPlayingState(),window.onclick=document.body.onclick=null}),this.videoTag.onplay=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)},this.videoTag.onpause=function(){var e=t.isPlayingState();t.onPlayState&&t.onPlayState(e)};var n={hasVideo:!0,hasAudio:!(!0===this.configFormat.audioNone),type:"flv",url:e,isLive:this.configFormat.duration<=0,withCredentials:!1};this.myPlayer=a.createPlayer(n),this.myPlayer.attachMediaElement(this.videoTag),this.myPlayer.on(a.Events.MEDIA_INFO,(function(e){t.videoTag.videoWidth,!1===t.isInitDecodeFrames&&(t.isInitDecodeFrames=!0,t.width=Math.max(t.videoTag.videoWidth,e.width),t.height=Math.max(t.videoTag.videoHeight,e.height),t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&t.duration>0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.STATISTICS_INFO,(function(e){t.videoTag.videoWidth,t.videoTag.videoHeight,t.videoTag.duration,!1===t.isInitDecodeFrames&&t.videoTag.videoWidth>0&&t.videoTag.videoHeight>0&&(t.isInitDecodeFrames=!0,t.width=t.videoTag.videoWidth,t.height=t.videoTag.videoHeight,t.duration=t.videoTag.duration,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()})),t.lastDecodedFrame=e.decodedFrames,t.lastDecodedFrameTime=s.GetMsTime()})),this.myPlayer.on(a.Events.SCRIPTDATA_ARRIVED,(function(e){})),this.myPlayer.on(a.Events.METADATA_ARRIVED,(function(e){!1===t.isInitDecodeFrames&&e.width&&e.width>0&&(t.isInitDecodeFrames=!0,t.duration=e.duration,t.width=e.width,t.height=e.height,t.duration,t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState(),t.isPlayingState(),t.videoTag.ontimeupdate=function(){t.onPlayingTime&&t.onPlayingTime(t.videoTag.currentTime)},t.duration!==1/0&&(t.videoTag.onended=function(){t.onPlayingFinish&&t.onPlayingFinish()}))})),this.myPlayer.on(a.Events.ERROR,(function(i,n,r){t.myPlayer&&t._reBuildFlvjs(e)})),this.myPlayer.load(),this._checkLoadState(e),this._checkPicBlock(e)}else console.error("FLV is AVC/H.264, But your brower do not support mse!")}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return{width:this.videoTag.videoWidth>0?this.videoTag.videoWidth:this.width,height:this.videoTag.videoHeight>0?this.videoTag.videoHeight:this.height}}},{key:"play",value:function(){this.myPlayer.play()}},{key:"seek",value:function(e){this.myPlayer.currentTime=e}},{key:"pause",value:function(){this.myPlayer.pause()}},{key:"setVoice",value:function(e){this.myPlayer.volume=e}},{key:"isPlayingState",value:function(){return!this.videoTag.paused}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"_releaseFlvjs",value:function(){this.myPlayer.pause(),this.myPlayer.unload(),this.myPlayer.detachMediaElement(),this.myPlayer.destroy(),this.myPlayer=null,this.videoTag.remove(),this.videoTag=null,null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),this.isInitDecodeFrames=!1,this.lastDecodedFrame=0,this.lastDecodedFrameTime=-1}},{key:"release",value:function(){null!==this.checkStartInterval&&(this.checkStartIntervalCount=0,window.clearInterval(this.checkStartInterval),this.checkStartInterval=null),null!==this.checkPicBlockInterval&&(window.clearInterval(this.checkPicBlockInterval),this.checkPicBlockInterval=null),null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),this._releaseFlvjs(),this.myPlayerID=null,this.videoContaner=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onReadyShowDone=null,this.onPlayState=null,window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),o&&n(t,o),e}();i.NvFlvjsCore=o},{"../consts":52,"../decoder/av-common":56,"../version":82,"flv.js":33}],78:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i=0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),t.myPlayer.on("ended",(function(){t.pause(),t.onPlayingFinish&&t.onPlayingFinish()})),t.myPlayer.on("seeking",(function(){})),t.myPlayer.on("seeked",(function(){t.onSeekFinish&&t.onSeekFinish()})),t.onMakeItReady&&t.onMakeItReady(),t.configFormat.probeDurationMS<0&&(t.onLoadFinish&&t.onLoadFinish(),t.onReadyShowDone&&t.onReadyShowDone(),t._loopBufferState())})),this.myPlayer.options.controls=!1,this.myPlayer.options.autoplay=!1,this._hiddenUnusedPlugins()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!(e<=0||null==this.videoTag||null===this.videoTag||(this.videoTag.playbackRate=e,0))}},{key:"getPlaybackRate",value:function(){return null==this.videoTag||null===this.videoTag?0:this.videoTag.playbackRate}},{key:"getSize",value:function(){return this.myPlayer.videoWidth()<=0?{width:this.videoTag.videoWidth,height:this.videoTag.videoHeight}:{width:this.myPlayer.videoWidth(),height:this.myPlayer.videoHeight()}}},{key:"play",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.play():this.videoTag.play()}},{key:"seek",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.currentTime=e:this.videoTag.currentTime=e}},{key:"pause",value:function(){void 0===this.videoTag||null===this.videoTag?this.myPlayer.pause():this.videoTag.pause()}},{key:"setVoice",value:function(e){void 0===this.videoTag||null===this.videoTag?this.myPlayer.volume=e:this.videoTag.volume=e}},{key:"isPlayingState",value:function(){return!this.myPlayer.paused()}},{key:"_loopBufferState",value:function(){var e=this;e.duration<=0&&(e.duration=e.videoTag.duration),null!==e.bufferInterval&&(window.clearInterval(e.bufferInterval),e.bufferInterval=null),e.bufferInterval=window.setInterval((function(){var t=e.videoTag.buffered.end(0);if(t>=e.duration-.04)return e.onCacheProcess&&e.onCacheProcess(e.duration),void window.clearInterval(e.bufferInterval);e.onCacheProcess&&e.onCacheProcess(t)}),200)}},{key:"release",value:function(){this.myPlayer.dispose(),this.myPlayerID=null,this.myPlayer=null,this.videoContaner=null,this.videoTag=null,this.onLoadFinish=null,this.onPlayingTime=null,this.onPlayingFinish=null,this.onSeekFinish=null,this.onReadyShowDone=null,this.onPlayState=null,null!==this.bufferInterval&&(window.clearInterval(this.bufferInterval),this.bufferInterval=null),window.onclick=document.body.onclick=null}}])&&n(t.prototype,i),s&&n(t,s),e}();i.NvVideojsCore=s},{"../consts":52,"../version":82,"video.js":47}],79:[function(e,t,i){"use strict";e("../decoder/av-common");function n(e){this.gl=e,this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}n.prototype.bind=function(e,t,i){var n=this.gl;n.activeTexture([n.TEXTURE0,n.TEXTURE1,n.TEXTURE2][e]),n.bindTexture(n.TEXTURE_2D,this.texture),n.uniform1i(n.getUniformLocation(t,i),e)},n.prototype.fill=function(e,t,i){var n=this.gl;n.bindTexture(n.TEXTURE_2D,this.texture),n.texImage2D(n.TEXTURE_2D,0,n.LUMINANCE,e,t,0,n.LUMINANCE,n.UNSIGNED_BYTE,i)},t.exports={renderFrame:function(e,t,i,n,r,a){e.viewport(0,0,e.canvas.width,e.canvas.height),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.y.fill(r,a,t),e.u.fill(r>>1,a>>1,i),e.v.fill(r>>1,a>>1,n),e.drawArrays(e.TRIANGLE_STRIP,0,4)},setupCanvas:function(e,t){var i=e.getContext("webgl")||e.getContext("experimental-webgl");if(!i)return i;var r=i.createProgram(),a=["attribute highp vec4 aVertexPosition;","attribute vec2 aTextureCoord;","varying highp vec2 vTextureCoord;","void main(void) {"," gl_Position = aVertexPosition;"," vTextureCoord = aTextureCoord;","}"].join("\n"),s=i.createShader(i.VERTEX_SHADER);i.shaderSource(s,a),i.compileShader(s);var o=["precision highp float;","varying lowp vec2 vTextureCoord;","uniform sampler2D YTexture;","uniform sampler2D UTexture;","uniform sampler2D VTexture;","const mat4 YUV2RGB = mat4","("," 1.1643828125, 0, 1.59602734375, -.87078515625,"," 1.1643828125, -.39176171875, -.81296875, .52959375,"," 1.1643828125, 2.017234375, 0, -1.081390625,"," 0, 0, 0, 1",");","void main(void) {"," gl_FragColor = vec4( texture2D(YTexture, vTextureCoord).x, texture2D(UTexture, vTextureCoord).x, texture2D(VTexture, vTextureCoord).x, 1) * YUV2RGB;","}"].join("\n"),u=i.createShader(i.FRAGMENT_SHADER);i.shaderSource(u,o),i.compileShader(u),i.attachShader(r,s),i.attachShader(r,u),i.linkProgram(r),i.useProgram(r),i.getProgramParameter(r,i.LINK_STATUS);var l=i.getAttribLocation(r,"aVertexPosition");i.enableVertexAttribArray(l);var h=i.getAttribLocation(r,"aTextureCoord");i.enableVertexAttribArray(h);var d=i.createBuffer();i.bindBuffer(i.ARRAY_BUFFER,d),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0]),i.STATIC_DRAW),i.vertexAttribPointer(l,3,i.FLOAT,!1,0,0);var c=i.createBuffer();return i.bindBuffer(i.ARRAY_BUFFER,c),i.bufferData(i.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),i.STATIC_DRAW),i.vertexAttribPointer(h,2,i.FLOAT,!1,0,0),i.y=new n(i),i.u=new n(i),i.v=new n(i),i.y.bind(0,r,"YTexture"),i.u.bind(1,r,"UTexture"),i.v.bind(2,r,"VTexture"),i},releaseContext:function(e){e.deleteTexture(e.y.texture),e.deleteTexture(e.u.texture),e.deleteTexture(e.v.texture)}}},{"../decoder/av-common":56}],80:[function(e,t,i){(function(e){"use strict";e.STATIC_MEM_wasmDecoderState=-1,e.STATICE_MEM_playerCount=-1,e.STATICE_MEM_playerIndexPtr=0}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],81:[function(e,t,i){"use strict";function n(e,t){for(var i=0;i New265WebJs + +declare global { + interface Window { + new265webjs: new265webJsFn + } +} + +export default class H265webjsModule { + static createPlayer: (url: string, config: Web265JsConfig) => New265WebJs + static clear(): void +} diff --git a/vite_vue_ts/public/dist/index.js b/vite_vue_ts/public/dist/index.js index edd3c18a..73d26c1f 100644 --- a/vite_vue_ts/public/dist/index.js +++ b/vite_vue_ts/public/dist/index.js @@ -1,6 +1,6 @@ -/********************************************************* +/********************************************************* * LICENSE: LICENSE-Free_CN.MD - * + * * Author: Numberwolf - ChangYanlong * QQ: 531365872 * QQ Group:925466059 @@ -8,7 +8,7 @@ * Discord: numberwolf#8694 * E-Mail: porschegt23@foxmail.com * Github: https://github.com/numberwolf/h265web.js - * + * * 作者: 小老虎(Numberwolf)(常炎隆) * QQ: 531365872 * QQ群: 531365872 @@ -17,17 +17,16 @@ * 邮箱: porschegt23@foxmail.com * 博客: https://www.jianshu.com/u/9c09c1e00fd1 * Github: https://github.com/numberwolf/h265web.js - * + * **********************************************************/ -require('./h265webjs-v20220422') - +require('./h265webjs-v20220824'); export default class h265webjs { - static createPlayer(videoURL, config) { - return window.new265webjs(videoURL, config) - } + static createPlayer(videoURL, config) { + return window.new265webjs(videoURL, config); + } - static clear() { - global.STATICE_MEM_playerCount = -1 - global.STATICE_MEM_playerIndexPtr = 0 - } + static clear() { + global.STATICE_MEM_playerCount = -1; + global.STATICE_MEM_playerIndexPtr = 0; + } } diff --git a/vite_vue_ts/public/dist/missile-120func-v20220421.js b/vite_vue_ts/public/dist/missile-120func-v20220421.js deleted file mode 100644 index df18ad85..00000000 --- a/vite_vue_ts/public/dist/missile-120func-v20220421.js +++ /dev/null @@ -1,2 +0,0 @@ -var ENVIRONMENT_IS_PTHREAD = true; -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";var nodeFS;var nodePath;read_=function shell_read(filename,binary){var ret;if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)};setWindowTitle=function(title){document.title=title}}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments"))Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_")}});if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram"))Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram")}});if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit"))Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_")}});assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");if(!Object.getOwnPropertyDescriptor(Module,"read"))Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_")}});if(!Object.getOwnPropertyDescriptor(Module,"readAsync"))Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync")}});if(!Object.getOwnPropertyDescriptor(Module,"readBinary"))Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary")}});stackSave=stackRestore=stackAlloc=function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")};function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly")}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":function(x,y){return x%y},"debugger":function(){debugger}};var jsCallStartIndex=1;var functionPointers=new Array(100);function addFunction(func,sig){assert(typeof func!=="undefined");var base=0;for(var i=base;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":7424,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;if(u>=2097152)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).");outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var PAGE_SIZE=16384;var WASM_PAGE_SIZE=65536;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=1134400,STACK_MAX=6377280,DYNAMIC_BASE=6377280,DYNAMICTOP_PTR=1134176;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||1073741824;if(!Object.getOwnPropertyDescriptor(Module,"TOTAL_MEMORY"))Object.defineProperty(Module,"TOTAL_MEMORY",{configurable:true,get:function(){abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}});assert(INITIAL_TOTAL_MEMORY>=TOTAL_STACK,"TOTAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE,"maximum":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;assert(INITIAL_TOTAL_MEMORY%WASM_PAGE_SIZE===0);updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){var cookie1=HEAPU32[(STACK_MAX>>2)-1];var cookie2=HEAPU32[(STACK_MAX>>2)-2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+cookie2.toString(16)+" "+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function abortFnPtrError(ptr,sig){var possibleSig="";for(var x in debug_tables){var tbl=debug_tables[x];if(tbl[ptr]){possibleSig+='as sig "'+x+'" pointing to function '+tbl[ptr]+", "}}abort("Invalid function pointer "+ptr+" called with signature '"+sig+"'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: "+possibleSig)}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;throw output}if(!ENVIRONMENT_IS_PTHREAD)addOnPreRun(function(){if(typeof SharedArrayBuffer!=="undefined"){addRunDependency("pthreads");PThread.allocateUnusedWorkers(5,function(){removeRunDependency("pthreads")})}});var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="missile-120func-v20220421.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_unstable":asmLibraryArg,"global":{"NaN":NaN,Infinity:Infinity},"global.Math":Math,"asm2wasm":asm2wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiatedSource(output){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}Module["asm"]=createWasm;var tempDouble;var tempI64;var ASM_CONSTS=[function(){if(typeof window!="undefined"){window.dispatchEvent(new CustomEvent("wasmLoaded"))}else{global.onWASMLoaded&&global.onWASMLoaded()}}];function _emscripten_asm_const_i(code){return ASM_CONSTS[code]()}__ATINIT__.push({func:function(){___emscripten_environ_constructor()}});var tempDoublePtr=1134384;assert(tempDoublePtr%8==0);function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b__Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]="web_user";ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]=(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";ENV["_"]=thisProgram;poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___lock(){}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else err("failed to set errno from JS");return value}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=function(e){done(this.error);e.preventDefault()};transaction.oncomplete=function(e){if(!errored){callback(null)}};create.sort().forEach(function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};var NODEFS={isWindows:false,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={1024:flags["O_APPEND"],64:flags["O_CREAT"],128:flags["O_EXCL"],0:flags["O_RDONLY"],2:flags["O_RDWR"],4096:flags["O_SYNC"],512:flags["O_TRUNC"],1:flags["O_WRONLY"]}},bufferFrom:function(arrayBuffer){return Buffer["alloc"]?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)},convertNodeCode:function(e){var code=e.code;assert(code in ERRNO_CODES);return ERRNO_CODES[code]},mount:function(mount){assert(ENVIRONMENT_HAS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)},createNode:function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(28)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode:function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return stat.mode},realPath:function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)},flagsForNode:function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(28)}},node_ops:{getattr:function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr:function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},lookup:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod:function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return node},rename:function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},unlink:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},rmdir:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readdir:function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},symlink:function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readlink:function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}},stream_ops:{open:function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},close:function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},read:function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},write:function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size},write:function(stream,buffer,offset,length,position){throw new FS.ErrnoError(29)},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(path,opts){path=PATH_FS.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 2}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 2}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(fd){if(fd===undefined)fd=SYSCALLS.get();var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:___setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_close(){return _fd_close.apply(null,arguments)}function _fd_fdstat_get(fd,pbuf){try{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4;HEAP8[pbuf>>0]=type;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_fdstat_get(){return _fd_fdstat_get.apply(null,arguments)}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_seek(){return _fd_seek.apply(null,arguments)}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_write(){return _fd_write.apply(null,arguments)}function __emscripten_fetch_free(id){delete Fetch.xhrs[id-1]}function _abort(){abort()}function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return 0||ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||typeof performance==="object"&&performance&&typeof performance["now"]==="function"}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(28);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function _emscripten_get_heap_size(){return HEAP8.length}function _emscripten_is_main_browser_thread(){return!ENVIRONMENT_IS_WORKER}function abortOnCannotGrowMemory(requestedSize){abort("Cannot enlarge memory arrays to size "+requestedSize+" bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+HEAP8.length+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function _emscripten_resize_heap(requestedSize){abortOnCannotGrowMemory(requestedSize)}var Fetch={xhrs:[],setu64:function(addr,val){HEAPU32[addr>>2]=val;HEAPU32[addr+4>>2]=val/4294967296|0},openDatabase:function(dbname,dbversion,onsuccess,onerror){try{var openRequest=indexedDB.open(dbname,dbversion)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function(event){var db=event.target.result;if(db.objectStoreNames.contains("FILES")){db.deleteObjectStore("FILES")}db.createObjectStore("FILES")};openRequest.onsuccess=function(event){onsuccess(event.target.result)};openRequest.onerror=function(error){onerror(error)}},staticInit:function(){var isMainThread=typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined";var onsuccess=function(db){Fetch.dbInstance=db;if(isMainThread){removeRunDependency("library_fetch_init")}};var onerror=function(){Fetch.dbInstance=false;if(isMainThread){removeRunDependency("library_fetch_init")}};Fetch.openDatabase("emscripten_filesystem",1,onsuccess,onerror);if(typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined"||!ENVIRONMENT_IS_FETCH_WORKER)addRunDependency("library_fetch_init")}};function __emscripten_fetch_xhr(fetch,onsuccess,onerror,onprogress,onreadystatechange){var url=HEAPU32[fetch+8>>2];if(!url){onerror(fetch,0,"no url specified!");return}var url_=UTF8ToString(url);var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);if(!requestMethod)requestMethod="GET";var userData=HEAPU32[fetch_attr+32>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var timeoutMsecs=HEAPU32[fetch_attr+56>>2];var withCredentials=!!HEAPU32[fetch_attr+60>>2];var destinationPath=HEAPU32[fetch_attr+64>>2];var userName=HEAPU32[fetch_attr+68>>2];var password=HEAPU32[fetch_attr+72>>2];var requestHeaders=HEAPU32[fetch_attr+76>>2];var overriddenMimeType=HEAPU32[fetch_attr+80>>2];var dataPtr=HEAPU32[fetch_attr+84>>2];var dataLength=HEAPU32[fetch_attr+88>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var fetchAttrSynchronous=!!(fetchAttributes&64);var fetchAttrWaitable=!!(fetchAttributes&128);var userNameStr=userName?UTF8ToString(userName):undefined;var passwordStr=password?UTF8ToString(password):undefined;var overriddenMimeTypeStr=overriddenMimeType?UTF8ToString(overriddenMimeType):undefined;var xhr=new XMLHttpRequest;xhr.withCredentials=withCredentials;xhr.open(requestMethod,url_,!fetchAttrSynchronous,userNameStr,passwordStr);if(!fetchAttrSynchronous)xhr.timeout=timeoutMsecs;xhr.url_=url_;assert(!fetchAttrStreamData,"streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()");xhr.responseType="arraybuffer";if(overriddenMimeType){xhr.overrideMimeType(overriddenMimeTypeStr)}if(requestHeaders){for(;;){var key=HEAPU32[requestHeaders>>2];if(!key)break;var value=HEAPU32[requestHeaders+4>>2];if(!value)break;requestHeaders+=8;var keyStr=UTF8ToString(key);var valueStr=UTF8ToString(value);xhr.setRequestHeader(keyStr,valueStr)}}Fetch.xhrs.push(xhr);var id=Fetch.xhrs.length;HEAPU32[fetch+0>>2]=id;var data=dataPtr&&dataLength?HEAPU8.slice(dataPtr,dataPtr+dataLength):null;xhr.onload=function(e){var len=xhr.response?xhr.response.byteLength:0;var ptr=0;var ptrLen=0;if(fetchAttrLoadToMemory&&!fetchAttrStreamData){ptrLen=len;ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,0);if(len){Fetch.setu64(fetch+32,len)}HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState===4&&xhr.status===0){if(len>0)xhr.status=200;else xhr.status=404}HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(xhr.status>=200&&xhr.status<300){if(onsuccess)onsuccess(fetch,xhr,e)}else{if(onerror)onerror(fetch,xhr,e)}};xhr.onerror=function(e){var status=xhr.status;if(xhr.readyState===4&&status===0)status=404;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=xhr.readyState;HEAPU16[fetch+42>>1]=status;if(onerror)onerror(fetch,xhr,e)};xhr.ontimeout=function(e){if(onerror)onerror(fetch,xhr,e)};xhr.onprogress=function(e){var ptrLen=fetchAttrLoadToMemory&&fetchAttrStreamData&&xhr.response?xhr.response.byteLength:0;var ptr=0;if(fetchAttrLoadToMemory&&fetchAttrStreamData){ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,e.loaded-ptrLen);Fetch.setu64(fetch+32,e.total);HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=3&&xhr.status===0&&e.loaded>0)xhr.status=200;HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(onprogress)onprogress(fetch,xhr,e)};xhr.onreadystatechange=function(e){HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=2){HEAPU16[fetch+42>>1]=xhr.status}if(onreadystatechange)onreadystatechange(fetch,xhr,e)};try{xhr.send(data)}catch(e){if(onerror)onerror(fetch,xhr,e)}}function __emscripten_fetch_cache_data(db,fetch,data,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var destinationPath=HEAPU32[fetch_attr+64>>2];if(!destinationPath)destinationPath=HEAPU32[fetch+8>>2];var destinationPathStr=UTF8ToString(destinationPath);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var putRequest=packages.put(data,destinationPathStr);putRequest.onsuccess=function(event){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,destinationPathStr)};putRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=413;stringToUTF8("Payload Too Large",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_load_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readonly");var packages=transaction.objectStore("FILES");var getRequest=packages.get(pathStr);getRequest.onsuccess=function(event){if(event.target.result){var value=event.target.result;var len=value.byteLength||value.length;var ptr=_malloc(len);HEAPU8.set(new Uint8Array(value),ptr);HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,len);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,len);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)}else{HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,"no data")}};getRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_delete_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var request=packages.delete(pathStr);request.onsuccess=function(event){var value=event.target.result;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)};request.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function _emscripten_start_fetch(fetch,successcb,errorcb,progresscb,readystatechangecb){if(typeof noExitRuntime!=="undefined")noExitRuntime=true;var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);var onsuccess=HEAPU32[fetch_attr+36>>2];var onerror=HEAPU32[fetch_attr+40>>2];var onprogress=HEAPU32[fetch_attr+44>>2];var onreadystatechange=HEAPU32[fetch_attr+48>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrNoDownload=!!(fetchAttributes&32);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var reportSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var reportProgress=function(fetch,xhr,e){if(onprogress)dynCall_vi(onprogress,fetch);else if(progresscb)progresscb(fetch)};var reportError=function(fetch,xhr,e){if(onerror)dynCall_vi(onerror,fetch);else if(errorcb)errorcb(fetch)};var reportReadyStateChange=function(fetch,xhr,e){if(onreadystatechange)dynCall_vi(onreadystatechange,fetch);else if(readystatechangecb)readystatechangecb(fetch)};var performUncachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,reportSuccess,reportError,reportProgress,reportReadyStateChange)};var cacheResultAndReportSuccess=function(fetch,xhr,e){var storeSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var storeError=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,xhr.response,storeSuccess,storeError)};var performCachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,cacheResultAndReportSuccess,reportError,reportProgress,reportReadyStateChange)};if(requestMethod==="EM_IDB_STORE"){var ptr=HEAPU32[fetch_attr+84>>2];__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,HEAPU8.slice(ptr,ptr+HEAPU32[fetch_attr+88>>2]),reportSuccess,reportError)}else if(requestMethod==="EM_IDB_DELETE"){__emscripten_fetch_delete_cached_data(Fetch.dbInstance,fetch,reportSuccess,reportError)}else if(!fetchAttrReplace){__emscripten_fetch_load_cached_data(Fetch.dbInstance,fetch,reportSuccess,fetchAttrNoDownload?reportError:fetchAttrPersistFile?performCachedXhr:performUncachedXhr)}else if(!fetchAttrNoDownload){__emscripten_fetch_xhr(fetch,fetchAttrPersistFile?cacheResultAndReportSuccess:reportSuccess,reportError,reportProgress,reportReadyStateChange)}else{return 0}return fetch}var _fabs=Math_abs;function _getenv(name){if(name===0)return 0;name=UTF8ToString(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=(stringToUTF8("GMT",1134272,4),1134272);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(a0){return _llvm_exp2_f32(a0)}function _llvm_log2_f32(x){return Math.log(x)/Math.LN2}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);stackRestore(ret)}function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(stackSave());return self.LLVM_SAVEDSTACKS.length-1}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _usleep(useconds){var msec=useconds/1e3;if((ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]){var start=self["performance"]["now"]();while(self["performance"]["now"]()-start>2];var nanoseconds=HEAP32[rqtp+4>>2];if(nanoseconds<0||nanoseconds>999999999||seconds<0){___setErrNo(28);return-1}if(rmtp!==0){HEAP32[rmtp>>2]=0;HEAP32[rmtp+4>>2]=0}return _usleep(seconds*1e6+nanoseconds/1e3)}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_create(){return 6}function _pthread_join(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-65536;maxHeapSize=HEAPU8.length;return maxHeapSize/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(28);return-1}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}FS.staticInit();if(ENVIRONMENT_HAS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof performance==="object"&&performance&&typeof performance["now"]==="function"){_emscripten_get_now=function(){return performance["now"]()}}else{_emscripten_get_now=Date.now}Fetch.staticInit();function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var debug_table_dd=[0,"jsCall_dd_0","jsCall_dd_1","jsCall_dd_2","jsCall_dd_3","jsCall_dd_4","jsCall_dd_5","jsCall_dd_6","jsCall_dd_7","jsCall_dd_8","jsCall_dd_9","jsCall_dd_10","jsCall_dd_11","jsCall_dd_12","jsCall_dd_13","jsCall_dd_14","jsCall_dd_15","jsCall_dd_16","jsCall_dd_17","jsCall_dd_18","jsCall_dd_19","jsCall_dd_20","jsCall_dd_21","jsCall_dd_22","jsCall_dd_23","jsCall_dd_24","jsCall_dd_25","jsCall_dd_26","jsCall_dd_27","jsCall_dd_28","jsCall_dd_29","jsCall_dd_30","jsCall_dd_31","jsCall_dd_32","jsCall_dd_33","jsCall_dd_34","jsCall_dd_35","jsCall_dd_36","jsCall_dd_37","jsCall_dd_38","jsCall_dd_39","jsCall_dd_40","jsCall_dd_41","jsCall_dd_42","jsCall_dd_43","jsCall_dd_44","jsCall_dd_45","jsCall_dd_46","jsCall_dd_47","jsCall_dd_48","jsCall_dd_49","jsCall_dd_50","jsCall_dd_51","jsCall_dd_52","jsCall_dd_53","jsCall_dd_54","jsCall_dd_55","jsCall_dd_56","jsCall_dd_57","jsCall_dd_58","jsCall_dd_59","jsCall_dd_60","jsCall_dd_61","jsCall_dd_62","jsCall_dd_63","jsCall_dd_64","jsCall_dd_65","jsCall_dd_66","jsCall_dd_67","jsCall_dd_68","jsCall_dd_69","jsCall_dd_70","jsCall_dd_71","jsCall_dd_72","jsCall_dd_73","jsCall_dd_74","jsCall_dd_75","jsCall_dd_76","jsCall_dd_77","jsCall_dd_78","jsCall_dd_79","jsCall_dd_80","jsCall_dd_81","jsCall_dd_82","jsCall_dd_83","jsCall_dd_84","jsCall_dd_85","jsCall_dd_86","jsCall_dd_87","jsCall_dd_88","jsCall_dd_89","jsCall_dd_90","jsCall_dd_91","jsCall_dd_92","jsCall_dd_93","jsCall_dd_94","jsCall_dd_95","jsCall_dd_96","jsCall_dd_97","jsCall_dd_98","jsCall_dd_99","_sinh","_cosh","_tanh","_sin","_cos","_tan","_atan","_asin","_acos","_exp","_log","_fabs","_etime",0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_did=[0,"jsCall_did_0","jsCall_did_1","jsCall_did_2","jsCall_did_3","jsCall_did_4","jsCall_did_5","jsCall_did_6","jsCall_did_7","jsCall_did_8","jsCall_did_9","jsCall_did_10","jsCall_did_11","jsCall_did_12","jsCall_did_13","jsCall_did_14","jsCall_did_15","jsCall_did_16","jsCall_did_17","jsCall_did_18","jsCall_did_19","jsCall_did_20","jsCall_did_21","jsCall_did_22","jsCall_did_23","jsCall_did_24","jsCall_did_25","jsCall_did_26","jsCall_did_27","jsCall_did_28","jsCall_did_29","jsCall_did_30","jsCall_did_31","jsCall_did_32","jsCall_did_33","jsCall_did_34","jsCall_did_35","jsCall_did_36","jsCall_did_37","jsCall_did_38","jsCall_did_39","jsCall_did_40","jsCall_did_41","jsCall_did_42","jsCall_did_43","jsCall_did_44","jsCall_did_45","jsCall_did_46","jsCall_did_47","jsCall_did_48","jsCall_did_49","jsCall_did_50","jsCall_did_51","jsCall_did_52","jsCall_did_53","jsCall_did_54","jsCall_did_55","jsCall_did_56","jsCall_did_57","jsCall_did_58","jsCall_did_59","jsCall_did_60","jsCall_did_61","jsCall_did_62","jsCall_did_63","jsCall_did_64","jsCall_did_65","jsCall_did_66","jsCall_did_67","jsCall_did_68","jsCall_did_69","jsCall_did_70","jsCall_did_71","jsCall_did_72","jsCall_did_73","jsCall_did_74","jsCall_did_75","jsCall_did_76","jsCall_did_77","jsCall_did_78","jsCall_did_79","jsCall_did_80","jsCall_did_81","jsCall_did_82","jsCall_did_83","jsCall_did_84","jsCall_did_85","jsCall_did_86","jsCall_did_87","jsCall_did_88","jsCall_did_89","jsCall_did_90","jsCall_did_91","jsCall_did_92","jsCall_did_93","jsCall_did_94","jsCall_did_95","jsCall_did_96","jsCall_did_97","jsCall_did_98","jsCall_did_99",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];var debug_table_didd=[0,"jsCall_didd_0","jsCall_didd_1","jsCall_didd_2","jsCall_didd_3","jsCall_didd_4","jsCall_didd_5","jsCall_didd_6","jsCall_didd_7","jsCall_didd_8","jsCall_didd_9","jsCall_didd_10","jsCall_didd_11","jsCall_didd_12","jsCall_didd_13","jsCall_didd_14","jsCall_didd_15","jsCall_didd_16","jsCall_didd_17","jsCall_didd_18","jsCall_didd_19","jsCall_didd_20","jsCall_didd_21","jsCall_didd_22","jsCall_didd_23","jsCall_didd_24","jsCall_didd_25","jsCall_didd_26","jsCall_didd_27","jsCall_didd_28","jsCall_didd_29","jsCall_didd_30","jsCall_didd_31","jsCall_didd_32","jsCall_didd_33","jsCall_didd_34","jsCall_didd_35","jsCall_didd_36","jsCall_didd_37","jsCall_didd_38","jsCall_didd_39","jsCall_didd_40","jsCall_didd_41","jsCall_didd_42","jsCall_didd_43","jsCall_didd_44","jsCall_didd_45","jsCall_didd_46","jsCall_didd_47","jsCall_didd_48","jsCall_didd_49","jsCall_didd_50","jsCall_didd_51","jsCall_didd_52","jsCall_didd_53","jsCall_didd_54","jsCall_didd_55","jsCall_didd_56","jsCall_didd_57","jsCall_didd_58","jsCall_didd_59","jsCall_didd_60","jsCall_didd_61","jsCall_didd_62","jsCall_didd_63","jsCall_didd_64","jsCall_didd_65","jsCall_didd_66","jsCall_didd_67","jsCall_didd_68","jsCall_didd_69","jsCall_didd_70","jsCall_didd_71","jsCall_didd_72","jsCall_didd_73","jsCall_didd_74","jsCall_didd_75","jsCall_didd_76","jsCall_didd_77","jsCall_didd_78","jsCall_didd_79","jsCall_didd_80","jsCall_didd_81","jsCall_didd_82","jsCall_didd_83","jsCall_didd_84","jsCall_didd_85","jsCall_didd_86","jsCall_didd_87","jsCall_didd_88","jsCall_didd_89","jsCall_didd_90","jsCall_didd_91","jsCall_didd_92","jsCall_didd_93","jsCall_didd_94","jsCall_didd_95","jsCall_didd_96","jsCall_didd_97","jsCall_didd_98","jsCall_didd_99",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];var debug_table_fii=[0,"jsCall_fii_0","jsCall_fii_1","jsCall_fii_2","jsCall_fii_3","jsCall_fii_4","jsCall_fii_5","jsCall_fii_6","jsCall_fii_7","jsCall_fii_8","jsCall_fii_9","jsCall_fii_10","jsCall_fii_11","jsCall_fii_12","jsCall_fii_13","jsCall_fii_14","jsCall_fii_15","jsCall_fii_16","jsCall_fii_17","jsCall_fii_18","jsCall_fii_19","jsCall_fii_20","jsCall_fii_21","jsCall_fii_22","jsCall_fii_23","jsCall_fii_24","jsCall_fii_25","jsCall_fii_26","jsCall_fii_27","jsCall_fii_28","jsCall_fii_29","jsCall_fii_30","jsCall_fii_31","jsCall_fii_32","jsCall_fii_33","jsCall_fii_34","jsCall_fii_35","jsCall_fii_36","jsCall_fii_37","jsCall_fii_38","jsCall_fii_39","jsCall_fii_40","jsCall_fii_41","jsCall_fii_42","jsCall_fii_43","jsCall_fii_44","jsCall_fii_45","jsCall_fii_46","jsCall_fii_47","jsCall_fii_48","jsCall_fii_49","jsCall_fii_50","jsCall_fii_51","jsCall_fii_52","jsCall_fii_53","jsCall_fii_54","jsCall_fii_55","jsCall_fii_56","jsCall_fii_57","jsCall_fii_58","jsCall_fii_59","jsCall_fii_60","jsCall_fii_61","jsCall_fii_62","jsCall_fii_63","jsCall_fii_64","jsCall_fii_65","jsCall_fii_66","jsCall_fii_67","jsCall_fii_68","jsCall_fii_69","jsCall_fii_70","jsCall_fii_71","jsCall_fii_72","jsCall_fii_73","jsCall_fii_74","jsCall_fii_75","jsCall_fii_76","jsCall_fii_77","jsCall_fii_78","jsCall_fii_79","jsCall_fii_80","jsCall_fii_81","jsCall_fii_82","jsCall_fii_83","jsCall_fii_84","jsCall_fii_85","jsCall_fii_86","jsCall_fii_87","jsCall_fii_88","jsCall_fii_89","jsCall_fii_90","jsCall_fii_91","jsCall_fii_92","jsCall_fii_93","jsCall_fii_94","jsCall_fii_95","jsCall_fii_96","jsCall_fii_97","jsCall_fii_98","jsCall_fii_99","_sbr_sum_square_c",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];var debug_table_fiii=[0,"jsCall_fiii_0","jsCall_fiii_1","jsCall_fiii_2","jsCall_fiii_3","jsCall_fiii_4","jsCall_fiii_5","jsCall_fiii_6","jsCall_fiii_7","jsCall_fiii_8","jsCall_fiii_9","jsCall_fiii_10","jsCall_fiii_11","jsCall_fiii_12","jsCall_fiii_13","jsCall_fiii_14","jsCall_fiii_15","jsCall_fiii_16","jsCall_fiii_17","jsCall_fiii_18","jsCall_fiii_19","jsCall_fiii_20","jsCall_fiii_21","jsCall_fiii_22","jsCall_fiii_23","jsCall_fiii_24","jsCall_fiii_25","jsCall_fiii_26","jsCall_fiii_27","jsCall_fiii_28","jsCall_fiii_29","jsCall_fiii_30","jsCall_fiii_31","jsCall_fiii_32","jsCall_fiii_33","jsCall_fiii_34","jsCall_fiii_35","jsCall_fiii_36","jsCall_fiii_37","jsCall_fiii_38","jsCall_fiii_39","jsCall_fiii_40","jsCall_fiii_41","jsCall_fiii_42","jsCall_fiii_43","jsCall_fiii_44","jsCall_fiii_45","jsCall_fiii_46","jsCall_fiii_47","jsCall_fiii_48","jsCall_fiii_49","jsCall_fiii_50","jsCall_fiii_51","jsCall_fiii_52","jsCall_fiii_53","jsCall_fiii_54","jsCall_fiii_55","jsCall_fiii_56","jsCall_fiii_57","jsCall_fiii_58","jsCall_fiii_59","jsCall_fiii_60","jsCall_fiii_61","jsCall_fiii_62","jsCall_fiii_63","jsCall_fiii_64","jsCall_fiii_65","jsCall_fiii_66","jsCall_fiii_67","jsCall_fiii_68","jsCall_fiii_69","jsCall_fiii_70","jsCall_fiii_71","jsCall_fiii_72","jsCall_fiii_73","jsCall_fiii_74","jsCall_fiii_75","jsCall_fiii_76","jsCall_fiii_77","jsCall_fiii_78","jsCall_fiii_79","jsCall_fiii_80","jsCall_fiii_81","jsCall_fiii_82","jsCall_fiii_83","jsCall_fiii_84","jsCall_fiii_85","jsCall_fiii_86","jsCall_fiii_87","jsCall_fiii_88","jsCall_fiii_89","jsCall_fiii_90","jsCall_fiii_91","jsCall_fiii_92","jsCall_fiii_93","jsCall_fiii_94","jsCall_fiii_95","jsCall_fiii_96","jsCall_fiii_97","jsCall_fiii_98","jsCall_fiii_99","_avpriv_scalarproduct_float_c",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];var debug_table_ii=[0,"jsCall_ii_0","jsCall_ii_1","jsCall_ii_2","jsCall_ii_3","jsCall_ii_4","jsCall_ii_5","jsCall_ii_6","jsCall_ii_7","jsCall_ii_8","jsCall_ii_9","jsCall_ii_10","jsCall_ii_11","jsCall_ii_12","jsCall_ii_13","jsCall_ii_14","jsCall_ii_15","jsCall_ii_16","jsCall_ii_17","jsCall_ii_18","jsCall_ii_19","jsCall_ii_20","jsCall_ii_21","jsCall_ii_22","jsCall_ii_23","jsCall_ii_24","jsCall_ii_25","jsCall_ii_26","jsCall_ii_27","jsCall_ii_28","jsCall_ii_29","jsCall_ii_30","jsCall_ii_31","jsCall_ii_32","jsCall_ii_33","jsCall_ii_34","jsCall_ii_35","jsCall_ii_36","jsCall_ii_37","jsCall_ii_38","jsCall_ii_39","jsCall_ii_40","jsCall_ii_41","jsCall_ii_42","jsCall_ii_43","jsCall_ii_44","jsCall_ii_45","jsCall_ii_46","jsCall_ii_47","jsCall_ii_48","jsCall_ii_49","jsCall_ii_50","jsCall_ii_51","jsCall_ii_52","jsCall_ii_53","jsCall_ii_54","jsCall_ii_55","jsCall_ii_56","jsCall_ii_57","jsCall_ii_58","jsCall_ii_59","jsCall_ii_60","jsCall_ii_61","jsCall_ii_62","jsCall_ii_63","jsCall_ii_64","jsCall_ii_65","jsCall_ii_66","jsCall_ii_67","jsCall_ii_68","jsCall_ii_69","jsCall_ii_70","jsCall_ii_71","jsCall_ii_72","jsCall_ii_73","jsCall_ii_74","jsCall_ii_75","jsCall_ii_76","jsCall_ii_77","jsCall_ii_78","jsCall_ii_79","jsCall_ii_80","jsCall_ii_81","jsCall_ii_82","jsCall_ii_83","jsCall_ii_84","jsCall_ii_85","jsCall_ii_86","jsCall_ii_87","jsCall_ii_88","jsCall_ii_89","jsCall_ii_90","jsCall_ii_91","jsCall_ii_92","jsCall_ii_93","jsCall_ii_94","jsCall_ii_95","jsCall_ii_96","jsCall_ii_97","jsCall_ii_98","jsCall_ii_99","_avi_probe","_avi_read_header","_avi_read_close","_av_default_item_name","_ff_avio_child_class_next","_flv_probe","_flv_read_header","_flv_read_close","_live_flv_probe","_mov_probe","_mov_read_header","_mov_read_close","_mpegps_probe","_mpegps_read_header","_mpegts_probe","_mpegts_read_header","_mpegts_read_close","_mpegvideo_probe","_ff_raw_video_read_header","_format_to_name","_format_child_class_next","_get_category","_urlcontext_to_name","_ff_urlcontext_child_class_next","_sws_context_to_name","_ff_bsf_child_class_next","_hevc_mp4toannexb_init","_hevc_init_thread_copy","_hevc_decode_init","_hevc_decode_free","_context_to_name","_codec_child_class_next","_get_category_2429","_aac_decode_init","_aac_decode_close","_init","___stdio_close","___emscripten_stdout_close","_initializeDecoderFunc","__getFrame","_closeVideoFunc","_releaseFunc","_initializeDemuxerFunc","_getPacketFunc","_releaseDemuxerFunc","_releaseSniffStreamFunc","_hflv_releaseFunc","_hflv_getBufferLength","_io_short_seek","_avio_rb16","_avio_rl16","_av_buffer_allocz","_av_buffer_alloc","_frame_worker_thread","_thread_worker",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,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,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,0];var debug_table_iid=[0,"jsCall_iid_0","jsCall_iid_1","jsCall_iid_2","jsCall_iid_3","jsCall_iid_4","jsCall_iid_5","jsCall_iid_6","jsCall_iid_7","jsCall_iid_8","jsCall_iid_9","jsCall_iid_10","jsCall_iid_11","jsCall_iid_12","jsCall_iid_13","jsCall_iid_14","jsCall_iid_15","jsCall_iid_16","jsCall_iid_17","jsCall_iid_18","jsCall_iid_19","jsCall_iid_20","jsCall_iid_21","jsCall_iid_22","jsCall_iid_23","jsCall_iid_24","jsCall_iid_25","jsCall_iid_26","jsCall_iid_27","jsCall_iid_28","jsCall_iid_29","jsCall_iid_30","jsCall_iid_31","jsCall_iid_32","jsCall_iid_33","jsCall_iid_34","jsCall_iid_35","jsCall_iid_36","jsCall_iid_37","jsCall_iid_38","jsCall_iid_39","jsCall_iid_40","jsCall_iid_41","jsCall_iid_42","jsCall_iid_43","jsCall_iid_44","jsCall_iid_45","jsCall_iid_46","jsCall_iid_47","jsCall_iid_48","jsCall_iid_49","jsCall_iid_50","jsCall_iid_51","jsCall_iid_52","jsCall_iid_53","jsCall_iid_54","jsCall_iid_55","jsCall_iid_56","jsCall_iid_57","jsCall_iid_58","jsCall_iid_59","jsCall_iid_60","jsCall_iid_61","jsCall_iid_62","jsCall_iid_63","jsCall_iid_64","jsCall_iid_65","jsCall_iid_66","jsCall_iid_67","jsCall_iid_68","jsCall_iid_69","jsCall_iid_70","jsCall_iid_71","jsCall_iid_72","jsCall_iid_73","jsCall_iid_74","jsCall_iid_75","jsCall_iid_76","jsCall_iid_77","jsCall_iid_78","jsCall_iid_79","jsCall_iid_80","jsCall_iid_81","jsCall_iid_82","jsCall_iid_83","jsCall_iid_84","jsCall_iid_85","jsCall_iid_86","jsCall_iid_87","jsCall_iid_88","jsCall_iid_89","jsCall_iid_90","jsCall_iid_91","jsCall_iid_92","jsCall_iid_93","jsCall_iid_94","jsCall_iid_95","jsCall_iid_96","jsCall_iid_97","jsCall_iid_98","jsCall_iid_99","_seekBufferFunc",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];var debug_table_iii=[0,"jsCall_iii_0","jsCall_iii_1","jsCall_iii_2","jsCall_iii_3","jsCall_iii_4","jsCall_iii_5","jsCall_iii_6","jsCall_iii_7","jsCall_iii_8","jsCall_iii_9","jsCall_iii_10","jsCall_iii_11","jsCall_iii_12","jsCall_iii_13","jsCall_iii_14","jsCall_iii_15","jsCall_iii_16","jsCall_iii_17","jsCall_iii_18","jsCall_iii_19","jsCall_iii_20","jsCall_iii_21","jsCall_iii_22","jsCall_iii_23","jsCall_iii_24","jsCall_iii_25","jsCall_iii_26","jsCall_iii_27","jsCall_iii_28","jsCall_iii_29","jsCall_iii_30","jsCall_iii_31","jsCall_iii_32","jsCall_iii_33","jsCall_iii_34","jsCall_iii_35","jsCall_iii_36","jsCall_iii_37","jsCall_iii_38","jsCall_iii_39","jsCall_iii_40","jsCall_iii_41","jsCall_iii_42","jsCall_iii_43","jsCall_iii_44","jsCall_iii_45","jsCall_iii_46","jsCall_iii_47","jsCall_iii_48","jsCall_iii_49","jsCall_iii_50","jsCall_iii_51","jsCall_iii_52","jsCall_iii_53","jsCall_iii_54","jsCall_iii_55","jsCall_iii_56","jsCall_iii_57","jsCall_iii_58","jsCall_iii_59","jsCall_iii_60","jsCall_iii_61","jsCall_iii_62","jsCall_iii_63","jsCall_iii_64","jsCall_iii_65","jsCall_iii_66","jsCall_iii_67","jsCall_iii_68","jsCall_iii_69","jsCall_iii_70","jsCall_iii_71","jsCall_iii_72","jsCall_iii_73","jsCall_iii_74","jsCall_iii_75","jsCall_iii_76","jsCall_iii_77","jsCall_iii_78","jsCall_iii_79","jsCall_iii_80","jsCall_iii_81","jsCall_iii_82","jsCall_iii_83","jsCall_iii_84","jsCall_iii_85","jsCall_iii_86","jsCall_iii_87","jsCall_iii_88","jsCall_iii_89","jsCall_iii_90","jsCall_iii_91","jsCall_iii_92","jsCall_iii_93","jsCall_iii_94","jsCall_iii_95","jsCall_iii_96","jsCall_iii_97","jsCall_iii_98","jsCall_iii_99","_avi_read_packet","_ff_avio_child_next","_flv_read_packet","_mov_read_packet","_mpegps_read_packet","_mpegts_read_packet","_mpegts_raw_read_packet","_ff_raw_read_partial_packet","_format_child_next","_urlcontext_child_next","_bsf_child_next","_hevc_mp4toannexb_filter","_hevc_update_thread_context","_null_filter","_codec_child_next","_initSniffStreamFunc","_hflv_initFunc","_hflv_getPacketFunc","_descriptor_compare","_io_read_pause","_avcodec_default_get_format","_hls_decode_entry","_ff_startcode_find_candidate_c","_color_table_compare",0,0,0];var debug_table_iiii=[0,"jsCall_iiii_0","jsCall_iiii_1","jsCall_iiii_2","jsCall_iiii_3","jsCall_iiii_4","jsCall_iiii_5","jsCall_iiii_6","jsCall_iiii_7","jsCall_iiii_8","jsCall_iiii_9","jsCall_iiii_10","jsCall_iiii_11","jsCall_iiii_12","jsCall_iiii_13","jsCall_iiii_14","jsCall_iiii_15","jsCall_iiii_16","jsCall_iiii_17","jsCall_iiii_18","jsCall_iiii_19","jsCall_iiii_20","jsCall_iiii_21","jsCall_iiii_22","jsCall_iiii_23","jsCall_iiii_24","jsCall_iiii_25","jsCall_iiii_26","jsCall_iiii_27","jsCall_iiii_28","jsCall_iiii_29","jsCall_iiii_30","jsCall_iiii_31","jsCall_iiii_32","jsCall_iiii_33","jsCall_iiii_34","jsCall_iiii_35","jsCall_iiii_36","jsCall_iiii_37","jsCall_iiii_38","jsCall_iiii_39","jsCall_iiii_40","jsCall_iiii_41","jsCall_iiii_42","jsCall_iiii_43","jsCall_iiii_44","jsCall_iiii_45","jsCall_iiii_46","jsCall_iiii_47","jsCall_iiii_48","jsCall_iiii_49","jsCall_iiii_50","jsCall_iiii_51","jsCall_iiii_52","jsCall_iiii_53","jsCall_iiii_54","jsCall_iiii_55","jsCall_iiii_56","jsCall_iiii_57","jsCall_iiii_58","jsCall_iiii_59","jsCall_iiii_60","jsCall_iiii_61","jsCall_iiii_62","jsCall_iiii_63","jsCall_iiii_64","jsCall_iiii_65","jsCall_iiii_66","jsCall_iiii_67","jsCall_iiii_68","jsCall_iiii_69","jsCall_iiii_70","jsCall_iiii_71","jsCall_iiii_72","jsCall_iiii_73","jsCall_iiii_74","jsCall_iiii_75","jsCall_iiii_76","jsCall_iiii_77","jsCall_iiii_78","jsCall_iiii_79","jsCall_iiii_80","jsCall_iiii_81","jsCall_iiii_82","jsCall_iiii_83","jsCall_iiii_84","jsCall_iiii_85","jsCall_iiii_86","jsCall_iiii_87","jsCall_iiii_88","jsCall_iiii_89","jsCall_iiii_90","jsCall_iiii_91","jsCall_iiii_92","jsCall_iiii_93","jsCall_iiii_94","jsCall_iiii_95","jsCall_iiii_96","jsCall_iiii_97","jsCall_iiii_98","jsCall_iiii_99","_mov_read_aclr","_mov_read_avid","_mov_read_ares","_mov_read_avss","_mov_read_av1c","_mov_read_chpl","_mov_read_stco","_mov_read_colr","_mov_read_ctts","_mov_read_default","_mov_read_dpxe","_mov_read_dref","_mov_read_elst","_mov_read_enda","_mov_read_fiel","_mov_read_adrm","_mov_read_ftyp","_mov_read_glbl","_mov_read_hdlr","_mov_read_ilst","_mov_read_jp2h","_mov_read_mdat","_mov_read_mdhd","_mov_read_meta","_mov_read_moof","_mov_read_moov","_mov_read_mvhd","_mov_read_svq3","_mov_read_alac","_mov_read_pasp","_mov_read_sidx","_mov_read_stps","_mov_read_strf","_mov_read_stsc","_mov_read_stsd","_mov_read_stss","_mov_read_stsz","_mov_read_stts","_mov_read_tkhd","_mov_read_tfdt","_mov_read_tfhd","_mov_read_trak","_mov_read_tmcd","_mov_read_chap","_mov_read_trex","_mov_read_trun","_mov_read_wave","_mov_read_esds","_mov_read_dac3","_mov_read_dec3","_mov_read_ddts","_mov_read_wide","_mov_read_wfex","_mov_read_cmov","_mov_read_chan","_mov_read_dvc1","_mov_read_sbgp","_mov_read_uuid","_mov_read_targa_y216","_mov_read_free","_mov_read_custom","_mov_read_frma","_mov_read_senc","_mov_read_saiz","_mov_read_saio","_mov_read_pssh","_mov_read_schm","_mov_read_tenc","_mov_read_dfla","_mov_read_st3d","_mov_read_sv3d","_mov_read_dops","_mov_read_smdm","_mov_read_coll","_mov_read_vpcc","_mov_read_mdcv","_mov_read_clli","_h264_split","_hevc_split","___stdio_write","_sn_write","_setCodecTypeFunc","_getSniffStreamPacketFunc","_read_stream_live","_read_stream_vod","_hflv_read_stream_live","_read_packet","_io_write_packet","_io_read_packet","_dyn_buf_write","_avcodec_default_get_buffer2","_mov_read_keys","_mov_read_udta_string","_do_read",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,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];var debug_table_iiiii=[0,"jsCall_iiiii_0","jsCall_iiiii_1","jsCall_iiiii_2","jsCall_iiiii_3","jsCall_iiiii_4","jsCall_iiiii_5","jsCall_iiiii_6","jsCall_iiiii_7","jsCall_iiiii_8","jsCall_iiiii_9","jsCall_iiiii_10","jsCall_iiiii_11","jsCall_iiiii_12","jsCall_iiiii_13","jsCall_iiiii_14","jsCall_iiiii_15","jsCall_iiiii_16","jsCall_iiiii_17","jsCall_iiiii_18","jsCall_iiiii_19","jsCall_iiiii_20","jsCall_iiiii_21","jsCall_iiiii_22","jsCall_iiiii_23","jsCall_iiiii_24","jsCall_iiiii_25","jsCall_iiiii_26","jsCall_iiiii_27","jsCall_iiiii_28","jsCall_iiiii_29","jsCall_iiiii_30","jsCall_iiiii_31","jsCall_iiiii_32","jsCall_iiiii_33","jsCall_iiiii_34","jsCall_iiiii_35","jsCall_iiiii_36","jsCall_iiiii_37","jsCall_iiiii_38","jsCall_iiiii_39","jsCall_iiiii_40","jsCall_iiiii_41","jsCall_iiiii_42","jsCall_iiiii_43","jsCall_iiiii_44","jsCall_iiiii_45","jsCall_iiiii_46","jsCall_iiiii_47","jsCall_iiiii_48","jsCall_iiiii_49","jsCall_iiiii_50","jsCall_iiiii_51","jsCall_iiiii_52","jsCall_iiiii_53","jsCall_iiiii_54","jsCall_iiiii_55","jsCall_iiiii_56","jsCall_iiiii_57","jsCall_iiiii_58","jsCall_iiiii_59","jsCall_iiiii_60","jsCall_iiiii_61","jsCall_iiiii_62","jsCall_iiiii_63","jsCall_iiiii_64","jsCall_iiiii_65","jsCall_iiiii_66","jsCall_iiiii_67","jsCall_iiiii_68","jsCall_iiiii_69","jsCall_iiiii_70","jsCall_iiiii_71","jsCall_iiiii_72","jsCall_iiiii_73","jsCall_iiiii_74","jsCall_iiiii_75","jsCall_iiiii_76","jsCall_iiiii_77","jsCall_iiiii_78","jsCall_iiiii_79","jsCall_iiiii_80","jsCall_iiiii_81","jsCall_iiiii_82","jsCall_iiiii_83","jsCall_iiiii_84","jsCall_iiiii_85","jsCall_iiiii_86","jsCall_iiiii_87","jsCall_iiiii_88","jsCall_iiiii_89","jsCall_iiiii_90","jsCall_iiiii_91","jsCall_iiiii_92","jsCall_iiiii_93","jsCall_iiiii_94","jsCall_iiiii_95","jsCall_iiiii_96","jsCall_iiiii_97","jsCall_iiiii_98","jsCall_iiiii_99","_hevc_decode_frame","_aac_decode_frame","_demuxBoxFunc","_hflv_pushBufferFunc","_mov_metadata_int8_no_padding","_mov_metadata_track_or_disc_number","_mov_metadata_gnre","_mov_metadata_int8_bypass_padding","_gamma_convert","_lum_convert","_lum_h_scale","_chr_convert","_chr_h_scale","_no_chr_scale","_lum_planar_vscale","_chr_planar_vscale","_any_vscale","_packed_vscale","_hls_decode_entry_wpp",0,0,0,0,0,0,0,0];var debug_table_iiiiii=[0,"jsCall_iiiiii_0","jsCall_iiiiii_1","jsCall_iiiiii_2","jsCall_iiiiii_3","jsCall_iiiiii_4","jsCall_iiiiii_5","jsCall_iiiiii_6","jsCall_iiiiii_7","jsCall_iiiiii_8","jsCall_iiiiii_9","jsCall_iiiiii_10","jsCall_iiiiii_11","jsCall_iiiiii_12","jsCall_iiiiii_13","jsCall_iiiiii_14","jsCall_iiiiii_15","jsCall_iiiiii_16","jsCall_iiiiii_17","jsCall_iiiiii_18","jsCall_iiiiii_19","jsCall_iiiiii_20","jsCall_iiiiii_21","jsCall_iiiiii_22","jsCall_iiiiii_23","jsCall_iiiiii_24","jsCall_iiiiii_25","jsCall_iiiiii_26","jsCall_iiiiii_27","jsCall_iiiiii_28","jsCall_iiiiii_29","jsCall_iiiiii_30","jsCall_iiiiii_31","jsCall_iiiiii_32","jsCall_iiiiii_33","jsCall_iiiiii_34","jsCall_iiiiii_35","jsCall_iiiiii_36","jsCall_iiiiii_37","jsCall_iiiiii_38","jsCall_iiiiii_39","jsCall_iiiiii_40","jsCall_iiiiii_41","jsCall_iiiiii_42","jsCall_iiiiii_43","jsCall_iiiiii_44","jsCall_iiiiii_45","jsCall_iiiiii_46","jsCall_iiiiii_47","jsCall_iiiiii_48","jsCall_iiiiii_49","jsCall_iiiiii_50","jsCall_iiiiii_51","jsCall_iiiiii_52","jsCall_iiiiii_53","jsCall_iiiiii_54","jsCall_iiiiii_55","jsCall_iiiiii_56","jsCall_iiiiii_57","jsCall_iiiiii_58","jsCall_iiiiii_59","jsCall_iiiiii_60","jsCall_iiiiii_61","jsCall_iiiiii_62","jsCall_iiiiii_63","jsCall_iiiiii_64","jsCall_iiiiii_65","jsCall_iiiiii_66","jsCall_iiiiii_67","jsCall_iiiiii_68","jsCall_iiiiii_69","jsCall_iiiiii_70","jsCall_iiiiii_71","jsCall_iiiiii_72","jsCall_iiiiii_73","jsCall_iiiiii_74","jsCall_iiiiii_75","jsCall_iiiiii_76","jsCall_iiiiii_77","jsCall_iiiiii_78","jsCall_iiiiii_79","jsCall_iiiiii_80","jsCall_iiiiii_81","jsCall_iiiiii_82","jsCall_iiiiii_83","jsCall_iiiiii_84","jsCall_iiiiii_85","jsCall_iiiiii_86","jsCall_iiiiii_87","jsCall_iiiiii_88","jsCall_iiiiii_89","jsCall_iiiiii_90","jsCall_iiiiii_91","jsCall_iiiiii_92","jsCall_iiiiii_93","jsCall_iiiiii_94","jsCall_iiiiii_95","jsCall_iiiiii_96","jsCall_iiiiii_97","jsCall_iiiiii_98","jsCall_iiiiii_99","_decodeCodecContextFunc","_pushBufferFunc","_avcodec_default_execute2","_io_open_default","_thread_execute2","_sbr_lf_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiii=[0,"jsCall_iiiiiii_0","jsCall_iiiiiii_1","jsCall_iiiiiii_2","jsCall_iiiiiii_3","jsCall_iiiiiii_4","jsCall_iiiiiii_5","jsCall_iiiiiii_6","jsCall_iiiiiii_7","jsCall_iiiiiii_8","jsCall_iiiiiii_9","jsCall_iiiiiii_10","jsCall_iiiiiii_11","jsCall_iiiiiii_12","jsCall_iiiiiii_13","jsCall_iiiiiii_14","jsCall_iiiiiii_15","jsCall_iiiiiii_16","jsCall_iiiiiii_17","jsCall_iiiiiii_18","jsCall_iiiiiii_19","jsCall_iiiiiii_20","jsCall_iiiiiii_21","jsCall_iiiiiii_22","jsCall_iiiiiii_23","jsCall_iiiiiii_24","jsCall_iiiiiii_25","jsCall_iiiiiii_26","jsCall_iiiiiii_27","jsCall_iiiiiii_28","jsCall_iiiiiii_29","jsCall_iiiiiii_30","jsCall_iiiiiii_31","jsCall_iiiiiii_32","jsCall_iiiiiii_33","jsCall_iiiiiii_34","jsCall_iiiiiii_35","jsCall_iiiiiii_36","jsCall_iiiiiii_37","jsCall_iiiiiii_38","jsCall_iiiiiii_39","jsCall_iiiiiii_40","jsCall_iiiiiii_41","jsCall_iiiiiii_42","jsCall_iiiiiii_43","jsCall_iiiiiii_44","jsCall_iiiiiii_45","jsCall_iiiiiii_46","jsCall_iiiiiii_47","jsCall_iiiiiii_48","jsCall_iiiiiii_49","jsCall_iiiiiii_50","jsCall_iiiiiii_51","jsCall_iiiiiii_52","jsCall_iiiiiii_53","jsCall_iiiiiii_54","jsCall_iiiiiii_55","jsCall_iiiiiii_56","jsCall_iiiiiii_57","jsCall_iiiiiii_58","jsCall_iiiiiii_59","jsCall_iiiiiii_60","jsCall_iiiiiii_61","jsCall_iiiiiii_62","jsCall_iiiiiii_63","jsCall_iiiiiii_64","jsCall_iiiiiii_65","jsCall_iiiiiii_66","jsCall_iiiiiii_67","jsCall_iiiiiii_68","jsCall_iiiiiii_69","jsCall_iiiiiii_70","jsCall_iiiiiii_71","jsCall_iiiiiii_72","jsCall_iiiiiii_73","jsCall_iiiiiii_74","jsCall_iiiiiii_75","jsCall_iiiiiii_76","jsCall_iiiiiii_77","jsCall_iiiiiii_78","jsCall_iiiiiii_79","jsCall_iiiiiii_80","jsCall_iiiiiii_81","jsCall_iiiiiii_82","jsCall_iiiiiii_83","jsCall_iiiiiii_84","jsCall_iiiiiii_85","jsCall_iiiiiii_86","jsCall_iiiiiii_87","jsCall_iiiiiii_88","jsCall_iiiiiii_89","jsCall_iiiiiii_90","jsCall_iiiiiii_91","jsCall_iiiiiii_92","jsCall_iiiiiii_93","jsCall_iiiiiii_94","jsCall_iiiiiii_95","jsCall_iiiiiii_96","jsCall_iiiiiii_97","jsCall_iiiiiii_98","jsCall_iiiiiii_99","_h264_parse","_hevc_parse","_hflv_decodeVideoFrameFunc","_avcodec_default_execute","_thread_execute","_sbr_x_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiiii=[0,"jsCall_iiiiiiii_0","jsCall_iiiiiiii_1","jsCall_iiiiiiii_2","jsCall_iiiiiiii_3","jsCall_iiiiiiii_4","jsCall_iiiiiiii_5","jsCall_iiiiiiii_6","jsCall_iiiiiiii_7","jsCall_iiiiiiii_8","jsCall_iiiiiiii_9","jsCall_iiiiiiii_10","jsCall_iiiiiiii_11","jsCall_iiiiiiii_12","jsCall_iiiiiiii_13","jsCall_iiiiiiii_14","jsCall_iiiiiiii_15","jsCall_iiiiiiii_16","jsCall_iiiiiiii_17","jsCall_iiiiiiii_18","jsCall_iiiiiiii_19","jsCall_iiiiiiii_20","jsCall_iiiiiiii_21","jsCall_iiiiiiii_22","jsCall_iiiiiiii_23","jsCall_iiiiiiii_24","jsCall_iiiiiiii_25","jsCall_iiiiiiii_26","jsCall_iiiiiiii_27","jsCall_iiiiiiii_28","jsCall_iiiiiiii_29","jsCall_iiiiiiii_30","jsCall_iiiiiiii_31","jsCall_iiiiiiii_32","jsCall_iiiiiiii_33","jsCall_iiiiiiii_34","jsCall_iiiiiiii_35","jsCall_iiiiiiii_36","jsCall_iiiiiiii_37","jsCall_iiiiiiii_38","jsCall_iiiiiiii_39","jsCall_iiiiiiii_40","jsCall_iiiiiiii_41","jsCall_iiiiiiii_42","jsCall_iiiiiiii_43","jsCall_iiiiiiii_44","jsCall_iiiiiiii_45","jsCall_iiiiiiii_46","jsCall_iiiiiiii_47","jsCall_iiiiiiii_48","jsCall_iiiiiiii_49","jsCall_iiiiiiii_50","jsCall_iiiiiiii_51","jsCall_iiiiiiii_52","jsCall_iiiiiiii_53","jsCall_iiiiiiii_54","jsCall_iiiiiiii_55","jsCall_iiiiiiii_56","jsCall_iiiiiiii_57","jsCall_iiiiiiii_58","jsCall_iiiiiiii_59","jsCall_iiiiiiii_60","jsCall_iiiiiiii_61","jsCall_iiiiiiii_62","jsCall_iiiiiiii_63","jsCall_iiiiiiii_64","jsCall_iiiiiiii_65","jsCall_iiiiiiii_66","jsCall_iiiiiiii_67","jsCall_iiiiiiii_68","jsCall_iiiiiiii_69","jsCall_iiiiiiii_70","jsCall_iiiiiiii_71","jsCall_iiiiiiii_72","jsCall_iiiiiiii_73","jsCall_iiiiiiii_74","jsCall_iiiiiiii_75","jsCall_iiiiiiii_76","jsCall_iiiiiiii_77","jsCall_iiiiiiii_78","jsCall_iiiiiiii_79","jsCall_iiiiiiii_80","jsCall_iiiiiiii_81","jsCall_iiiiiiii_82","jsCall_iiiiiiii_83","jsCall_iiiiiiii_84","jsCall_iiiiiiii_85","jsCall_iiiiiiii_86","jsCall_iiiiiiii_87","jsCall_iiiiiiii_88","jsCall_iiiiiiii_89","jsCall_iiiiiiii_90","jsCall_iiiiiiii_91","jsCall_iiiiiiii_92","jsCall_iiiiiiii_93","jsCall_iiiiiiii_94","jsCall_iiiiiiii_95","jsCall_iiiiiiii_96","jsCall_iiiiiiii_97","jsCall_iiiiiiii_98","jsCall_iiiiiiii_99","_decodeVideoFrameFunc","_setSniffStreamCodecTypeFunc","_hflv_setSniffStreamCodecTypeFunc","_ff_sws_alphablendaway","_planarToP01xWrapper","_planar8ToP01xleWrapper","_yvu9ToYv12Wrapper","_bgr24ToYv12Wrapper","_rgbToRgbWrapper","_planarRgbToplanarRgbWrapper","_planarRgbToRgbWrapper","_planarRgbaToRgbWrapper","_Rgb16ToPlanarRgb16Wrapper","_planarRgb16ToRgb16Wrapper","_rgbToPlanarRgbWrapper","_bayer_to_rgb24_wrapper","_bayer_to_yv12_wrapper","_bswap_16bpc","_palToRgbWrapper","_yuv422pToYuy2Wrapper","_yuv422pToUyvyWrapper","_uint_y_to_float_y_wrapper","_float_y_to_uint_y_wrapper","_planarToYuy2Wrapper","_planarToUyvyWrapper","_yuyvToYuv420Wrapper","_uyvyToYuv420Wrapper","_yuyvToYuv422Wrapper","_uyvyToYuv422Wrapper","_packedCopyWrapper","_planarCopyWrapper","_swscale","_planarToNv12Wrapper","_planarToNv24Wrapper","_nv12ToPlanarWrapper","_nv24ToPlanarWrapper","_yuv2rgb_c_32","_yuva2rgba_c","_yuv2rgb_c_bgr48","_yuv2rgb_c_48","_yuva2argb_c","_yuv2rgb_c_24_rgb","_yuv2rgb_c_24_bgr","_yuv2rgb_c_16_ordered_dither","_yuv2rgb_c_15_ordered_dither","_yuv2rgb_c_12_ordered_dither","_yuv2rgb_c_8_ordered_dither","_yuv2rgb_c_4_ordered_dither","_yuv2rgb_c_4b_ordered_dither","_yuv2rgb_c_1_ordered_dither",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,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,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,0,0,0,0,0,0];var debug_table_iiiiij=[0,"jsCall_iiiiij_0","jsCall_iiiiij_1","jsCall_iiiiij_2","jsCall_iiiiij_3","jsCall_iiiiij_4","jsCall_iiiiij_5","jsCall_iiiiij_6","jsCall_iiiiij_7","jsCall_iiiiij_8","jsCall_iiiiij_9","jsCall_iiiiij_10","jsCall_iiiiij_11","jsCall_iiiiij_12","jsCall_iiiiij_13","jsCall_iiiiij_14","jsCall_iiiiij_15","jsCall_iiiiij_16","jsCall_iiiiij_17","jsCall_iiiiij_18","jsCall_iiiiij_19","jsCall_iiiiij_20","jsCall_iiiiij_21","jsCall_iiiiij_22","jsCall_iiiiij_23","jsCall_iiiiij_24","jsCall_iiiiij_25","jsCall_iiiiij_26","jsCall_iiiiij_27","jsCall_iiiiij_28","jsCall_iiiiij_29","jsCall_iiiiij_30","jsCall_iiiiij_31","jsCall_iiiiij_32","jsCall_iiiiij_33","jsCall_iiiiij_34","jsCall_iiiiij_35","jsCall_iiiiij_36","jsCall_iiiiij_37","jsCall_iiiiij_38","jsCall_iiiiij_39","jsCall_iiiiij_40","jsCall_iiiiij_41","jsCall_iiiiij_42","jsCall_iiiiij_43","jsCall_iiiiij_44","jsCall_iiiiij_45","jsCall_iiiiij_46","jsCall_iiiiij_47","jsCall_iiiiij_48","jsCall_iiiiij_49","jsCall_iiiiij_50","jsCall_iiiiij_51","jsCall_iiiiij_52","jsCall_iiiiij_53","jsCall_iiiiij_54","jsCall_iiiiij_55","jsCall_iiiiij_56","jsCall_iiiiij_57","jsCall_iiiiij_58","jsCall_iiiiij_59","jsCall_iiiiij_60","jsCall_iiiiij_61","jsCall_iiiiij_62","jsCall_iiiiij_63","jsCall_iiiiij_64","jsCall_iiiiij_65","jsCall_iiiiij_66","jsCall_iiiiij_67","jsCall_iiiiij_68","jsCall_iiiiij_69","jsCall_iiiiij_70","jsCall_iiiiij_71","jsCall_iiiiij_72","jsCall_iiiiij_73","jsCall_iiiiij_74","jsCall_iiiiij_75","jsCall_iiiiij_76","jsCall_iiiiij_77","jsCall_iiiiij_78","jsCall_iiiiij_79","jsCall_iiiiij_80","jsCall_iiiiij_81","jsCall_iiiiij_82","jsCall_iiiiij_83","jsCall_iiiiij_84","jsCall_iiiiij_85","jsCall_iiiiij_86","jsCall_iiiiij_87","jsCall_iiiiij_88","jsCall_iiiiij_89","jsCall_iiiiij_90","jsCall_iiiiij_91","jsCall_iiiiij_92","jsCall_iiiiij_93","jsCall_iiiiij_94","jsCall_iiiiij_95","jsCall_iiiiij_96","jsCall_iiiiij_97","jsCall_iiiiij_98","jsCall_iiiiij_99","_mpegts_push_data",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];var debug_table_iiiji=[0,"jsCall_iiiji_0","jsCall_iiiji_1","jsCall_iiiji_2","jsCall_iiiji_3","jsCall_iiiji_4","jsCall_iiiji_5","jsCall_iiiji_6","jsCall_iiiji_7","jsCall_iiiji_8","jsCall_iiiji_9","jsCall_iiiji_10","jsCall_iiiji_11","jsCall_iiiji_12","jsCall_iiiji_13","jsCall_iiiji_14","jsCall_iiiji_15","jsCall_iiiji_16","jsCall_iiiji_17","jsCall_iiiji_18","jsCall_iiiji_19","jsCall_iiiji_20","jsCall_iiiji_21","jsCall_iiiji_22","jsCall_iiiji_23","jsCall_iiiji_24","jsCall_iiiji_25","jsCall_iiiji_26","jsCall_iiiji_27","jsCall_iiiji_28","jsCall_iiiji_29","jsCall_iiiji_30","jsCall_iiiji_31","jsCall_iiiji_32","jsCall_iiiji_33","jsCall_iiiji_34","jsCall_iiiji_35","jsCall_iiiji_36","jsCall_iiiji_37","jsCall_iiiji_38","jsCall_iiiji_39","jsCall_iiiji_40","jsCall_iiiji_41","jsCall_iiiji_42","jsCall_iiiji_43","jsCall_iiiji_44","jsCall_iiiji_45","jsCall_iiiji_46","jsCall_iiiji_47","jsCall_iiiji_48","jsCall_iiiji_49","jsCall_iiiji_50","jsCall_iiiji_51","jsCall_iiiji_52","jsCall_iiiji_53","jsCall_iiiji_54","jsCall_iiiji_55","jsCall_iiiji_56","jsCall_iiiji_57","jsCall_iiiji_58","jsCall_iiiji_59","jsCall_iiiji_60","jsCall_iiiji_61","jsCall_iiiji_62","jsCall_iiiji_63","jsCall_iiiji_64","jsCall_iiiji_65","jsCall_iiiji_66","jsCall_iiiji_67","jsCall_iiiji_68","jsCall_iiiji_69","jsCall_iiiji_70","jsCall_iiiji_71","jsCall_iiiji_72","jsCall_iiiji_73","jsCall_iiiji_74","jsCall_iiiji_75","jsCall_iiiji_76","jsCall_iiiji_77","jsCall_iiiji_78","jsCall_iiiji_79","jsCall_iiiji_80","jsCall_iiiji_81","jsCall_iiiji_82","jsCall_iiiji_83","jsCall_iiiji_84","jsCall_iiiji_85","jsCall_iiiji_86","jsCall_iiiji_87","jsCall_iiiji_88","jsCall_iiiji_89","jsCall_iiiji_90","jsCall_iiiji_91","jsCall_iiiji_92","jsCall_iiiji_93","jsCall_iiiji_94","jsCall_iiiji_95","jsCall_iiiji_96","jsCall_iiiji_97","jsCall_iiiji_98","jsCall_iiiji_99","_avi_read_seek","_flv_read_seek","_mov_read_seek",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiijjji=[0,"jsCall_iiijjji_0","jsCall_iiijjji_1","jsCall_iiijjji_2","jsCall_iiijjji_3","jsCall_iiijjji_4","jsCall_iiijjji_5","jsCall_iiijjji_6","jsCall_iiijjji_7","jsCall_iiijjji_8","jsCall_iiijjji_9","jsCall_iiijjji_10","jsCall_iiijjji_11","jsCall_iiijjji_12","jsCall_iiijjji_13","jsCall_iiijjji_14","jsCall_iiijjji_15","jsCall_iiijjji_16","jsCall_iiijjji_17","jsCall_iiijjji_18","jsCall_iiijjji_19","jsCall_iiijjji_20","jsCall_iiijjji_21","jsCall_iiijjji_22","jsCall_iiijjji_23","jsCall_iiijjji_24","jsCall_iiijjji_25","jsCall_iiijjji_26","jsCall_iiijjji_27","jsCall_iiijjji_28","jsCall_iiijjji_29","jsCall_iiijjji_30","jsCall_iiijjji_31","jsCall_iiijjji_32","jsCall_iiijjji_33","jsCall_iiijjji_34","jsCall_iiijjji_35","jsCall_iiijjji_36","jsCall_iiijjji_37","jsCall_iiijjji_38","jsCall_iiijjji_39","jsCall_iiijjji_40","jsCall_iiijjji_41","jsCall_iiijjji_42","jsCall_iiijjji_43","jsCall_iiijjji_44","jsCall_iiijjji_45","jsCall_iiijjji_46","jsCall_iiijjji_47","jsCall_iiijjji_48","jsCall_iiijjji_49","jsCall_iiijjji_50","jsCall_iiijjji_51","jsCall_iiijjji_52","jsCall_iiijjji_53","jsCall_iiijjji_54","jsCall_iiijjji_55","jsCall_iiijjji_56","jsCall_iiijjji_57","jsCall_iiijjji_58","jsCall_iiijjji_59","jsCall_iiijjji_60","jsCall_iiijjji_61","jsCall_iiijjji_62","jsCall_iiijjji_63","jsCall_iiijjji_64","jsCall_iiijjji_65","jsCall_iiijjji_66","jsCall_iiijjji_67","jsCall_iiijjji_68","jsCall_iiijjji_69","jsCall_iiijjji_70","jsCall_iiijjji_71","jsCall_iiijjji_72","jsCall_iiijjji_73","jsCall_iiijjji_74","jsCall_iiijjji_75","jsCall_iiijjji_76","jsCall_iiijjji_77","jsCall_iiijjji_78","jsCall_iiijjji_79","jsCall_iiijjji_80","jsCall_iiijjji_81","jsCall_iiijjji_82","jsCall_iiijjji_83","jsCall_iiijjji_84","jsCall_iiijjji_85","jsCall_iiijjji_86","jsCall_iiijjji_87","jsCall_iiijjji_88","jsCall_iiijjji_89","jsCall_iiijjji_90","jsCall_iiijjji_91","jsCall_iiijjji_92","jsCall_iiijjji_93","jsCall_iiijjji_94","jsCall_iiijjji_95","jsCall_iiijjji_96","jsCall_iiijjji_97","jsCall_iiijjji_98","jsCall_iiijjji_99",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];var debug_table_jiiij=[0,"jsCall_jiiij_0","jsCall_jiiij_1","jsCall_jiiij_2","jsCall_jiiij_3","jsCall_jiiij_4","jsCall_jiiij_5","jsCall_jiiij_6","jsCall_jiiij_7","jsCall_jiiij_8","jsCall_jiiij_9","jsCall_jiiij_10","jsCall_jiiij_11","jsCall_jiiij_12","jsCall_jiiij_13","jsCall_jiiij_14","jsCall_jiiij_15","jsCall_jiiij_16","jsCall_jiiij_17","jsCall_jiiij_18","jsCall_jiiij_19","jsCall_jiiij_20","jsCall_jiiij_21","jsCall_jiiij_22","jsCall_jiiij_23","jsCall_jiiij_24","jsCall_jiiij_25","jsCall_jiiij_26","jsCall_jiiij_27","jsCall_jiiij_28","jsCall_jiiij_29","jsCall_jiiij_30","jsCall_jiiij_31","jsCall_jiiij_32","jsCall_jiiij_33","jsCall_jiiij_34","jsCall_jiiij_35","jsCall_jiiij_36","jsCall_jiiij_37","jsCall_jiiij_38","jsCall_jiiij_39","jsCall_jiiij_40","jsCall_jiiij_41","jsCall_jiiij_42","jsCall_jiiij_43","jsCall_jiiij_44","jsCall_jiiij_45","jsCall_jiiij_46","jsCall_jiiij_47","jsCall_jiiij_48","jsCall_jiiij_49","jsCall_jiiij_50","jsCall_jiiij_51","jsCall_jiiij_52","jsCall_jiiij_53","jsCall_jiiij_54","jsCall_jiiij_55","jsCall_jiiij_56","jsCall_jiiij_57","jsCall_jiiij_58","jsCall_jiiij_59","jsCall_jiiij_60","jsCall_jiiij_61","jsCall_jiiij_62","jsCall_jiiij_63","jsCall_jiiij_64","jsCall_jiiij_65","jsCall_jiiij_66","jsCall_jiiij_67","jsCall_jiiij_68","jsCall_jiiij_69","jsCall_jiiij_70","jsCall_jiiij_71","jsCall_jiiij_72","jsCall_jiiij_73","jsCall_jiiij_74","jsCall_jiiij_75","jsCall_jiiij_76","jsCall_jiiij_77","jsCall_jiiij_78","jsCall_jiiij_79","jsCall_jiiij_80","jsCall_jiiij_81","jsCall_jiiij_82","jsCall_jiiij_83","jsCall_jiiij_84","jsCall_jiiij_85","jsCall_jiiij_86","jsCall_jiiij_87","jsCall_jiiij_88","jsCall_jiiij_89","jsCall_jiiij_90","jsCall_jiiij_91","jsCall_jiiij_92","jsCall_jiiij_93","jsCall_jiiij_94","jsCall_jiiij_95","jsCall_jiiij_96","jsCall_jiiij_97","jsCall_jiiij_98","jsCall_jiiij_99","_mpegps_read_dts","_mpegts_get_dts",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];var debug_table_jiiji=[0,"jsCall_jiiji_0","jsCall_jiiji_1","jsCall_jiiji_2","jsCall_jiiji_3","jsCall_jiiji_4","jsCall_jiiji_5","jsCall_jiiji_6","jsCall_jiiji_7","jsCall_jiiji_8","jsCall_jiiji_9","jsCall_jiiji_10","jsCall_jiiji_11","jsCall_jiiji_12","jsCall_jiiji_13","jsCall_jiiji_14","jsCall_jiiji_15","jsCall_jiiji_16","jsCall_jiiji_17","jsCall_jiiji_18","jsCall_jiiji_19","jsCall_jiiji_20","jsCall_jiiji_21","jsCall_jiiji_22","jsCall_jiiji_23","jsCall_jiiji_24","jsCall_jiiji_25","jsCall_jiiji_26","jsCall_jiiji_27","jsCall_jiiji_28","jsCall_jiiji_29","jsCall_jiiji_30","jsCall_jiiji_31","jsCall_jiiji_32","jsCall_jiiji_33","jsCall_jiiji_34","jsCall_jiiji_35","jsCall_jiiji_36","jsCall_jiiji_37","jsCall_jiiji_38","jsCall_jiiji_39","jsCall_jiiji_40","jsCall_jiiji_41","jsCall_jiiji_42","jsCall_jiiji_43","jsCall_jiiji_44","jsCall_jiiji_45","jsCall_jiiji_46","jsCall_jiiji_47","jsCall_jiiji_48","jsCall_jiiji_49","jsCall_jiiji_50","jsCall_jiiji_51","jsCall_jiiji_52","jsCall_jiiji_53","jsCall_jiiji_54","jsCall_jiiji_55","jsCall_jiiji_56","jsCall_jiiji_57","jsCall_jiiji_58","jsCall_jiiji_59","jsCall_jiiji_60","jsCall_jiiji_61","jsCall_jiiji_62","jsCall_jiiji_63","jsCall_jiiji_64","jsCall_jiiji_65","jsCall_jiiji_66","jsCall_jiiji_67","jsCall_jiiji_68","jsCall_jiiji_69","jsCall_jiiji_70","jsCall_jiiji_71","jsCall_jiiji_72","jsCall_jiiji_73","jsCall_jiiji_74","jsCall_jiiji_75","jsCall_jiiji_76","jsCall_jiiji_77","jsCall_jiiji_78","jsCall_jiiji_79","jsCall_jiiji_80","jsCall_jiiji_81","jsCall_jiiji_82","jsCall_jiiji_83","jsCall_jiiji_84","jsCall_jiiji_85","jsCall_jiiji_86","jsCall_jiiji_87","jsCall_jiiji_88","jsCall_jiiji_89","jsCall_jiiji_90","jsCall_jiiji_91","jsCall_jiiji_92","jsCall_jiiji_93","jsCall_jiiji_94","jsCall_jiiji_95","jsCall_jiiji_96","jsCall_jiiji_97","jsCall_jiiji_98","jsCall_jiiji_99","_io_read_seek",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];var debug_table_jiji=[0,"jsCall_jiji_0","jsCall_jiji_1","jsCall_jiji_2","jsCall_jiji_3","jsCall_jiji_4","jsCall_jiji_5","jsCall_jiji_6","jsCall_jiji_7","jsCall_jiji_8","jsCall_jiji_9","jsCall_jiji_10","jsCall_jiji_11","jsCall_jiji_12","jsCall_jiji_13","jsCall_jiji_14","jsCall_jiji_15","jsCall_jiji_16","jsCall_jiji_17","jsCall_jiji_18","jsCall_jiji_19","jsCall_jiji_20","jsCall_jiji_21","jsCall_jiji_22","jsCall_jiji_23","jsCall_jiji_24","jsCall_jiji_25","jsCall_jiji_26","jsCall_jiji_27","jsCall_jiji_28","jsCall_jiji_29","jsCall_jiji_30","jsCall_jiji_31","jsCall_jiji_32","jsCall_jiji_33","jsCall_jiji_34","jsCall_jiji_35","jsCall_jiji_36","jsCall_jiji_37","jsCall_jiji_38","jsCall_jiji_39","jsCall_jiji_40","jsCall_jiji_41","jsCall_jiji_42","jsCall_jiji_43","jsCall_jiji_44","jsCall_jiji_45","jsCall_jiji_46","jsCall_jiji_47","jsCall_jiji_48","jsCall_jiji_49","jsCall_jiji_50","jsCall_jiji_51","jsCall_jiji_52","jsCall_jiji_53","jsCall_jiji_54","jsCall_jiji_55","jsCall_jiji_56","jsCall_jiji_57","jsCall_jiji_58","jsCall_jiji_59","jsCall_jiji_60","jsCall_jiji_61","jsCall_jiji_62","jsCall_jiji_63","jsCall_jiji_64","jsCall_jiji_65","jsCall_jiji_66","jsCall_jiji_67","jsCall_jiji_68","jsCall_jiji_69","jsCall_jiji_70","jsCall_jiji_71","jsCall_jiji_72","jsCall_jiji_73","jsCall_jiji_74","jsCall_jiji_75","jsCall_jiji_76","jsCall_jiji_77","jsCall_jiji_78","jsCall_jiji_79","jsCall_jiji_80","jsCall_jiji_81","jsCall_jiji_82","jsCall_jiji_83","jsCall_jiji_84","jsCall_jiji_85","jsCall_jiji_86","jsCall_jiji_87","jsCall_jiji_88","jsCall_jiji_89","jsCall_jiji_90","jsCall_jiji_91","jsCall_jiji_92","jsCall_jiji_93","jsCall_jiji_94","jsCall_jiji_95","jsCall_jiji_96","jsCall_jiji_97","jsCall_jiji_98","jsCall_jiji_99","___stdio_seek","___emscripten_stdout_seek","_seek_in_buffer","_io_seek","_dyn_buf_seek",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_v=[0,"jsCall_v_0","jsCall_v_1","jsCall_v_2","jsCall_v_3","jsCall_v_4","jsCall_v_5","jsCall_v_6","jsCall_v_7","jsCall_v_8","jsCall_v_9","jsCall_v_10","jsCall_v_11","jsCall_v_12","jsCall_v_13","jsCall_v_14","jsCall_v_15","jsCall_v_16","jsCall_v_17","jsCall_v_18","jsCall_v_19","jsCall_v_20","jsCall_v_21","jsCall_v_22","jsCall_v_23","jsCall_v_24","jsCall_v_25","jsCall_v_26","jsCall_v_27","jsCall_v_28","jsCall_v_29","jsCall_v_30","jsCall_v_31","jsCall_v_32","jsCall_v_33","jsCall_v_34","jsCall_v_35","jsCall_v_36","jsCall_v_37","jsCall_v_38","jsCall_v_39","jsCall_v_40","jsCall_v_41","jsCall_v_42","jsCall_v_43","jsCall_v_44","jsCall_v_45","jsCall_v_46","jsCall_v_47","jsCall_v_48","jsCall_v_49","jsCall_v_50","jsCall_v_51","jsCall_v_52","jsCall_v_53","jsCall_v_54","jsCall_v_55","jsCall_v_56","jsCall_v_57","jsCall_v_58","jsCall_v_59","jsCall_v_60","jsCall_v_61","jsCall_v_62","jsCall_v_63","jsCall_v_64","jsCall_v_65","jsCall_v_66","jsCall_v_67","jsCall_v_68","jsCall_v_69","jsCall_v_70","jsCall_v_71","jsCall_v_72","jsCall_v_73","jsCall_v_74","jsCall_v_75","jsCall_v_76","jsCall_v_77","jsCall_v_78","jsCall_v_79","jsCall_v_80","jsCall_v_81","jsCall_v_82","jsCall_v_83","jsCall_v_84","jsCall_v_85","jsCall_v_86","jsCall_v_87","jsCall_v_88","jsCall_v_89","jsCall_v_90","jsCall_v_91","jsCall_v_92","jsCall_v_93","jsCall_v_94","jsCall_v_95","jsCall_v_96","jsCall_v_97","jsCall_v_98","jsCall_v_99","_init_ff_cos_tabs_16","_init_ff_cos_tabs_32","_init_ff_cos_tabs_64","_init_ff_cos_tabs_128","_init_ff_cos_tabs_256","_init_ff_cos_tabs_512","_init_ff_cos_tabs_1024","_init_ff_cos_tabs_2048","_init_ff_cos_tabs_4096","_init_ff_cos_tabs_8192","_init_ff_cos_tabs_16384","_init_ff_cos_tabs_32768","_init_ff_cos_tabs_65536","_init_ff_cos_tabs_131072","_introduceMineFunc","_introduce_mine",0,0,0,0,0,0,0,0,0,0,0];var debug_table_vdiidiiiii=[0,"jsCall_vdiidiiiii_0","jsCall_vdiidiiiii_1","jsCall_vdiidiiiii_2","jsCall_vdiidiiiii_3","jsCall_vdiidiiiii_4","jsCall_vdiidiiiii_5","jsCall_vdiidiiiii_6","jsCall_vdiidiiiii_7","jsCall_vdiidiiiii_8","jsCall_vdiidiiiii_9","jsCall_vdiidiiiii_10","jsCall_vdiidiiiii_11","jsCall_vdiidiiiii_12","jsCall_vdiidiiiii_13","jsCall_vdiidiiiii_14","jsCall_vdiidiiiii_15","jsCall_vdiidiiiii_16","jsCall_vdiidiiiii_17","jsCall_vdiidiiiii_18","jsCall_vdiidiiiii_19","jsCall_vdiidiiiii_20","jsCall_vdiidiiiii_21","jsCall_vdiidiiiii_22","jsCall_vdiidiiiii_23","jsCall_vdiidiiiii_24","jsCall_vdiidiiiii_25","jsCall_vdiidiiiii_26","jsCall_vdiidiiiii_27","jsCall_vdiidiiiii_28","jsCall_vdiidiiiii_29","jsCall_vdiidiiiii_30","jsCall_vdiidiiiii_31","jsCall_vdiidiiiii_32","jsCall_vdiidiiiii_33","jsCall_vdiidiiiii_34","jsCall_vdiidiiiii_35","jsCall_vdiidiiiii_36","jsCall_vdiidiiiii_37","jsCall_vdiidiiiii_38","jsCall_vdiidiiiii_39","jsCall_vdiidiiiii_40","jsCall_vdiidiiiii_41","jsCall_vdiidiiiii_42","jsCall_vdiidiiiii_43","jsCall_vdiidiiiii_44","jsCall_vdiidiiiii_45","jsCall_vdiidiiiii_46","jsCall_vdiidiiiii_47","jsCall_vdiidiiiii_48","jsCall_vdiidiiiii_49","jsCall_vdiidiiiii_50","jsCall_vdiidiiiii_51","jsCall_vdiidiiiii_52","jsCall_vdiidiiiii_53","jsCall_vdiidiiiii_54","jsCall_vdiidiiiii_55","jsCall_vdiidiiiii_56","jsCall_vdiidiiiii_57","jsCall_vdiidiiiii_58","jsCall_vdiidiiiii_59","jsCall_vdiidiiiii_60","jsCall_vdiidiiiii_61","jsCall_vdiidiiiii_62","jsCall_vdiidiiiii_63","jsCall_vdiidiiiii_64","jsCall_vdiidiiiii_65","jsCall_vdiidiiiii_66","jsCall_vdiidiiiii_67","jsCall_vdiidiiiii_68","jsCall_vdiidiiiii_69","jsCall_vdiidiiiii_70","jsCall_vdiidiiiii_71","jsCall_vdiidiiiii_72","jsCall_vdiidiiiii_73","jsCall_vdiidiiiii_74","jsCall_vdiidiiiii_75","jsCall_vdiidiiiii_76","jsCall_vdiidiiiii_77","jsCall_vdiidiiiii_78","jsCall_vdiidiiiii_79","jsCall_vdiidiiiii_80","jsCall_vdiidiiiii_81","jsCall_vdiidiiiii_82","jsCall_vdiidiiiii_83","jsCall_vdiidiiiii_84","jsCall_vdiidiiiii_85","jsCall_vdiidiiiii_86","jsCall_vdiidiiiii_87","jsCall_vdiidiiiii_88","jsCall_vdiidiiiii_89","jsCall_vdiidiiiii_90","jsCall_vdiidiiiii_91","jsCall_vdiidiiiii_92","jsCall_vdiidiiiii_93","jsCall_vdiidiiiii_94","jsCall_vdiidiiiii_95","jsCall_vdiidiiiii_96","jsCall_vdiidiiiii_97","jsCall_vdiidiiiii_98","jsCall_vdiidiiiii_99",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];var debug_table_vi=[0,"jsCall_vi_0","jsCall_vi_1","jsCall_vi_2","jsCall_vi_3","jsCall_vi_4","jsCall_vi_5","jsCall_vi_6","jsCall_vi_7","jsCall_vi_8","jsCall_vi_9","jsCall_vi_10","jsCall_vi_11","jsCall_vi_12","jsCall_vi_13","jsCall_vi_14","jsCall_vi_15","jsCall_vi_16","jsCall_vi_17","jsCall_vi_18","jsCall_vi_19","jsCall_vi_20","jsCall_vi_21","jsCall_vi_22","jsCall_vi_23","jsCall_vi_24","jsCall_vi_25","jsCall_vi_26","jsCall_vi_27","jsCall_vi_28","jsCall_vi_29","jsCall_vi_30","jsCall_vi_31","jsCall_vi_32","jsCall_vi_33","jsCall_vi_34","jsCall_vi_35","jsCall_vi_36","jsCall_vi_37","jsCall_vi_38","jsCall_vi_39","jsCall_vi_40","jsCall_vi_41","jsCall_vi_42","jsCall_vi_43","jsCall_vi_44","jsCall_vi_45","jsCall_vi_46","jsCall_vi_47","jsCall_vi_48","jsCall_vi_49","jsCall_vi_50","jsCall_vi_51","jsCall_vi_52","jsCall_vi_53","jsCall_vi_54","jsCall_vi_55","jsCall_vi_56","jsCall_vi_57","jsCall_vi_58","jsCall_vi_59","jsCall_vi_60","jsCall_vi_61","jsCall_vi_62","jsCall_vi_63","jsCall_vi_64","jsCall_vi_65","jsCall_vi_66","jsCall_vi_67","jsCall_vi_68","jsCall_vi_69","jsCall_vi_70","jsCall_vi_71","jsCall_vi_72","jsCall_vi_73","jsCall_vi_74","jsCall_vi_75","jsCall_vi_76","jsCall_vi_77","jsCall_vi_78","jsCall_vi_79","jsCall_vi_80","jsCall_vi_81","jsCall_vi_82","jsCall_vi_83","jsCall_vi_84","jsCall_vi_85","jsCall_vi_86","jsCall_vi_87","jsCall_vi_88","jsCall_vi_89","jsCall_vi_90","jsCall_vi_91","jsCall_vi_92","jsCall_vi_93","jsCall_vi_94","jsCall_vi_95","jsCall_vi_96","jsCall_vi_97","jsCall_vi_98","jsCall_vi_99","_free_geobtag","_free_apic","_free_chapter","_free_priv","_hevc_decode_flush","_flush","_h264_close","_hevc_parser_close","_fft4","_fft8","_fft16","_fft32","_fft64","_fft128","_fft256","_fft512","_fft1024","_fft2048","_fft4096","_fft8192","_fft16384","_fft32768","_fft65536","_fft131072","_logRequest_downloadSucceeded","_logRequest_downloadFailed","_downloadSucceeded","_downloadFailed","_transform_4x4_luma_9","_idct_4x4_dc_9","_idct_8x8_dc_9","_idct_16x16_dc_9","_idct_32x32_dc_9","_transform_4x4_luma_10","_idct_4x4_dc_10","_idct_8x8_dc_10","_idct_16x16_dc_10","_idct_32x32_dc_10","_transform_4x4_luma_12","_idct_4x4_dc_12","_idct_8x8_dc_12","_idct_16x16_dc_12","_idct_32x32_dc_12","_transform_4x4_luma_8","_idct_4x4_dc_8","_idct_8x8_dc_8","_idct_16x16_dc_8","_idct_32x32_dc_8","_main_function","_sbr_sum64x5_c","_sbr_neg_odd_64_c","_sbr_qmf_pre_shuffle_c",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,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,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,0,0,0,0];var debug_table_vii=[0,"jsCall_vii_0","jsCall_vii_1","jsCall_vii_2","jsCall_vii_3","jsCall_vii_4","jsCall_vii_5","jsCall_vii_6","jsCall_vii_7","jsCall_vii_8","jsCall_vii_9","jsCall_vii_10","jsCall_vii_11","jsCall_vii_12","jsCall_vii_13","jsCall_vii_14","jsCall_vii_15","jsCall_vii_16","jsCall_vii_17","jsCall_vii_18","jsCall_vii_19","jsCall_vii_20","jsCall_vii_21","jsCall_vii_22","jsCall_vii_23","jsCall_vii_24","jsCall_vii_25","jsCall_vii_26","jsCall_vii_27","jsCall_vii_28","jsCall_vii_29","jsCall_vii_30","jsCall_vii_31","jsCall_vii_32","jsCall_vii_33","jsCall_vii_34","jsCall_vii_35","jsCall_vii_36","jsCall_vii_37","jsCall_vii_38","jsCall_vii_39","jsCall_vii_40","jsCall_vii_41","jsCall_vii_42","jsCall_vii_43","jsCall_vii_44","jsCall_vii_45","jsCall_vii_46","jsCall_vii_47","jsCall_vii_48","jsCall_vii_49","jsCall_vii_50","jsCall_vii_51","jsCall_vii_52","jsCall_vii_53","jsCall_vii_54","jsCall_vii_55","jsCall_vii_56","jsCall_vii_57","jsCall_vii_58","jsCall_vii_59","jsCall_vii_60","jsCall_vii_61","jsCall_vii_62","jsCall_vii_63","jsCall_vii_64","jsCall_vii_65","jsCall_vii_66","jsCall_vii_67","jsCall_vii_68","jsCall_vii_69","jsCall_vii_70","jsCall_vii_71","jsCall_vii_72","jsCall_vii_73","jsCall_vii_74","jsCall_vii_75","jsCall_vii_76","jsCall_vii_77","jsCall_vii_78","jsCall_vii_79","jsCall_vii_80","jsCall_vii_81","jsCall_vii_82","jsCall_vii_83","jsCall_vii_84","jsCall_vii_85","jsCall_vii_86","jsCall_vii_87","jsCall_vii_88","jsCall_vii_89","jsCall_vii_90","jsCall_vii_91","jsCall_vii_92","jsCall_vii_93","jsCall_vii_94","jsCall_vii_95","jsCall_vii_96","jsCall_vii_97","jsCall_vii_98","jsCall_vii_99","_sha1_transform","_io_close_default","_lumRangeFromJpeg_c","_lumRangeToJpeg_c","_lumRangeFromJpeg16_c","_lumRangeToJpeg16_c","_decode_data_free","_dequant_9","_idct_4x4_9","_idct_8x8_9","_idct_16x16_9","_idct_32x32_9","_dequant_10","_idct_4x4_10","_idct_8x8_10","_idct_16x16_10","_idct_32x32_10","_dequant_12","_idct_4x4_12","_idct_8x8_12","_idct_16x16_12","_idct_32x32_12","_dequant_8","_idct_4x4_8","_idct_8x8_8","_idct_16x16_8","_idct_32x32_8","_imdct_and_windowing","_apply_ltp","_update_ltp","_imdct_and_windowing_ld","_imdct_and_windowing_eld","_imdct_and_windowing_960","_sbr_qmf_post_shuffle_c","_sbr_qmf_deint_neg_c","_sbr_autocorrelate_c","_ff_h264_chroma_dc_dequant_idct_8_c","_hevc_pps_free","_fft_permute_c","_fft_calc_c","_av_buffer_default_free","_pool_release_buffer",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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viidi=[0,"jsCall_viidi_0","jsCall_viidi_1","jsCall_viidi_2","jsCall_viidi_3","jsCall_viidi_4","jsCall_viidi_5","jsCall_viidi_6","jsCall_viidi_7","jsCall_viidi_8","jsCall_viidi_9","jsCall_viidi_10","jsCall_viidi_11","jsCall_viidi_12","jsCall_viidi_13","jsCall_viidi_14","jsCall_viidi_15","jsCall_viidi_16","jsCall_viidi_17","jsCall_viidi_18","jsCall_viidi_19","jsCall_viidi_20","jsCall_viidi_21","jsCall_viidi_22","jsCall_viidi_23","jsCall_viidi_24","jsCall_viidi_25","jsCall_viidi_26","jsCall_viidi_27","jsCall_viidi_28","jsCall_viidi_29","jsCall_viidi_30","jsCall_viidi_31","jsCall_viidi_32","jsCall_viidi_33","jsCall_viidi_34","jsCall_viidi_35","jsCall_viidi_36","jsCall_viidi_37","jsCall_viidi_38","jsCall_viidi_39","jsCall_viidi_40","jsCall_viidi_41","jsCall_viidi_42","jsCall_viidi_43","jsCall_viidi_44","jsCall_viidi_45","jsCall_viidi_46","jsCall_viidi_47","jsCall_viidi_48","jsCall_viidi_49","jsCall_viidi_50","jsCall_viidi_51","jsCall_viidi_52","jsCall_viidi_53","jsCall_viidi_54","jsCall_viidi_55","jsCall_viidi_56","jsCall_viidi_57","jsCall_viidi_58","jsCall_viidi_59","jsCall_viidi_60","jsCall_viidi_61","jsCall_viidi_62","jsCall_viidi_63","jsCall_viidi_64","jsCall_viidi_65","jsCall_viidi_66","jsCall_viidi_67","jsCall_viidi_68","jsCall_viidi_69","jsCall_viidi_70","jsCall_viidi_71","jsCall_viidi_72","jsCall_viidi_73","jsCall_viidi_74","jsCall_viidi_75","jsCall_viidi_76","jsCall_viidi_77","jsCall_viidi_78","jsCall_viidi_79","jsCall_viidi_80","jsCall_viidi_81","jsCall_viidi_82","jsCall_viidi_83","jsCall_viidi_84","jsCall_viidi_85","jsCall_viidi_86","jsCall_viidi_87","jsCall_viidi_88","jsCall_viidi_89","jsCall_viidi_90","jsCall_viidi_91","jsCall_viidi_92","jsCall_viidi_93","jsCall_viidi_94","jsCall_viidi_95","jsCall_viidi_96","jsCall_viidi_97","jsCall_viidi_98","jsCall_viidi_99","_vector_dmac_scalar_c","_vector_dmul_scalar_c",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];var debug_table_viifi=[0,"jsCall_viifi_0","jsCall_viifi_1","jsCall_viifi_2","jsCall_viifi_3","jsCall_viifi_4","jsCall_viifi_5","jsCall_viifi_6","jsCall_viifi_7","jsCall_viifi_8","jsCall_viifi_9","jsCall_viifi_10","jsCall_viifi_11","jsCall_viifi_12","jsCall_viifi_13","jsCall_viifi_14","jsCall_viifi_15","jsCall_viifi_16","jsCall_viifi_17","jsCall_viifi_18","jsCall_viifi_19","jsCall_viifi_20","jsCall_viifi_21","jsCall_viifi_22","jsCall_viifi_23","jsCall_viifi_24","jsCall_viifi_25","jsCall_viifi_26","jsCall_viifi_27","jsCall_viifi_28","jsCall_viifi_29","jsCall_viifi_30","jsCall_viifi_31","jsCall_viifi_32","jsCall_viifi_33","jsCall_viifi_34","jsCall_viifi_35","jsCall_viifi_36","jsCall_viifi_37","jsCall_viifi_38","jsCall_viifi_39","jsCall_viifi_40","jsCall_viifi_41","jsCall_viifi_42","jsCall_viifi_43","jsCall_viifi_44","jsCall_viifi_45","jsCall_viifi_46","jsCall_viifi_47","jsCall_viifi_48","jsCall_viifi_49","jsCall_viifi_50","jsCall_viifi_51","jsCall_viifi_52","jsCall_viifi_53","jsCall_viifi_54","jsCall_viifi_55","jsCall_viifi_56","jsCall_viifi_57","jsCall_viifi_58","jsCall_viifi_59","jsCall_viifi_60","jsCall_viifi_61","jsCall_viifi_62","jsCall_viifi_63","jsCall_viifi_64","jsCall_viifi_65","jsCall_viifi_66","jsCall_viifi_67","jsCall_viifi_68","jsCall_viifi_69","jsCall_viifi_70","jsCall_viifi_71","jsCall_viifi_72","jsCall_viifi_73","jsCall_viifi_74","jsCall_viifi_75","jsCall_viifi_76","jsCall_viifi_77","jsCall_viifi_78","jsCall_viifi_79","jsCall_viifi_80","jsCall_viifi_81","jsCall_viifi_82","jsCall_viifi_83","jsCall_viifi_84","jsCall_viifi_85","jsCall_viifi_86","jsCall_viifi_87","jsCall_viifi_88","jsCall_viifi_89","jsCall_viifi_90","jsCall_viifi_91","jsCall_viifi_92","jsCall_viifi_93","jsCall_viifi_94","jsCall_viifi_95","jsCall_viifi_96","jsCall_viifi_97","jsCall_viifi_98","jsCall_viifi_99","_vector_fmac_scalar_c","_vector_fmul_scalar_c",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];var debug_table_viii=[0,"jsCall_viii_0","jsCall_viii_1","jsCall_viii_2","jsCall_viii_3","jsCall_viii_4","jsCall_viii_5","jsCall_viii_6","jsCall_viii_7","jsCall_viii_8","jsCall_viii_9","jsCall_viii_10","jsCall_viii_11","jsCall_viii_12","jsCall_viii_13","jsCall_viii_14","jsCall_viii_15","jsCall_viii_16","jsCall_viii_17","jsCall_viii_18","jsCall_viii_19","jsCall_viii_20","jsCall_viii_21","jsCall_viii_22","jsCall_viii_23","jsCall_viii_24","jsCall_viii_25","jsCall_viii_26","jsCall_viii_27","jsCall_viii_28","jsCall_viii_29","jsCall_viii_30","jsCall_viii_31","jsCall_viii_32","jsCall_viii_33","jsCall_viii_34","jsCall_viii_35","jsCall_viii_36","jsCall_viii_37","jsCall_viii_38","jsCall_viii_39","jsCall_viii_40","jsCall_viii_41","jsCall_viii_42","jsCall_viii_43","jsCall_viii_44","jsCall_viii_45","jsCall_viii_46","jsCall_viii_47","jsCall_viii_48","jsCall_viii_49","jsCall_viii_50","jsCall_viii_51","jsCall_viii_52","jsCall_viii_53","jsCall_viii_54","jsCall_viii_55","jsCall_viii_56","jsCall_viii_57","jsCall_viii_58","jsCall_viii_59","jsCall_viii_60","jsCall_viii_61","jsCall_viii_62","jsCall_viii_63","jsCall_viii_64","jsCall_viii_65","jsCall_viii_66","jsCall_viii_67","jsCall_viii_68","jsCall_viii_69","jsCall_viii_70","jsCall_viii_71","jsCall_viii_72","jsCall_viii_73","jsCall_viii_74","jsCall_viii_75","jsCall_viii_76","jsCall_viii_77","jsCall_viii_78","jsCall_viii_79","jsCall_viii_80","jsCall_viii_81","jsCall_viii_82","jsCall_viii_83","jsCall_viii_84","jsCall_viii_85","jsCall_viii_86","jsCall_viii_87","jsCall_viii_88","jsCall_viii_89","jsCall_viii_90","jsCall_viii_91","jsCall_viii_92","jsCall_viii_93","jsCall_viii_94","jsCall_viii_95","jsCall_viii_96","jsCall_viii_97","jsCall_viii_98","jsCall_viii_99","_avcHandleFrame","_handleFrame","_sdt_cb","_pat_cb","_pmt_cb","_scte_data_cb","_m4sl_cb","_chrRangeFromJpeg_c","_chrRangeToJpeg_c","_chrRangeFromJpeg16_c","_chrRangeToJpeg16_c","_rgb15to16_c","_rgb15tobgr24_c","_rgb15to32_c","_rgb16tobgr24_c","_rgb16to32_c","_rgb16to15_c","_rgb24tobgr16_c","_rgb24tobgr15_c","_rgb24tobgr32_c","_rgb32to16_c","_rgb32to15_c","_rgb32tobgr24_c","_rgb24to15_c","_rgb24to16_c","_rgb24tobgr24_c","_shuffle_bytes_0321_c","_shuffle_bytes_2103_c","_shuffle_bytes_1230_c","_shuffle_bytes_3012_c","_shuffle_bytes_3210_c","_rgb32tobgr16_c","_rgb32tobgr15_c","_rgb48tobgr48_bswap","_rgb48tobgr64_bswap","_rgb48to64_bswap","_rgb64to48_bswap","_rgb48tobgr48_nobswap","_rgb48tobgr64_nobswap","_rgb48to64_nobswap","_rgb64tobgr48_nobswap","_rgb64tobgr48_bswap","_rgb64to48_nobswap","_rgb12to15","_rgb15to24","_rgb16to24","_rgb32to24","_rgb24to32","_rgb12tobgr12","_rgb15tobgr15","_rgb16tobgr15","_rgb15tobgr16","_rgb16tobgr16","_rgb15tobgr32","_rgb16tobgr32","_just_return","_add_residual4x4_9","_add_residual8x8_9","_add_residual16x16_9","_add_residual32x32_9","_transform_rdpcm_9","_add_residual4x4_10","_add_residual8x8_10","_add_residual16x16_10","_add_residual32x32_10","_transform_rdpcm_10","_add_residual4x4_12","_add_residual8x8_12","_add_residual16x16_12","_add_residual32x32_12","_transform_rdpcm_12","_add_residual4x4_8","_add_residual8x8_8","_add_residual16x16_8","_add_residual32x32_8","_transform_rdpcm_8","_bswap_buf","_bswap16_buf","_ps_add_squares_c","_sbr_qmf_deint_bfly_c","_ff_h264_add_pixels4_8_c","_ff_h264_add_pixels8_8_c","_ff_h264_idct_add_8_c","_ff_h264_idct8_add_8_c","_ff_h264_idct_dc_add_8_c","_ff_h264_idct8_dc_add_8_c","_ff_h264_luma_dc_dequant_idct_8_c","_ff_imdct_calc_c","_ff_imdct_half_c","_ff_mdct_calc_c","_butterflies_float_c",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,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];var debug_table_viiii=[0,"jsCall_viiii_0","jsCall_viiii_1","jsCall_viiii_2","jsCall_viiii_3","jsCall_viiii_4","jsCall_viiii_5","jsCall_viiii_6","jsCall_viiii_7","jsCall_viiii_8","jsCall_viiii_9","jsCall_viiii_10","jsCall_viiii_11","jsCall_viiii_12","jsCall_viiii_13","jsCall_viiii_14","jsCall_viiii_15","jsCall_viiii_16","jsCall_viiii_17","jsCall_viiii_18","jsCall_viiii_19","jsCall_viiii_20","jsCall_viiii_21","jsCall_viiii_22","jsCall_viiii_23","jsCall_viiii_24","jsCall_viiii_25","jsCall_viiii_26","jsCall_viiii_27","jsCall_viiii_28","jsCall_viiii_29","jsCall_viiii_30","jsCall_viiii_31","jsCall_viiii_32","jsCall_viiii_33","jsCall_viiii_34","jsCall_viiii_35","jsCall_viiii_36","jsCall_viiii_37","jsCall_viiii_38","jsCall_viiii_39","jsCall_viiii_40","jsCall_viiii_41","jsCall_viiii_42","jsCall_viiii_43","jsCall_viiii_44","jsCall_viiii_45","jsCall_viiii_46","jsCall_viiii_47","jsCall_viiii_48","jsCall_viiii_49","jsCall_viiii_50","jsCall_viiii_51","jsCall_viiii_52","jsCall_viiii_53","jsCall_viiii_54","jsCall_viiii_55","jsCall_viiii_56","jsCall_viiii_57","jsCall_viiii_58","jsCall_viiii_59","jsCall_viiii_60","jsCall_viiii_61","jsCall_viiii_62","jsCall_viiii_63","jsCall_viiii_64","jsCall_viiii_65","jsCall_viiii_66","jsCall_viiii_67","jsCall_viiii_68","jsCall_viiii_69","jsCall_viiii_70","jsCall_viiii_71","jsCall_viiii_72","jsCall_viiii_73","jsCall_viiii_74","jsCall_viiii_75","jsCall_viiii_76","jsCall_viiii_77","jsCall_viiii_78","jsCall_viiii_79","jsCall_viiii_80","jsCall_viiii_81","jsCall_viiii_82","jsCall_viiii_83","jsCall_viiii_84","jsCall_viiii_85","jsCall_viiii_86","jsCall_viiii_87","jsCall_viiii_88","jsCall_viiii_89","jsCall_viiii_90","jsCall_viiii_91","jsCall_viiii_92","jsCall_viiii_93","jsCall_viiii_94","jsCall_viiii_95","jsCall_viiii_96","jsCall_viiii_97","jsCall_viiii_98","jsCall_viiii_99","_planar_rgb9le_to_y","_planar_rgb10le_to_a","_planar_rgb10le_to_y","_planar_rgb12le_to_a","_planar_rgb12le_to_y","_planar_rgb14le_to_y","_planar_rgb16le_to_a","_planar_rgb16le_to_y","_planar_rgb9be_to_y","_planar_rgb10be_to_a","_planar_rgb10be_to_y","_planar_rgb12be_to_a","_planar_rgb12be_to_y","_planar_rgb14be_to_y","_planar_rgb16be_to_a","_planar_rgb16be_to_y","_planar_rgb_to_a","_planar_rgb_to_y","_gray8aToPacked32","_gray8aToPacked32_1","_gray8aToPacked24","_sws_convertPalette8ToPacked32","_sws_convertPalette8ToPacked24","_intra_pred_2_9","_intra_pred_3_9","_intra_pred_4_9","_intra_pred_5_9","_pred_planar_0_9","_pred_planar_1_9","_pred_planar_2_9","_pred_planar_3_9","_intra_pred_2_10","_intra_pred_3_10","_intra_pred_4_10","_intra_pred_5_10","_pred_planar_0_10","_pred_planar_1_10","_pred_planar_2_10","_pred_planar_3_10","_intra_pred_2_12","_intra_pred_3_12","_intra_pred_4_12","_intra_pred_5_12","_pred_planar_0_12","_pred_planar_1_12","_pred_planar_2_12","_pred_planar_3_12","_intra_pred_2_8","_intra_pred_3_8","_intra_pred_4_8","_intra_pred_5_8","_pred_planar_0_8","_pred_planar_1_8","_pred_planar_2_8","_pred_planar_3_8","_apply_tns","_windowing_and_mdct_ltp","_ps_mul_pair_single_c","_ps_hybrid_analysis_ileave_c","_ps_hybrid_synthesis_deint_c","_h264_v_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_mbaff_intra_8_c","_h264_v_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_mbaff_intra_8_c","_fft15_c","_mdct15","_imdct15_half","_vector_fmul_c","_vector_dmul_c","_vector_fmul_reverse_c",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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiid=[0,"jsCall_viiiid_0","jsCall_viiiid_1","jsCall_viiiid_2","jsCall_viiiid_3","jsCall_viiiid_4","jsCall_viiiid_5","jsCall_viiiid_6","jsCall_viiiid_7","jsCall_viiiid_8","jsCall_viiiid_9","jsCall_viiiid_10","jsCall_viiiid_11","jsCall_viiiid_12","jsCall_viiiid_13","jsCall_viiiid_14","jsCall_viiiid_15","jsCall_viiiid_16","jsCall_viiiid_17","jsCall_viiiid_18","jsCall_viiiid_19","jsCall_viiiid_20","jsCall_viiiid_21","jsCall_viiiid_22","jsCall_viiiid_23","jsCall_viiiid_24","jsCall_viiiid_25","jsCall_viiiid_26","jsCall_viiiid_27","jsCall_viiiid_28","jsCall_viiiid_29","jsCall_viiiid_30","jsCall_viiiid_31","jsCall_viiiid_32","jsCall_viiiid_33","jsCall_viiiid_34","jsCall_viiiid_35","jsCall_viiiid_36","jsCall_viiiid_37","jsCall_viiiid_38","jsCall_viiiid_39","jsCall_viiiid_40","jsCall_viiiid_41","jsCall_viiiid_42","jsCall_viiiid_43","jsCall_viiiid_44","jsCall_viiiid_45","jsCall_viiiid_46","jsCall_viiiid_47","jsCall_viiiid_48","jsCall_viiiid_49","jsCall_viiiid_50","jsCall_viiiid_51","jsCall_viiiid_52","jsCall_viiiid_53","jsCall_viiiid_54","jsCall_viiiid_55","jsCall_viiiid_56","jsCall_viiiid_57","jsCall_viiiid_58","jsCall_viiiid_59","jsCall_viiiid_60","jsCall_viiiid_61","jsCall_viiiid_62","jsCall_viiiid_63","jsCall_viiiid_64","jsCall_viiiid_65","jsCall_viiiid_66","jsCall_viiiid_67","jsCall_viiiid_68","jsCall_viiiid_69","jsCall_viiiid_70","jsCall_viiiid_71","jsCall_viiiid_72","jsCall_viiiid_73","jsCall_viiiid_74","jsCall_viiiid_75","jsCall_viiiid_76","jsCall_viiiid_77","jsCall_viiiid_78","jsCall_viiiid_79","jsCall_viiiid_80","jsCall_viiiid_81","jsCall_viiiid_82","jsCall_viiiid_83","jsCall_viiiid_84","jsCall_viiiid_85","jsCall_viiiid_86","jsCall_viiiid_87","jsCall_viiiid_88","jsCall_viiiid_89","jsCall_viiiid_90","jsCall_viiiid_91","jsCall_viiiid_92","jsCall_viiiid_93","jsCall_viiiid_94","jsCall_viiiid_95","jsCall_viiiid_96","jsCall_viiiid_97","jsCall_viiiid_98","jsCall_viiiid_99",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];var debug_table_viiiifii=[0,"jsCall_viiiifii_0","jsCall_viiiifii_1","jsCall_viiiifii_2","jsCall_viiiifii_3","jsCall_viiiifii_4","jsCall_viiiifii_5","jsCall_viiiifii_6","jsCall_viiiifii_7","jsCall_viiiifii_8","jsCall_viiiifii_9","jsCall_viiiifii_10","jsCall_viiiifii_11","jsCall_viiiifii_12","jsCall_viiiifii_13","jsCall_viiiifii_14","jsCall_viiiifii_15","jsCall_viiiifii_16","jsCall_viiiifii_17","jsCall_viiiifii_18","jsCall_viiiifii_19","jsCall_viiiifii_20","jsCall_viiiifii_21","jsCall_viiiifii_22","jsCall_viiiifii_23","jsCall_viiiifii_24","jsCall_viiiifii_25","jsCall_viiiifii_26","jsCall_viiiifii_27","jsCall_viiiifii_28","jsCall_viiiifii_29","jsCall_viiiifii_30","jsCall_viiiifii_31","jsCall_viiiifii_32","jsCall_viiiifii_33","jsCall_viiiifii_34","jsCall_viiiifii_35","jsCall_viiiifii_36","jsCall_viiiifii_37","jsCall_viiiifii_38","jsCall_viiiifii_39","jsCall_viiiifii_40","jsCall_viiiifii_41","jsCall_viiiifii_42","jsCall_viiiifii_43","jsCall_viiiifii_44","jsCall_viiiifii_45","jsCall_viiiifii_46","jsCall_viiiifii_47","jsCall_viiiifii_48","jsCall_viiiifii_49","jsCall_viiiifii_50","jsCall_viiiifii_51","jsCall_viiiifii_52","jsCall_viiiifii_53","jsCall_viiiifii_54","jsCall_viiiifii_55","jsCall_viiiifii_56","jsCall_viiiifii_57","jsCall_viiiifii_58","jsCall_viiiifii_59","jsCall_viiiifii_60","jsCall_viiiifii_61","jsCall_viiiifii_62","jsCall_viiiifii_63","jsCall_viiiifii_64","jsCall_viiiifii_65","jsCall_viiiifii_66","jsCall_viiiifii_67","jsCall_viiiifii_68","jsCall_viiiifii_69","jsCall_viiiifii_70","jsCall_viiiifii_71","jsCall_viiiifii_72","jsCall_viiiifii_73","jsCall_viiiifii_74","jsCall_viiiifii_75","jsCall_viiiifii_76","jsCall_viiiifii_77","jsCall_viiiifii_78","jsCall_viiiifii_79","jsCall_viiiifii_80","jsCall_viiiifii_81","jsCall_viiiifii_82","jsCall_viiiifii_83","jsCall_viiiifii_84","jsCall_viiiifii_85","jsCall_viiiifii_86","jsCall_viiiifii_87","jsCall_viiiifii_88","jsCall_viiiifii_89","jsCall_viiiifii_90","jsCall_viiiifii_91","jsCall_viiiifii_92","jsCall_viiiifii_93","jsCall_viiiifii_94","jsCall_viiiifii_95","jsCall_viiiifii_96","jsCall_viiiifii_97","jsCall_viiiifii_98","jsCall_viiiifii_99","_sbr_hf_gen_c",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];var debug_table_viiiii=[0,"jsCall_viiiii_0","jsCall_viiiii_1","jsCall_viiiii_2","jsCall_viiiii_3","jsCall_viiiii_4","jsCall_viiiii_5","jsCall_viiiii_6","jsCall_viiiii_7","jsCall_viiiii_8","jsCall_viiiii_9","jsCall_viiiii_10","jsCall_viiiii_11","jsCall_viiiii_12","jsCall_viiiii_13","jsCall_viiiii_14","jsCall_viiiii_15","jsCall_viiiii_16","jsCall_viiiii_17","jsCall_viiiii_18","jsCall_viiiii_19","jsCall_viiiii_20","jsCall_viiiii_21","jsCall_viiiii_22","jsCall_viiiii_23","jsCall_viiiii_24","jsCall_viiiii_25","jsCall_viiiii_26","jsCall_viiiii_27","jsCall_viiiii_28","jsCall_viiiii_29","jsCall_viiiii_30","jsCall_viiiii_31","jsCall_viiiii_32","jsCall_viiiii_33","jsCall_viiiii_34","jsCall_viiiii_35","jsCall_viiiii_36","jsCall_viiiii_37","jsCall_viiiii_38","jsCall_viiiii_39","jsCall_viiiii_40","jsCall_viiiii_41","jsCall_viiiii_42","jsCall_viiiii_43","jsCall_viiiii_44","jsCall_viiiii_45","jsCall_viiiii_46","jsCall_viiiii_47","jsCall_viiiii_48","jsCall_viiiii_49","jsCall_viiiii_50","jsCall_viiiii_51","jsCall_viiiii_52","jsCall_viiiii_53","jsCall_viiiii_54","jsCall_viiiii_55","jsCall_viiiii_56","jsCall_viiiii_57","jsCall_viiiii_58","jsCall_viiiii_59","jsCall_viiiii_60","jsCall_viiiii_61","jsCall_viiiii_62","jsCall_viiiii_63","jsCall_viiiii_64","jsCall_viiiii_65","jsCall_viiiii_66","jsCall_viiiii_67","jsCall_viiiii_68","jsCall_viiiii_69","jsCall_viiiii_70","jsCall_viiiii_71","jsCall_viiiii_72","jsCall_viiiii_73","jsCall_viiiii_74","jsCall_viiiii_75","jsCall_viiiii_76","jsCall_viiiii_77","jsCall_viiiii_78","jsCall_viiiii_79","jsCall_viiiii_80","jsCall_viiiii_81","jsCall_viiiii_82","jsCall_viiiii_83","jsCall_viiiii_84","jsCall_viiiii_85","jsCall_viiiii_86","jsCall_viiiii_87","jsCall_viiiii_88","jsCall_viiiii_89","jsCall_viiiii_90","jsCall_viiiii_91","jsCall_viiiii_92","jsCall_viiiii_93","jsCall_viiiii_94","jsCall_viiiii_95","jsCall_viiiii_96","jsCall_viiiii_97","jsCall_viiiii_98","jsCall_viiiii_99","_planar_rgb9le_to_uv","_planar_rgb10le_to_uv","_planar_rgb12le_to_uv","_planar_rgb14le_to_uv","_planar_rgb16le_to_uv","_planar_rgb9be_to_uv","_planar_rgb10be_to_uv","_planar_rgb12be_to_uv","_planar_rgb14be_to_uv","_planar_rgb16be_to_uv","_planar_rgb_to_uv","_yuv2p010l1_LE_c","_yuv2p010l1_BE_c","_yuv2plane1_16LE_c","_yuv2plane1_16BE_c","_yuv2plane1_9LE_c","_yuv2plane1_9BE_c","_yuv2plane1_10LE_c","_yuv2plane1_10BE_c","_yuv2plane1_12LE_c","_yuv2plane1_12BE_c","_yuv2plane1_14LE_c","_yuv2plane1_14BE_c","_yuv2plane1_floatBE_c","_yuv2plane1_floatLE_c","_yuv2plane1_8_c","_bayer_bggr8_to_rgb24_copy","_bayer_bggr8_to_rgb24_interpolate","_bayer_bggr16le_to_rgb24_copy","_bayer_bggr16le_to_rgb24_interpolate","_bayer_bggr16be_to_rgb24_copy","_bayer_bggr16be_to_rgb24_interpolate","_bayer_rggb8_to_rgb24_copy","_bayer_rggb8_to_rgb24_interpolate","_bayer_rggb16le_to_rgb24_copy","_bayer_rggb16le_to_rgb24_interpolate","_bayer_rggb16be_to_rgb24_copy","_bayer_rggb16be_to_rgb24_interpolate","_bayer_gbrg8_to_rgb24_copy","_bayer_gbrg8_to_rgb24_interpolate","_bayer_gbrg16le_to_rgb24_copy","_bayer_gbrg16le_to_rgb24_interpolate","_bayer_gbrg16be_to_rgb24_copy","_bayer_gbrg16be_to_rgb24_interpolate","_bayer_grbg8_to_rgb24_copy","_bayer_grbg8_to_rgb24_interpolate","_bayer_grbg16le_to_rgb24_copy","_bayer_grbg16le_to_rgb24_interpolate","_bayer_grbg16be_to_rgb24_copy","_bayer_grbg16be_to_rgb24_interpolate","_hevc_h_loop_filter_chroma_9","_hevc_v_loop_filter_chroma_9","_hevc_h_loop_filter_chroma_10","_hevc_v_loop_filter_chroma_10","_hevc_h_loop_filter_chroma_12","_hevc_v_loop_filter_chroma_12","_hevc_h_loop_filter_chroma_8","_hevc_v_loop_filter_chroma_8","_worker_func","_ps_hybrid_analysis_c","_ps_stereo_interpolate_c","_ps_stereo_interpolate_ipdopd_c","_sbr_hf_g_filt_c","_sbr_hf_assemble","_sbr_hf_inverse_filter","_ff_h264_idct_add16_8_c","_ff_h264_idct8_add4_8_c","_ff_h264_idct_add8_8_c","_ff_h264_idct_add16intra_8_c","_h264_v_loop_filter_luma_8_c","_h264_h_loop_filter_luma_8_c","_h264_h_loop_filter_luma_mbaff_8_c","_h264_v_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_mbaff_8_c","_postrotate_c","_vector_fmul_window_c","_vector_fmul_add_c",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,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,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiidd=[0,"jsCall_viiiiidd_0","jsCall_viiiiidd_1","jsCall_viiiiidd_2","jsCall_viiiiidd_3","jsCall_viiiiidd_4","jsCall_viiiiidd_5","jsCall_viiiiidd_6","jsCall_viiiiidd_7","jsCall_viiiiidd_8","jsCall_viiiiidd_9","jsCall_viiiiidd_10","jsCall_viiiiidd_11","jsCall_viiiiidd_12","jsCall_viiiiidd_13","jsCall_viiiiidd_14","jsCall_viiiiidd_15","jsCall_viiiiidd_16","jsCall_viiiiidd_17","jsCall_viiiiidd_18","jsCall_viiiiidd_19","jsCall_viiiiidd_20","jsCall_viiiiidd_21","jsCall_viiiiidd_22","jsCall_viiiiidd_23","jsCall_viiiiidd_24","jsCall_viiiiidd_25","jsCall_viiiiidd_26","jsCall_viiiiidd_27","jsCall_viiiiidd_28","jsCall_viiiiidd_29","jsCall_viiiiidd_30","jsCall_viiiiidd_31","jsCall_viiiiidd_32","jsCall_viiiiidd_33","jsCall_viiiiidd_34","jsCall_viiiiidd_35","jsCall_viiiiidd_36","jsCall_viiiiidd_37","jsCall_viiiiidd_38","jsCall_viiiiidd_39","jsCall_viiiiidd_40","jsCall_viiiiidd_41","jsCall_viiiiidd_42","jsCall_viiiiidd_43","jsCall_viiiiidd_44","jsCall_viiiiidd_45","jsCall_viiiiidd_46","jsCall_viiiiidd_47","jsCall_viiiiidd_48","jsCall_viiiiidd_49","jsCall_viiiiidd_50","jsCall_viiiiidd_51","jsCall_viiiiidd_52","jsCall_viiiiidd_53","jsCall_viiiiidd_54","jsCall_viiiiidd_55","jsCall_viiiiidd_56","jsCall_viiiiidd_57","jsCall_viiiiidd_58","jsCall_viiiiidd_59","jsCall_viiiiidd_60","jsCall_viiiiidd_61","jsCall_viiiiidd_62","jsCall_viiiiidd_63","jsCall_viiiiidd_64","jsCall_viiiiidd_65","jsCall_viiiiidd_66","jsCall_viiiiidd_67","jsCall_viiiiidd_68","jsCall_viiiiidd_69","jsCall_viiiiidd_70","jsCall_viiiiidd_71","jsCall_viiiiidd_72","jsCall_viiiiidd_73","jsCall_viiiiidd_74","jsCall_viiiiidd_75","jsCall_viiiiidd_76","jsCall_viiiiidd_77","jsCall_viiiiidd_78","jsCall_viiiiidd_79","jsCall_viiiiidd_80","jsCall_viiiiidd_81","jsCall_viiiiidd_82","jsCall_viiiiidd_83","jsCall_viiiiidd_84","jsCall_viiiiidd_85","jsCall_viiiiidd_86","jsCall_viiiiidd_87","jsCall_viiiiidd_88","jsCall_viiiiidd_89","jsCall_viiiiidd_90","jsCall_viiiiidd_91","jsCall_viiiiidd_92","jsCall_viiiiidd_93","jsCall_viiiiidd_94","jsCall_viiiiidd_95","jsCall_viiiiidd_96","jsCall_viiiiidd_97","jsCall_viiiiidd_98","jsCall_viiiiidd_99",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];var debug_table_viiiiii=[0,"jsCall_viiiiii_0","jsCall_viiiiii_1","jsCall_viiiiii_2","jsCall_viiiiii_3","jsCall_viiiiii_4","jsCall_viiiiii_5","jsCall_viiiiii_6","jsCall_viiiiii_7","jsCall_viiiiii_8","jsCall_viiiiii_9","jsCall_viiiiii_10","jsCall_viiiiii_11","jsCall_viiiiii_12","jsCall_viiiiii_13","jsCall_viiiiii_14","jsCall_viiiiii_15","jsCall_viiiiii_16","jsCall_viiiiii_17","jsCall_viiiiii_18","jsCall_viiiiii_19","jsCall_viiiiii_20","jsCall_viiiiii_21","jsCall_viiiiii_22","jsCall_viiiiii_23","jsCall_viiiiii_24","jsCall_viiiiii_25","jsCall_viiiiii_26","jsCall_viiiiii_27","jsCall_viiiiii_28","jsCall_viiiiii_29","jsCall_viiiiii_30","jsCall_viiiiii_31","jsCall_viiiiii_32","jsCall_viiiiii_33","jsCall_viiiiii_34","jsCall_viiiiii_35","jsCall_viiiiii_36","jsCall_viiiiii_37","jsCall_viiiiii_38","jsCall_viiiiii_39","jsCall_viiiiii_40","jsCall_viiiiii_41","jsCall_viiiiii_42","jsCall_viiiiii_43","jsCall_viiiiii_44","jsCall_viiiiii_45","jsCall_viiiiii_46","jsCall_viiiiii_47","jsCall_viiiiii_48","jsCall_viiiiii_49","jsCall_viiiiii_50","jsCall_viiiiii_51","jsCall_viiiiii_52","jsCall_viiiiii_53","jsCall_viiiiii_54","jsCall_viiiiii_55","jsCall_viiiiii_56","jsCall_viiiiii_57","jsCall_viiiiii_58","jsCall_viiiiii_59","jsCall_viiiiii_60","jsCall_viiiiii_61","jsCall_viiiiii_62","jsCall_viiiiii_63","jsCall_viiiiii_64","jsCall_viiiiii_65","jsCall_viiiiii_66","jsCall_viiiiii_67","jsCall_viiiiii_68","jsCall_viiiiii_69","jsCall_viiiiii_70","jsCall_viiiiii_71","jsCall_viiiiii_72","jsCall_viiiiii_73","jsCall_viiiiii_74","jsCall_viiiiii_75","jsCall_viiiiii_76","jsCall_viiiiii_77","jsCall_viiiiii_78","jsCall_viiiiii_79","jsCall_viiiiii_80","jsCall_viiiiii_81","jsCall_viiiiii_82","jsCall_viiiiii_83","jsCall_viiiiii_84","jsCall_viiiiii_85","jsCall_viiiiii_86","jsCall_viiiiii_87","jsCall_viiiiii_88","jsCall_viiiiii_89","jsCall_viiiiii_90","jsCall_viiiiii_91","jsCall_viiiiii_92","jsCall_viiiiii_93","jsCall_viiiiii_94","jsCall_viiiiii_95","jsCall_viiiiii_96","jsCall_viiiiii_97","jsCall_viiiiii_98","jsCall_viiiiii_99","_read_geobtag","_read_apic","_read_chapter","_read_priv","_ff_hyscale_fast_c","_bswap16Y_c","_read_ya16le_gray_c","_read_ya16be_gray_c","_read_ayuv64le_Y_c","_yuy2ToY_c","_uyvyToY_c","_bgr24ToY_c","_bgr16leToY_c","_bgr16beToY_c","_bgr15leToY_c","_bgr15beToY_c","_bgr12leToY_c","_bgr12beToY_c","_rgb24ToY_c","_rgb16leToY_c","_rgb16beToY_c","_rgb15leToY_c","_rgb15beToY_c","_rgb12leToY_c","_rgb12beToY_c","_palToY_c","_monoblack2Y_c","_monowhite2Y_c","_bgr32ToY_c","_bgr321ToY_c","_rgb32ToY_c","_rgb321ToY_c","_rgb48BEToY_c","_rgb48LEToY_c","_bgr48BEToY_c","_bgr48LEToY_c","_rgb64BEToY_c","_rgb64LEToY_c","_bgr64BEToY_c","_bgr64LEToY_c","_p010LEToY_c","_p010BEToY_c","_grayf32ToY16_c","_grayf32ToY16_bswap_c","_rgba64leToA_c","_rgba64beToA_c","_rgbaToA_c","_abgrToA_c","_read_ya16le_alpha_c","_read_ya16be_alpha_c","_read_ayuv64le_A_c","_palToA_c","_pred_dc_9","_pred_angular_0_9","_pred_angular_1_9","_pred_angular_2_9","_pred_angular_3_9","_pred_dc_10","_pred_angular_0_10","_pred_angular_1_10","_pred_angular_2_10","_pred_angular_3_10","_pred_dc_12","_pred_angular_0_12","_pred_angular_1_12","_pred_angular_2_12","_pred_angular_3_12","_pred_dc_8","_pred_angular_0_8","_pred_angular_1_8","_pred_angular_2_8","_pred_angular_3_8","_put_pcm_9","_hevc_h_loop_filter_luma_9","_hevc_v_loop_filter_luma_9","_put_pcm_10","_hevc_h_loop_filter_luma_10","_hevc_v_loop_filter_luma_10","_put_pcm_12","_hevc_h_loop_filter_luma_12","_hevc_v_loop_filter_luma_12","_put_pcm_8","_hevc_h_loop_filter_luma_8","_hevc_v_loop_filter_luma_8","_sbr_hf_apply_noise_0","_sbr_hf_apply_noise_1","_sbr_hf_apply_noise_2","_sbr_hf_apply_noise_3","_weight_h264_pixels16_8_c","_weight_h264_pixels8_8_c","_weight_h264_pixels4_8_c","_weight_h264_pixels2_8_c","_aes_decrypt","_aes_encrypt",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,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];var debug_table_viiiiiifi=[0,"jsCall_viiiiiifi_0","jsCall_viiiiiifi_1","jsCall_viiiiiifi_2","jsCall_viiiiiifi_3","jsCall_viiiiiifi_4","jsCall_viiiiiifi_5","jsCall_viiiiiifi_6","jsCall_viiiiiifi_7","jsCall_viiiiiifi_8","jsCall_viiiiiifi_9","jsCall_viiiiiifi_10","jsCall_viiiiiifi_11","jsCall_viiiiiifi_12","jsCall_viiiiiifi_13","jsCall_viiiiiifi_14","jsCall_viiiiiifi_15","jsCall_viiiiiifi_16","jsCall_viiiiiifi_17","jsCall_viiiiiifi_18","jsCall_viiiiiifi_19","jsCall_viiiiiifi_20","jsCall_viiiiiifi_21","jsCall_viiiiiifi_22","jsCall_viiiiiifi_23","jsCall_viiiiiifi_24","jsCall_viiiiiifi_25","jsCall_viiiiiifi_26","jsCall_viiiiiifi_27","jsCall_viiiiiifi_28","jsCall_viiiiiifi_29","jsCall_viiiiiifi_30","jsCall_viiiiiifi_31","jsCall_viiiiiifi_32","jsCall_viiiiiifi_33","jsCall_viiiiiifi_34","jsCall_viiiiiifi_35","jsCall_viiiiiifi_36","jsCall_viiiiiifi_37","jsCall_viiiiiifi_38","jsCall_viiiiiifi_39","jsCall_viiiiiifi_40","jsCall_viiiiiifi_41","jsCall_viiiiiifi_42","jsCall_viiiiiifi_43","jsCall_viiiiiifi_44","jsCall_viiiiiifi_45","jsCall_viiiiiifi_46","jsCall_viiiiiifi_47","jsCall_viiiiiifi_48","jsCall_viiiiiifi_49","jsCall_viiiiiifi_50","jsCall_viiiiiifi_51","jsCall_viiiiiifi_52","jsCall_viiiiiifi_53","jsCall_viiiiiifi_54","jsCall_viiiiiifi_55","jsCall_viiiiiifi_56","jsCall_viiiiiifi_57","jsCall_viiiiiifi_58","jsCall_viiiiiifi_59","jsCall_viiiiiifi_60","jsCall_viiiiiifi_61","jsCall_viiiiiifi_62","jsCall_viiiiiifi_63","jsCall_viiiiiifi_64","jsCall_viiiiiifi_65","jsCall_viiiiiifi_66","jsCall_viiiiiifi_67","jsCall_viiiiiifi_68","jsCall_viiiiiifi_69","jsCall_viiiiiifi_70","jsCall_viiiiiifi_71","jsCall_viiiiiifi_72","jsCall_viiiiiifi_73","jsCall_viiiiiifi_74","jsCall_viiiiiifi_75","jsCall_viiiiiifi_76","jsCall_viiiiiifi_77","jsCall_viiiiiifi_78","jsCall_viiiiiifi_79","jsCall_viiiiiifi_80","jsCall_viiiiiifi_81","jsCall_viiiiiifi_82","jsCall_viiiiiifi_83","jsCall_viiiiiifi_84","jsCall_viiiiiifi_85","jsCall_viiiiiifi_86","jsCall_viiiiiifi_87","jsCall_viiiiiifi_88","jsCall_viiiiiifi_89","jsCall_viiiiiifi_90","jsCall_viiiiiifi_91","jsCall_viiiiiifi_92","jsCall_viiiiiifi_93","jsCall_viiiiiifi_94","jsCall_viiiiiifi_95","jsCall_viiiiiifi_96","jsCall_viiiiiifi_97","jsCall_viiiiiifi_98","jsCall_viiiiiifi_99","_ps_decorrelate_c",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];var debug_table_viiiiiii=[0,"jsCall_viiiiiii_0","jsCall_viiiiiii_1","jsCall_viiiiiii_2","jsCall_viiiiiii_3","jsCall_viiiiiii_4","jsCall_viiiiiii_5","jsCall_viiiiiii_6","jsCall_viiiiiii_7","jsCall_viiiiiii_8","jsCall_viiiiiii_9","jsCall_viiiiiii_10","jsCall_viiiiiii_11","jsCall_viiiiiii_12","jsCall_viiiiiii_13","jsCall_viiiiiii_14","jsCall_viiiiiii_15","jsCall_viiiiiii_16","jsCall_viiiiiii_17","jsCall_viiiiiii_18","jsCall_viiiiiii_19","jsCall_viiiiiii_20","jsCall_viiiiiii_21","jsCall_viiiiiii_22","jsCall_viiiiiii_23","jsCall_viiiiiii_24","jsCall_viiiiiii_25","jsCall_viiiiiii_26","jsCall_viiiiiii_27","jsCall_viiiiiii_28","jsCall_viiiiiii_29","jsCall_viiiiiii_30","jsCall_viiiiiii_31","jsCall_viiiiiii_32","jsCall_viiiiiii_33","jsCall_viiiiiii_34","jsCall_viiiiiii_35","jsCall_viiiiiii_36","jsCall_viiiiiii_37","jsCall_viiiiiii_38","jsCall_viiiiiii_39","jsCall_viiiiiii_40","jsCall_viiiiiii_41","jsCall_viiiiiii_42","jsCall_viiiiiii_43","jsCall_viiiiiii_44","jsCall_viiiiiii_45","jsCall_viiiiiii_46","jsCall_viiiiiii_47","jsCall_viiiiiii_48","jsCall_viiiiiii_49","jsCall_viiiiiii_50","jsCall_viiiiiii_51","jsCall_viiiiiii_52","jsCall_viiiiiii_53","jsCall_viiiiiii_54","jsCall_viiiiiii_55","jsCall_viiiiiii_56","jsCall_viiiiiii_57","jsCall_viiiiiii_58","jsCall_viiiiiii_59","jsCall_viiiiiii_60","jsCall_viiiiiii_61","jsCall_viiiiiii_62","jsCall_viiiiiii_63","jsCall_viiiiiii_64","jsCall_viiiiiii_65","jsCall_viiiiiii_66","jsCall_viiiiiii_67","jsCall_viiiiiii_68","jsCall_viiiiiii_69","jsCall_viiiiiii_70","jsCall_viiiiiii_71","jsCall_viiiiiii_72","jsCall_viiiiiii_73","jsCall_viiiiiii_74","jsCall_viiiiiii_75","jsCall_viiiiiii_76","jsCall_viiiiiii_77","jsCall_viiiiiii_78","jsCall_viiiiiii_79","jsCall_viiiiiii_80","jsCall_viiiiiii_81","jsCall_viiiiiii_82","jsCall_viiiiiii_83","jsCall_viiiiiii_84","jsCall_viiiiiii_85","jsCall_viiiiiii_86","jsCall_viiiiiii_87","jsCall_viiiiiii_88","jsCall_viiiiiii_89","jsCall_viiiiiii_90","jsCall_viiiiiii_91","jsCall_viiiiiii_92","jsCall_viiiiiii_93","jsCall_viiiiiii_94","jsCall_viiiiiii_95","jsCall_viiiiiii_96","jsCall_viiiiiii_97","jsCall_viiiiiii_98","jsCall_viiiiiii_99","_hScale8To15_c","_hScale8To19_c","_hScale16To19_c","_hScale16To15_c","_yuy2ToUV_c","_yvy2ToUV_c","_uyvyToUV_c","_nv12ToUV_c","_nv21ToUV_c","_palToUV_c","_bswap16UV_c","_read_ayuv64le_UV_c","_p010LEToUV_c","_p010BEToUV_c","_p016LEToUV_c","_p016BEToUV_c","_gbr24pToUV_half_c","_rgb64BEToUV_half_c","_rgb64LEToUV_half_c","_bgr64BEToUV_half_c","_bgr64LEToUV_half_c","_rgb48BEToUV_half_c","_rgb48LEToUV_half_c","_bgr48BEToUV_half_c","_bgr48LEToUV_half_c","_bgr32ToUV_half_c","_bgr321ToUV_half_c","_bgr24ToUV_half_c","_bgr16leToUV_half_c","_bgr16beToUV_half_c","_bgr15leToUV_half_c","_bgr15beToUV_half_c","_bgr12leToUV_half_c","_bgr12beToUV_half_c","_rgb32ToUV_half_c","_rgb321ToUV_half_c","_rgb24ToUV_half_c","_rgb16leToUV_half_c","_rgb16beToUV_half_c","_rgb15leToUV_half_c","_rgb15beToUV_half_c","_rgb12leToUV_half_c","_rgb12beToUV_half_c","_rgb64BEToUV_c","_rgb64LEToUV_c","_bgr64BEToUV_c","_bgr64LEToUV_c","_rgb48BEToUV_c","_rgb48LEToUV_c","_bgr48BEToUV_c","_bgr48LEToUV_c","_bgr32ToUV_c","_bgr321ToUV_c","_bgr24ToUV_c","_bgr16leToUV_c","_bgr16beToUV_c","_bgr15leToUV_c","_bgr15beToUV_c","_bgr12leToUV_c","_bgr12beToUV_c","_rgb32ToUV_c","_rgb321ToUV_c","_rgb24ToUV_c","_rgb16leToUV_c","_rgb16beToUV_c","_rgb15leToUV_c","_rgb15beToUV_c","_rgb12leToUV_c","_rgb12beToUV_c","_yuv2p010lX_LE_c","_yuv2p010lX_BE_c","_yuv2p010cX_c","_yuv2planeX_16LE_c","_yuv2planeX_16BE_c","_yuv2p016cX_c","_yuv2planeX_9LE_c","_yuv2planeX_9BE_c","_yuv2planeX_10LE_c","_yuv2planeX_10BE_c","_yuv2planeX_12LE_c","_yuv2planeX_12BE_c","_yuv2planeX_14LE_c","_yuv2planeX_14BE_c","_yuv2planeX_floatBE_c","_yuv2planeX_floatLE_c","_yuv2planeX_8_c","_yuv2nv12cX_c","_sao_edge_filter_9","_put_hevc_pel_pixels_9","_put_hevc_qpel_h_9","_put_hevc_qpel_v_9","_put_hevc_qpel_hv_9","_put_hevc_epel_h_9","_put_hevc_epel_v_9","_put_hevc_epel_hv_9","_sao_edge_filter_10","_put_hevc_pel_pixels_10","_put_hevc_qpel_h_10","_put_hevc_qpel_v_10","_put_hevc_qpel_hv_10","_put_hevc_epel_h_10","_put_hevc_epel_v_10","_put_hevc_epel_hv_10","_sao_edge_filter_12","_put_hevc_pel_pixels_12","_put_hevc_qpel_h_12","_put_hevc_qpel_v_12","_put_hevc_qpel_hv_12","_put_hevc_epel_h_12","_put_hevc_epel_v_12","_put_hevc_epel_hv_12","_sao_edge_filter_8","_put_hevc_pel_pixels_8","_put_hevc_qpel_h_8","_put_hevc_qpel_v_8","_put_hevc_qpel_hv_8","_put_hevc_epel_h_8","_put_hevc_epel_v_8","_put_hevc_epel_hv_8",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,0,0,0];var debug_table_viiiiiiii=[0,"jsCall_viiiiiiii_0","jsCall_viiiiiiii_1","jsCall_viiiiiiii_2","jsCall_viiiiiiii_3","jsCall_viiiiiiii_4","jsCall_viiiiiiii_5","jsCall_viiiiiiii_6","jsCall_viiiiiiii_7","jsCall_viiiiiiii_8","jsCall_viiiiiiii_9","jsCall_viiiiiiii_10","jsCall_viiiiiiii_11","jsCall_viiiiiiii_12","jsCall_viiiiiiii_13","jsCall_viiiiiiii_14","jsCall_viiiiiiii_15","jsCall_viiiiiiii_16","jsCall_viiiiiiii_17","jsCall_viiiiiiii_18","jsCall_viiiiiiii_19","jsCall_viiiiiiii_20","jsCall_viiiiiiii_21","jsCall_viiiiiiii_22","jsCall_viiiiiiii_23","jsCall_viiiiiiii_24","jsCall_viiiiiiii_25","jsCall_viiiiiiii_26","jsCall_viiiiiiii_27","jsCall_viiiiiiii_28","jsCall_viiiiiiii_29","jsCall_viiiiiiii_30","jsCall_viiiiiiii_31","jsCall_viiiiiiii_32","jsCall_viiiiiiii_33","jsCall_viiiiiiii_34","jsCall_viiiiiiii_35","jsCall_viiiiiiii_36","jsCall_viiiiiiii_37","jsCall_viiiiiiii_38","jsCall_viiiiiiii_39","jsCall_viiiiiiii_40","jsCall_viiiiiiii_41","jsCall_viiiiiiii_42","jsCall_viiiiiiii_43","jsCall_viiiiiiii_44","jsCall_viiiiiiii_45","jsCall_viiiiiiii_46","jsCall_viiiiiiii_47","jsCall_viiiiiiii_48","jsCall_viiiiiiii_49","jsCall_viiiiiiii_50","jsCall_viiiiiiii_51","jsCall_viiiiiiii_52","jsCall_viiiiiiii_53","jsCall_viiiiiiii_54","jsCall_viiiiiiii_55","jsCall_viiiiiiii_56","jsCall_viiiiiiii_57","jsCall_viiiiiiii_58","jsCall_viiiiiiii_59","jsCall_viiiiiiii_60","jsCall_viiiiiiii_61","jsCall_viiiiiiii_62","jsCall_viiiiiiii_63","jsCall_viiiiiiii_64","jsCall_viiiiiiii_65","jsCall_viiiiiiii_66","jsCall_viiiiiiii_67","jsCall_viiiiiiii_68","jsCall_viiiiiiii_69","jsCall_viiiiiiii_70","jsCall_viiiiiiii_71","jsCall_viiiiiiii_72","jsCall_viiiiiiii_73","jsCall_viiiiiiii_74","jsCall_viiiiiiii_75","jsCall_viiiiiiii_76","jsCall_viiiiiiii_77","jsCall_viiiiiiii_78","jsCall_viiiiiiii_79","jsCall_viiiiiiii_80","jsCall_viiiiiiii_81","jsCall_viiiiiiii_82","jsCall_viiiiiiii_83","jsCall_viiiiiiii_84","jsCall_viiiiiiii_85","jsCall_viiiiiiii_86","jsCall_viiiiiiii_87","jsCall_viiiiiiii_88","jsCall_viiiiiiii_89","jsCall_viiiiiiii_90","jsCall_viiiiiiii_91","jsCall_viiiiiiii_92","jsCall_viiiiiiii_93","jsCall_viiiiiiii_94","jsCall_viiiiiiii_95","jsCall_viiiiiiii_96","jsCall_viiiiiiii_97","jsCall_viiiiiiii_98","jsCall_viiiiiiii_99","_ff_hcscale_fast_c","_bayer_bggr8_to_yv12_copy","_bayer_bggr8_to_yv12_interpolate","_bayer_bggr16le_to_yv12_copy","_bayer_bggr16le_to_yv12_interpolate","_bayer_bggr16be_to_yv12_copy","_bayer_bggr16be_to_yv12_interpolate","_bayer_rggb8_to_yv12_copy","_bayer_rggb8_to_yv12_interpolate","_bayer_rggb16le_to_yv12_copy","_bayer_rggb16le_to_yv12_interpolate","_bayer_rggb16be_to_yv12_copy","_bayer_rggb16be_to_yv12_interpolate","_bayer_gbrg8_to_yv12_copy","_bayer_gbrg8_to_yv12_interpolate","_bayer_gbrg16le_to_yv12_copy","_bayer_gbrg16le_to_yv12_interpolate","_bayer_gbrg16be_to_yv12_copy","_bayer_gbrg16be_to_yv12_interpolate","_bayer_grbg8_to_yv12_copy","_bayer_grbg8_to_yv12_interpolate","_bayer_grbg16le_to_yv12_copy","_bayer_grbg16le_to_yv12_interpolate","_bayer_grbg16be_to_yv12_copy","_bayer_grbg16be_to_yv12_interpolate","_sao_band_filter_9","_put_hevc_pel_uni_pixels_9","_put_hevc_qpel_uni_h_9","_put_hevc_qpel_uni_v_9","_put_hevc_qpel_uni_hv_9","_put_hevc_epel_uni_h_9","_put_hevc_epel_uni_v_9","_put_hevc_epel_uni_hv_9","_sao_band_filter_10","_put_hevc_pel_uni_pixels_10","_put_hevc_qpel_uni_h_10","_put_hevc_qpel_uni_v_10","_put_hevc_qpel_uni_hv_10","_put_hevc_epel_uni_h_10","_put_hevc_epel_uni_v_10","_put_hevc_epel_uni_hv_10","_sao_band_filter_12","_put_hevc_pel_uni_pixels_12","_put_hevc_qpel_uni_h_12","_put_hevc_qpel_uni_v_12","_put_hevc_qpel_uni_hv_12","_put_hevc_epel_uni_h_12","_put_hevc_epel_uni_v_12","_put_hevc_epel_uni_hv_12","_sao_band_filter_8","_put_hevc_pel_uni_pixels_8","_put_hevc_qpel_uni_h_8","_put_hevc_qpel_uni_v_8","_put_hevc_qpel_uni_hv_8","_put_hevc_epel_uni_h_8","_put_hevc_epel_uni_v_8","_put_hevc_epel_uni_hv_8","_biweight_h264_pixels16_8_c","_biweight_h264_pixels8_8_c","_biweight_h264_pixels4_8_c","_biweight_h264_pixels2_8_c",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,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,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];var debug_table_viiiiiiiid=[0,"jsCall_viiiiiiiid_0","jsCall_viiiiiiiid_1","jsCall_viiiiiiiid_2","jsCall_viiiiiiiid_3","jsCall_viiiiiiiid_4","jsCall_viiiiiiiid_5","jsCall_viiiiiiiid_6","jsCall_viiiiiiiid_7","jsCall_viiiiiiiid_8","jsCall_viiiiiiiid_9","jsCall_viiiiiiiid_10","jsCall_viiiiiiiid_11","jsCall_viiiiiiiid_12","jsCall_viiiiiiiid_13","jsCall_viiiiiiiid_14","jsCall_viiiiiiiid_15","jsCall_viiiiiiiid_16","jsCall_viiiiiiiid_17","jsCall_viiiiiiiid_18","jsCall_viiiiiiiid_19","jsCall_viiiiiiiid_20","jsCall_viiiiiiiid_21","jsCall_viiiiiiiid_22","jsCall_viiiiiiiid_23","jsCall_viiiiiiiid_24","jsCall_viiiiiiiid_25","jsCall_viiiiiiiid_26","jsCall_viiiiiiiid_27","jsCall_viiiiiiiid_28","jsCall_viiiiiiiid_29","jsCall_viiiiiiiid_30","jsCall_viiiiiiiid_31","jsCall_viiiiiiiid_32","jsCall_viiiiiiiid_33","jsCall_viiiiiiiid_34","jsCall_viiiiiiiid_35","jsCall_viiiiiiiid_36","jsCall_viiiiiiiid_37","jsCall_viiiiiiiid_38","jsCall_viiiiiiiid_39","jsCall_viiiiiiiid_40","jsCall_viiiiiiiid_41","jsCall_viiiiiiiid_42","jsCall_viiiiiiiid_43","jsCall_viiiiiiiid_44","jsCall_viiiiiiiid_45","jsCall_viiiiiiiid_46","jsCall_viiiiiiiid_47","jsCall_viiiiiiiid_48","jsCall_viiiiiiiid_49","jsCall_viiiiiiiid_50","jsCall_viiiiiiiid_51","jsCall_viiiiiiiid_52","jsCall_viiiiiiiid_53","jsCall_viiiiiiiid_54","jsCall_viiiiiiiid_55","jsCall_viiiiiiiid_56","jsCall_viiiiiiiid_57","jsCall_viiiiiiiid_58","jsCall_viiiiiiiid_59","jsCall_viiiiiiiid_60","jsCall_viiiiiiiid_61","jsCall_viiiiiiiid_62","jsCall_viiiiiiiid_63","jsCall_viiiiiiiid_64","jsCall_viiiiiiiid_65","jsCall_viiiiiiiid_66","jsCall_viiiiiiiid_67","jsCall_viiiiiiiid_68","jsCall_viiiiiiiid_69","jsCall_viiiiiiiid_70","jsCall_viiiiiiiid_71","jsCall_viiiiiiiid_72","jsCall_viiiiiiiid_73","jsCall_viiiiiiiid_74","jsCall_viiiiiiiid_75","jsCall_viiiiiiiid_76","jsCall_viiiiiiiid_77","jsCall_viiiiiiiid_78","jsCall_viiiiiiiid_79","jsCall_viiiiiiiid_80","jsCall_viiiiiiiid_81","jsCall_viiiiiiiid_82","jsCall_viiiiiiiid_83","jsCall_viiiiiiiid_84","jsCall_viiiiiiiid_85","jsCall_viiiiiiiid_86","jsCall_viiiiiiiid_87","jsCall_viiiiiiiid_88","jsCall_viiiiiiiid_89","jsCall_viiiiiiiid_90","jsCall_viiiiiiiid_91","jsCall_viiiiiiiid_92","jsCall_viiiiiiiid_93","jsCall_viiiiiiiid_94","jsCall_viiiiiiiid_95","jsCall_viiiiiiiid_96","jsCall_viiiiiiiid_97","jsCall_viiiiiiiid_98","jsCall_viiiiiiiid_99",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];var debug_table_viiiiiiiidi=[0,"jsCall_viiiiiiiidi_0","jsCall_viiiiiiiidi_1","jsCall_viiiiiiiidi_2","jsCall_viiiiiiiidi_3","jsCall_viiiiiiiidi_4","jsCall_viiiiiiiidi_5","jsCall_viiiiiiiidi_6","jsCall_viiiiiiiidi_7","jsCall_viiiiiiiidi_8","jsCall_viiiiiiiidi_9","jsCall_viiiiiiiidi_10","jsCall_viiiiiiiidi_11","jsCall_viiiiiiiidi_12","jsCall_viiiiiiiidi_13","jsCall_viiiiiiiidi_14","jsCall_viiiiiiiidi_15","jsCall_viiiiiiiidi_16","jsCall_viiiiiiiidi_17","jsCall_viiiiiiiidi_18","jsCall_viiiiiiiidi_19","jsCall_viiiiiiiidi_20","jsCall_viiiiiiiidi_21","jsCall_viiiiiiiidi_22","jsCall_viiiiiiiidi_23","jsCall_viiiiiiiidi_24","jsCall_viiiiiiiidi_25","jsCall_viiiiiiiidi_26","jsCall_viiiiiiiidi_27","jsCall_viiiiiiiidi_28","jsCall_viiiiiiiidi_29","jsCall_viiiiiiiidi_30","jsCall_viiiiiiiidi_31","jsCall_viiiiiiiidi_32","jsCall_viiiiiiiidi_33","jsCall_viiiiiiiidi_34","jsCall_viiiiiiiidi_35","jsCall_viiiiiiiidi_36","jsCall_viiiiiiiidi_37","jsCall_viiiiiiiidi_38","jsCall_viiiiiiiidi_39","jsCall_viiiiiiiidi_40","jsCall_viiiiiiiidi_41","jsCall_viiiiiiiidi_42","jsCall_viiiiiiiidi_43","jsCall_viiiiiiiidi_44","jsCall_viiiiiiiidi_45","jsCall_viiiiiiiidi_46","jsCall_viiiiiiiidi_47","jsCall_viiiiiiiidi_48","jsCall_viiiiiiiidi_49","jsCall_viiiiiiiidi_50","jsCall_viiiiiiiidi_51","jsCall_viiiiiiiidi_52","jsCall_viiiiiiiidi_53","jsCall_viiiiiiiidi_54","jsCall_viiiiiiiidi_55","jsCall_viiiiiiiidi_56","jsCall_viiiiiiiidi_57","jsCall_viiiiiiiidi_58","jsCall_viiiiiiiidi_59","jsCall_viiiiiiiidi_60","jsCall_viiiiiiiidi_61","jsCall_viiiiiiiidi_62","jsCall_viiiiiiiidi_63","jsCall_viiiiiiiidi_64","jsCall_viiiiiiiidi_65","jsCall_viiiiiiiidi_66","jsCall_viiiiiiiidi_67","jsCall_viiiiiiiidi_68","jsCall_viiiiiiiidi_69","jsCall_viiiiiiiidi_70","jsCall_viiiiiiiidi_71","jsCall_viiiiiiiidi_72","jsCall_viiiiiiiidi_73","jsCall_viiiiiiiidi_74","jsCall_viiiiiiiidi_75","jsCall_viiiiiiiidi_76","jsCall_viiiiiiiidi_77","jsCall_viiiiiiiidi_78","jsCall_viiiiiiiidi_79","jsCall_viiiiiiiidi_80","jsCall_viiiiiiiidi_81","jsCall_viiiiiiiidi_82","jsCall_viiiiiiiidi_83","jsCall_viiiiiiiidi_84","jsCall_viiiiiiiidi_85","jsCall_viiiiiiiidi_86","jsCall_viiiiiiiidi_87","jsCall_viiiiiiiidi_88","jsCall_viiiiiiiidi_89","jsCall_viiiiiiiidi_90","jsCall_viiiiiiiidi_91","jsCall_viiiiiiiidi_92","jsCall_viiiiiiiidi_93","jsCall_viiiiiiiidi_94","jsCall_viiiiiiiidi_95","jsCall_viiiiiiiidi_96","jsCall_viiiiiiiidi_97","jsCall_viiiiiiiidi_98","jsCall_viiiiiiiidi_99",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];var debug_table_viiiiiiiii=[0,"jsCall_viiiiiiiii_0","jsCall_viiiiiiiii_1","jsCall_viiiiiiiii_2","jsCall_viiiiiiiii_3","jsCall_viiiiiiiii_4","jsCall_viiiiiiiii_5","jsCall_viiiiiiiii_6","jsCall_viiiiiiiii_7","jsCall_viiiiiiiii_8","jsCall_viiiiiiiii_9","jsCall_viiiiiiiii_10","jsCall_viiiiiiiii_11","jsCall_viiiiiiiii_12","jsCall_viiiiiiiii_13","jsCall_viiiiiiiii_14","jsCall_viiiiiiiii_15","jsCall_viiiiiiiii_16","jsCall_viiiiiiiii_17","jsCall_viiiiiiiii_18","jsCall_viiiiiiiii_19","jsCall_viiiiiiiii_20","jsCall_viiiiiiiii_21","jsCall_viiiiiiiii_22","jsCall_viiiiiiiii_23","jsCall_viiiiiiiii_24","jsCall_viiiiiiiii_25","jsCall_viiiiiiiii_26","jsCall_viiiiiiiii_27","jsCall_viiiiiiiii_28","jsCall_viiiiiiiii_29","jsCall_viiiiiiiii_30","jsCall_viiiiiiiii_31","jsCall_viiiiiiiii_32","jsCall_viiiiiiiii_33","jsCall_viiiiiiiii_34","jsCall_viiiiiiiii_35","jsCall_viiiiiiiii_36","jsCall_viiiiiiiii_37","jsCall_viiiiiiiii_38","jsCall_viiiiiiiii_39","jsCall_viiiiiiiii_40","jsCall_viiiiiiiii_41","jsCall_viiiiiiiii_42","jsCall_viiiiiiiii_43","jsCall_viiiiiiiii_44","jsCall_viiiiiiiii_45","jsCall_viiiiiiiii_46","jsCall_viiiiiiiii_47","jsCall_viiiiiiiii_48","jsCall_viiiiiiiii_49","jsCall_viiiiiiiii_50","jsCall_viiiiiiiii_51","jsCall_viiiiiiiii_52","jsCall_viiiiiiiii_53","jsCall_viiiiiiiii_54","jsCall_viiiiiiiii_55","jsCall_viiiiiiiii_56","jsCall_viiiiiiiii_57","jsCall_viiiiiiiii_58","jsCall_viiiiiiiii_59","jsCall_viiiiiiiii_60","jsCall_viiiiiiiii_61","jsCall_viiiiiiiii_62","jsCall_viiiiiiiii_63","jsCall_viiiiiiiii_64","jsCall_viiiiiiiii_65","jsCall_viiiiiiiii_66","jsCall_viiiiiiiii_67","jsCall_viiiiiiiii_68","jsCall_viiiiiiiii_69","jsCall_viiiiiiiii_70","jsCall_viiiiiiiii_71","jsCall_viiiiiiiii_72","jsCall_viiiiiiiii_73","jsCall_viiiiiiiii_74","jsCall_viiiiiiiii_75","jsCall_viiiiiiiii_76","jsCall_viiiiiiiii_77","jsCall_viiiiiiiii_78","jsCall_viiiiiiiii_79","jsCall_viiiiiiiii_80","jsCall_viiiiiiiii_81","jsCall_viiiiiiiii_82","jsCall_viiiiiiiii_83","jsCall_viiiiiiiii_84","jsCall_viiiiiiiii_85","jsCall_viiiiiiiii_86","jsCall_viiiiiiiii_87","jsCall_viiiiiiiii_88","jsCall_viiiiiiiii_89","jsCall_viiiiiiiii_90","jsCall_viiiiiiiii_91","jsCall_viiiiiiiii_92","jsCall_viiiiiiiii_93","jsCall_viiiiiiiii_94","jsCall_viiiiiiiii_95","jsCall_viiiiiiiii_96","jsCall_viiiiiiiii_97","jsCall_viiiiiiiii_98","jsCall_viiiiiiiii_99","_yuv2rgba32_full_1_c","_yuv2rgbx32_full_1_c","_yuv2argb32_full_1_c","_yuv2xrgb32_full_1_c","_yuv2bgra32_full_1_c","_yuv2bgrx32_full_1_c","_yuv2abgr32_full_1_c","_yuv2xbgr32_full_1_c","_yuv2rgba64le_full_1_c","_yuv2rgbx64le_full_1_c","_yuv2rgba64be_full_1_c","_yuv2rgbx64be_full_1_c","_yuv2bgra64le_full_1_c","_yuv2bgrx64le_full_1_c","_yuv2bgra64be_full_1_c","_yuv2bgrx64be_full_1_c","_yuv2rgb24_full_1_c","_yuv2bgr24_full_1_c","_yuv2rgb48le_full_1_c","_yuv2bgr48le_full_1_c","_yuv2rgb48be_full_1_c","_yuv2bgr48be_full_1_c","_yuv2bgr4_byte_full_1_c","_yuv2rgb4_byte_full_1_c","_yuv2bgr8_full_1_c","_yuv2rgb8_full_1_c","_yuv2rgbx64le_1_c","_yuv2rgba64le_1_c","_yuv2rgbx64be_1_c","_yuv2rgba64be_1_c","_yuv2bgrx64le_1_c","_yuv2bgra64le_1_c","_yuv2bgrx64be_1_c","_yuv2bgra64be_1_c","_yuv2rgba32_1_c","_yuv2rgbx32_1_c","_yuv2rgba32_1_1_c","_yuv2rgbx32_1_1_c","_yuv2rgb16_1_c","_yuv2rgb15_1_c","_yuv2rgb12_1_c","_yuv2rgb8_1_c","_yuv2rgb4_1_c","_yuv2rgb4b_1_c","_yuv2rgb48le_1_c","_yuv2rgb48be_1_c","_yuv2bgr48le_1_c","_yuv2bgr48be_1_c","_yuv2rgb24_1_c","_yuv2bgr24_1_c","_yuv2monowhite_1_c","_yuv2monoblack_1_c","_yuv2yuyv422_1_c","_yuv2yvyu422_1_c","_yuv2uyvy422_1_c","_yuv2ya8_1_c","_yuv2ya16le_1_c","_yuv2ya16be_1_c","_put_hevc_pel_bi_pixels_9","_put_hevc_qpel_bi_h_9","_put_hevc_qpel_bi_v_9","_put_hevc_qpel_bi_hv_9","_put_hevc_epel_bi_h_9","_put_hevc_epel_bi_v_9","_put_hevc_epel_bi_hv_9","_put_hevc_pel_bi_pixels_10","_put_hevc_qpel_bi_h_10","_put_hevc_qpel_bi_v_10","_put_hevc_qpel_bi_hv_10","_put_hevc_epel_bi_h_10","_put_hevc_epel_bi_v_10","_put_hevc_epel_bi_hv_10","_put_hevc_pel_bi_pixels_12","_put_hevc_qpel_bi_h_12","_put_hevc_qpel_bi_v_12","_put_hevc_qpel_bi_hv_12","_put_hevc_epel_bi_h_12","_put_hevc_epel_bi_v_12","_put_hevc_epel_bi_hv_12","_put_hevc_pel_bi_pixels_8","_put_hevc_qpel_bi_h_8","_put_hevc_qpel_bi_v_8","_put_hevc_qpel_bi_hv_8","_put_hevc_epel_bi_h_8","_put_hevc_epel_bi_v_8","_put_hevc_epel_bi_hv_8",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,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,0,0,0];var debug_table_viiiiiiiiii=[0,"jsCall_viiiiiiiiii_0","jsCall_viiiiiiiiii_1","jsCall_viiiiiiiiii_2","jsCall_viiiiiiiiii_3","jsCall_viiiiiiiiii_4","jsCall_viiiiiiiiii_5","jsCall_viiiiiiiiii_6","jsCall_viiiiiiiiii_7","jsCall_viiiiiiiiii_8","jsCall_viiiiiiiiii_9","jsCall_viiiiiiiiii_10","jsCall_viiiiiiiiii_11","jsCall_viiiiiiiiii_12","jsCall_viiiiiiiiii_13","jsCall_viiiiiiiiii_14","jsCall_viiiiiiiiii_15","jsCall_viiiiiiiiii_16","jsCall_viiiiiiiiii_17","jsCall_viiiiiiiiii_18","jsCall_viiiiiiiiii_19","jsCall_viiiiiiiiii_20","jsCall_viiiiiiiiii_21","jsCall_viiiiiiiiii_22","jsCall_viiiiiiiiii_23","jsCall_viiiiiiiiii_24","jsCall_viiiiiiiiii_25","jsCall_viiiiiiiiii_26","jsCall_viiiiiiiiii_27","jsCall_viiiiiiiiii_28","jsCall_viiiiiiiiii_29","jsCall_viiiiiiiiii_30","jsCall_viiiiiiiiii_31","jsCall_viiiiiiiiii_32","jsCall_viiiiiiiiii_33","jsCall_viiiiiiiiii_34","jsCall_viiiiiiiiii_35","jsCall_viiiiiiiiii_36","jsCall_viiiiiiiiii_37","jsCall_viiiiiiiiii_38","jsCall_viiiiiiiiii_39","jsCall_viiiiiiiiii_40","jsCall_viiiiiiiiii_41","jsCall_viiiiiiiiii_42","jsCall_viiiiiiiiii_43","jsCall_viiiiiiiiii_44","jsCall_viiiiiiiiii_45","jsCall_viiiiiiiiii_46","jsCall_viiiiiiiiii_47","jsCall_viiiiiiiiii_48","jsCall_viiiiiiiiii_49","jsCall_viiiiiiiiii_50","jsCall_viiiiiiiiii_51","jsCall_viiiiiiiiii_52","jsCall_viiiiiiiiii_53","jsCall_viiiiiiiiii_54","jsCall_viiiiiiiiii_55","jsCall_viiiiiiiiii_56","jsCall_viiiiiiiiii_57","jsCall_viiiiiiiiii_58","jsCall_viiiiiiiiii_59","jsCall_viiiiiiiiii_60","jsCall_viiiiiiiiii_61","jsCall_viiiiiiiiii_62","jsCall_viiiiiiiiii_63","jsCall_viiiiiiiiii_64","jsCall_viiiiiiiiii_65","jsCall_viiiiiiiiii_66","jsCall_viiiiiiiiii_67","jsCall_viiiiiiiiii_68","jsCall_viiiiiiiiii_69","jsCall_viiiiiiiiii_70","jsCall_viiiiiiiiii_71","jsCall_viiiiiiiiii_72","jsCall_viiiiiiiiii_73","jsCall_viiiiiiiiii_74","jsCall_viiiiiiiiii_75","jsCall_viiiiiiiiii_76","jsCall_viiiiiiiiii_77","jsCall_viiiiiiiiii_78","jsCall_viiiiiiiiii_79","jsCall_viiiiiiiiii_80","jsCall_viiiiiiiiii_81","jsCall_viiiiiiiiii_82","jsCall_viiiiiiiiii_83","jsCall_viiiiiiiiii_84","jsCall_viiiiiiiiii_85","jsCall_viiiiiiiiii_86","jsCall_viiiiiiiiii_87","jsCall_viiiiiiiiii_88","jsCall_viiiiiiiiii_89","jsCall_viiiiiiiiii_90","jsCall_viiiiiiiiii_91","jsCall_viiiiiiiiii_92","jsCall_viiiiiiiiii_93","jsCall_viiiiiiiiii_94","jsCall_viiiiiiiiii_95","jsCall_viiiiiiiiii_96","jsCall_viiiiiiiiii_97","jsCall_viiiiiiiiii_98","jsCall_viiiiiiiiii_99","_yuv2rgba32_full_2_c","_yuv2rgbx32_full_2_c","_yuv2argb32_full_2_c","_yuv2xrgb32_full_2_c","_yuv2bgra32_full_2_c","_yuv2bgrx32_full_2_c","_yuv2abgr32_full_2_c","_yuv2xbgr32_full_2_c","_yuv2rgba64le_full_2_c","_yuv2rgbx64le_full_2_c","_yuv2rgba64be_full_2_c","_yuv2rgbx64be_full_2_c","_yuv2bgra64le_full_2_c","_yuv2bgrx64le_full_2_c","_yuv2bgra64be_full_2_c","_yuv2bgrx64be_full_2_c","_yuv2rgb24_full_2_c","_yuv2bgr24_full_2_c","_yuv2rgb48le_full_2_c","_yuv2bgr48le_full_2_c","_yuv2rgb48be_full_2_c","_yuv2bgr48be_full_2_c","_yuv2bgr4_byte_full_2_c","_yuv2rgb4_byte_full_2_c","_yuv2bgr8_full_2_c","_yuv2rgb8_full_2_c","_yuv2rgbx64le_2_c","_yuv2rgba64le_2_c","_yuv2rgbx64be_2_c","_yuv2rgba64be_2_c","_yuv2bgrx64le_2_c","_yuv2bgra64le_2_c","_yuv2bgrx64be_2_c","_yuv2bgra64be_2_c","_yuv2rgba32_2_c","_yuv2rgbx32_2_c","_yuv2rgba32_1_2_c","_yuv2rgbx32_1_2_c","_yuv2rgb16_2_c","_yuv2rgb15_2_c","_yuv2rgb12_2_c","_yuv2rgb8_2_c","_yuv2rgb4_2_c","_yuv2rgb4b_2_c","_yuv2rgb48le_2_c","_yuv2rgb48be_2_c","_yuv2bgr48le_2_c","_yuv2bgr48be_2_c","_yuv2rgb24_2_c","_yuv2bgr24_2_c","_yuv2monowhite_2_c","_yuv2monoblack_2_c","_yuv2yuyv422_2_c","_yuv2yvyu422_2_c","_yuv2uyvy422_2_c","_yuv2ya8_2_c","_yuv2ya16le_2_c","_yuv2ya16be_2_c","_ff_emulated_edge_mc_8","_ff_emulated_edge_mc_16",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,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,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];var debug_table_viiiiiiiiiii=[0,"jsCall_viiiiiiiiiii_0","jsCall_viiiiiiiiiii_1","jsCall_viiiiiiiiiii_2","jsCall_viiiiiiiiiii_3","jsCall_viiiiiiiiiii_4","jsCall_viiiiiiiiiii_5","jsCall_viiiiiiiiiii_6","jsCall_viiiiiiiiiii_7","jsCall_viiiiiiiiiii_8","jsCall_viiiiiiiiiii_9","jsCall_viiiiiiiiiii_10","jsCall_viiiiiiiiiii_11","jsCall_viiiiiiiiiii_12","jsCall_viiiiiiiiiii_13","jsCall_viiiiiiiiiii_14","jsCall_viiiiiiiiiii_15","jsCall_viiiiiiiiiii_16","jsCall_viiiiiiiiiii_17","jsCall_viiiiiiiiiii_18","jsCall_viiiiiiiiiii_19","jsCall_viiiiiiiiiii_20","jsCall_viiiiiiiiiii_21","jsCall_viiiiiiiiiii_22","jsCall_viiiiiiiiiii_23","jsCall_viiiiiiiiiii_24","jsCall_viiiiiiiiiii_25","jsCall_viiiiiiiiiii_26","jsCall_viiiiiiiiiii_27","jsCall_viiiiiiiiiii_28","jsCall_viiiiiiiiiii_29","jsCall_viiiiiiiiiii_30","jsCall_viiiiiiiiiii_31","jsCall_viiiiiiiiiii_32","jsCall_viiiiiiiiiii_33","jsCall_viiiiiiiiiii_34","jsCall_viiiiiiiiiii_35","jsCall_viiiiiiiiiii_36","jsCall_viiiiiiiiiii_37","jsCall_viiiiiiiiiii_38","jsCall_viiiiiiiiiii_39","jsCall_viiiiiiiiiii_40","jsCall_viiiiiiiiiii_41","jsCall_viiiiiiiiiii_42","jsCall_viiiiiiiiiii_43","jsCall_viiiiiiiiiii_44","jsCall_viiiiiiiiiii_45","jsCall_viiiiiiiiiii_46","jsCall_viiiiiiiiiii_47","jsCall_viiiiiiiiiii_48","jsCall_viiiiiiiiiii_49","jsCall_viiiiiiiiiii_50","jsCall_viiiiiiiiiii_51","jsCall_viiiiiiiiiii_52","jsCall_viiiiiiiiiii_53","jsCall_viiiiiiiiiii_54","jsCall_viiiiiiiiiii_55","jsCall_viiiiiiiiiii_56","jsCall_viiiiiiiiiii_57","jsCall_viiiiiiiiiii_58","jsCall_viiiiiiiiiii_59","jsCall_viiiiiiiiiii_60","jsCall_viiiiiiiiiii_61","jsCall_viiiiiiiiiii_62","jsCall_viiiiiiiiiii_63","jsCall_viiiiiiiiiii_64","jsCall_viiiiiiiiiii_65","jsCall_viiiiiiiiiii_66","jsCall_viiiiiiiiiii_67","jsCall_viiiiiiiiiii_68","jsCall_viiiiiiiiiii_69","jsCall_viiiiiiiiiii_70","jsCall_viiiiiiiiiii_71","jsCall_viiiiiiiiiii_72","jsCall_viiiiiiiiiii_73","jsCall_viiiiiiiiiii_74","jsCall_viiiiiiiiiii_75","jsCall_viiiiiiiiiii_76","jsCall_viiiiiiiiiii_77","jsCall_viiiiiiiiiii_78","jsCall_viiiiiiiiiii_79","jsCall_viiiiiiiiiii_80","jsCall_viiiiiiiiiii_81","jsCall_viiiiiiiiiii_82","jsCall_viiiiiiiiiii_83","jsCall_viiiiiiiiiii_84","jsCall_viiiiiiiiiii_85","jsCall_viiiiiiiiiii_86","jsCall_viiiiiiiiiii_87","jsCall_viiiiiiiiiii_88","jsCall_viiiiiiiiiii_89","jsCall_viiiiiiiiiii_90","jsCall_viiiiiiiiiii_91","jsCall_viiiiiiiiiii_92","jsCall_viiiiiiiiiii_93","jsCall_viiiiiiiiiii_94","jsCall_viiiiiiiiiii_95","jsCall_viiiiiiiiiii_96","jsCall_viiiiiiiiiii_97","jsCall_viiiiiiiiiii_98","jsCall_viiiiiiiiiii_99","_put_hevc_pel_uni_w_pixels_9","_put_hevc_qpel_uni_w_h_9","_put_hevc_qpel_uni_w_v_9","_put_hevc_qpel_uni_w_hv_9","_put_hevc_epel_uni_w_h_9","_put_hevc_epel_uni_w_v_9","_put_hevc_epel_uni_w_hv_9","_put_hevc_pel_uni_w_pixels_10","_put_hevc_qpel_uni_w_h_10","_put_hevc_qpel_uni_w_v_10","_put_hevc_qpel_uni_w_hv_10","_put_hevc_epel_uni_w_h_10","_put_hevc_epel_uni_w_v_10","_put_hevc_epel_uni_w_hv_10","_put_hevc_pel_uni_w_pixels_12","_put_hevc_qpel_uni_w_h_12","_put_hevc_qpel_uni_w_v_12","_put_hevc_qpel_uni_w_hv_12","_put_hevc_epel_uni_w_h_12","_put_hevc_epel_uni_w_v_12","_put_hevc_epel_uni_w_hv_12","_put_hevc_pel_uni_w_pixels_8","_put_hevc_qpel_uni_w_h_8","_put_hevc_qpel_uni_w_v_8","_put_hevc_qpel_uni_w_hv_8","_put_hevc_epel_uni_w_h_8","_put_hevc_epel_uni_w_v_8","_put_hevc_epel_uni_w_hv_8",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,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,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,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];var debug_table_viiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiii_0","jsCall_viiiiiiiiiiii_1","jsCall_viiiiiiiiiiii_2","jsCall_viiiiiiiiiiii_3","jsCall_viiiiiiiiiiii_4","jsCall_viiiiiiiiiiii_5","jsCall_viiiiiiiiiiii_6","jsCall_viiiiiiiiiiii_7","jsCall_viiiiiiiiiiii_8","jsCall_viiiiiiiiiiii_9","jsCall_viiiiiiiiiiii_10","jsCall_viiiiiiiiiiii_11","jsCall_viiiiiiiiiiii_12","jsCall_viiiiiiiiiiii_13","jsCall_viiiiiiiiiiii_14","jsCall_viiiiiiiiiiii_15","jsCall_viiiiiiiiiiii_16","jsCall_viiiiiiiiiiii_17","jsCall_viiiiiiiiiiii_18","jsCall_viiiiiiiiiiii_19","jsCall_viiiiiiiiiiii_20","jsCall_viiiiiiiiiiii_21","jsCall_viiiiiiiiiiii_22","jsCall_viiiiiiiiiiii_23","jsCall_viiiiiiiiiiii_24","jsCall_viiiiiiiiiiii_25","jsCall_viiiiiiiiiiii_26","jsCall_viiiiiiiiiiii_27","jsCall_viiiiiiiiiiii_28","jsCall_viiiiiiiiiiii_29","jsCall_viiiiiiiiiiii_30","jsCall_viiiiiiiiiiii_31","jsCall_viiiiiiiiiiii_32","jsCall_viiiiiiiiiiii_33","jsCall_viiiiiiiiiiii_34","jsCall_viiiiiiiiiiii_35","jsCall_viiiiiiiiiiii_36","jsCall_viiiiiiiiiiii_37","jsCall_viiiiiiiiiiii_38","jsCall_viiiiiiiiiiii_39","jsCall_viiiiiiiiiiii_40","jsCall_viiiiiiiiiiii_41","jsCall_viiiiiiiiiiii_42","jsCall_viiiiiiiiiiii_43","jsCall_viiiiiiiiiiii_44","jsCall_viiiiiiiiiiii_45","jsCall_viiiiiiiiiiii_46","jsCall_viiiiiiiiiiii_47","jsCall_viiiiiiiiiiii_48","jsCall_viiiiiiiiiiii_49","jsCall_viiiiiiiiiiii_50","jsCall_viiiiiiiiiiii_51","jsCall_viiiiiiiiiiii_52","jsCall_viiiiiiiiiiii_53","jsCall_viiiiiiiiiiii_54","jsCall_viiiiiiiiiiii_55","jsCall_viiiiiiiiiiii_56","jsCall_viiiiiiiiiiii_57","jsCall_viiiiiiiiiiii_58","jsCall_viiiiiiiiiiii_59","jsCall_viiiiiiiiiiii_60","jsCall_viiiiiiiiiiii_61","jsCall_viiiiiiiiiiii_62","jsCall_viiiiiiiiiiii_63","jsCall_viiiiiiiiiiii_64","jsCall_viiiiiiiiiiii_65","jsCall_viiiiiiiiiiii_66","jsCall_viiiiiiiiiiii_67","jsCall_viiiiiiiiiiii_68","jsCall_viiiiiiiiiiii_69","jsCall_viiiiiiiiiiii_70","jsCall_viiiiiiiiiiii_71","jsCall_viiiiiiiiiiii_72","jsCall_viiiiiiiiiiii_73","jsCall_viiiiiiiiiiii_74","jsCall_viiiiiiiiiiii_75","jsCall_viiiiiiiiiiii_76","jsCall_viiiiiiiiiiii_77","jsCall_viiiiiiiiiiii_78","jsCall_viiiiiiiiiiii_79","jsCall_viiiiiiiiiiii_80","jsCall_viiiiiiiiiiii_81","jsCall_viiiiiiiiiiii_82","jsCall_viiiiiiiiiiii_83","jsCall_viiiiiiiiiiii_84","jsCall_viiiiiiiiiiii_85","jsCall_viiiiiiiiiiii_86","jsCall_viiiiiiiiiiii_87","jsCall_viiiiiiiiiiii_88","jsCall_viiiiiiiiiiii_89","jsCall_viiiiiiiiiiii_90","jsCall_viiiiiiiiiiii_91","jsCall_viiiiiiiiiiii_92","jsCall_viiiiiiiiiiii_93","jsCall_viiiiiiiiiiii_94","jsCall_viiiiiiiiiiii_95","jsCall_viiiiiiiiiiii_96","jsCall_viiiiiiiiiiii_97","jsCall_viiiiiiiiiiii_98","jsCall_viiiiiiiiiiii_99","_yuv2rgba32_full_X_c","_yuv2rgbx32_full_X_c","_yuv2argb32_full_X_c","_yuv2xrgb32_full_X_c","_yuv2bgra32_full_X_c","_yuv2bgrx32_full_X_c","_yuv2abgr32_full_X_c","_yuv2xbgr32_full_X_c","_yuv2rgba64le_full_X_c","_yuv2rgbx64le_full_X_c","_yuv2rgba64be_full_X_c","_yuv2rgbx64be_full_X_c","_yuv2bgra64le_full_X_c","_yuv2bgrx64le_full_X_c","_yuv2bgra64be_full_X_c","_yuv2bgrx64be_full_X_c","_yuv2rgb24_full_X_c","_yuv2bgr24_full_X_c","_yuv2rgb48le_full_X_c","_yuv2bgr48le_full_X_c","_yuv2rgb48be_full_X_c","_yuv2bgr48be_full_X_c","_yuv2bgr4_byte_full_X_c","_yuv2rgb4_byte_full_X_c","_yuv2bgr8_full_X_c","_yuv2rgb8_full_X_c","_yuv2gbrp_full_X_c","_yuv2gbrp16_full_X_c","_yuv2rgbx64le_X_c","_yuv2rgba64le_X_c","_yuv2rgbx64be_X_c","_yuv2rgba64be_X_c","_yuv2bgrx64le_X_c","_yuv2bgra64le_X_c","_yuv2bgrx64be_X_c","_yuv2bgra64be_X_c","_yuv2rgba32_X_c","_yuv2rgbx32_X_c","_yuv2rgba32_1_X_c","_yuv2rgbx32_1_X_c","_yuv2rgb16_X_c","_yuv2rgb15_X_c","_yuv2rgb12_X_c","_yuv2rgb8_X_c","_yuv2rgb4_X_c","_yuv2rgb4b_X_c","_yuv2rgb48le_X_c","_yuv2rgb48be_X_c","_yuv2bgr48le_X_c","_yuv2bgr48be_X_c","_yuv2rgb24_X_c","_yuv2bgr24_X_c","_yuv2monowhite_X_c","_yuv2ayuv64le_X_c","_yuv2monoblack_X_c","_yuv2yuyv422_X_c","_yuv2yvyu422_X_c","_yuv2uyvy422_X_c","_yuv2ya8_X_c","_yuv2ya16le_X_c","_yuv2ya16be_X_c","_sao_edge_restore_0_9","_sao_edge_restore_1_9","_sao_edge_restore_0_10","_sao_edge_restore_1_10","_sao_edge_restore_0_12","_sao_edge_restore_1_12","_sao_edge_restore_0_8","_sao_edge_restore_1_8",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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiiiii_0","jsCall_viiiiiiiiiiiiii_1","jsCall_viiiiiiiiiiiiii_2","jsCall_viiiiiiiiiiiiii_3","jsCall_viiiiiiiiiiiiii_4","jsCall_viiiiiiiiiiiiii_5","jsCall_viiiiiiiiiiiiii_6","jsCall_viiiiiiiiiiiiii_7","jsCall_viiiiiiiiiiiiii_8","jsCall_viiiiiiiiiiiiii_9","jsCall_viiiiiiiiiiiiii_10","jsCall_viiiiiiiiiiiiii_11","jsCall_viiiiiiiiiiiiii_12","jsCall_viiiiiiiiiiiiii_13","jsCall_viiiiiiiiiiiiii_14","jsCall_viiiiiiiiiiiiii_15","jsCall_viiiiiiiiiiiiii_16","jsCall_viiiiiiiiiiiiii_17","jsCall_viiiiiiiiiiiiii_18","jsCall_viiiiiiiiiiiiii_19","jsCall_viiiiiiiiiiiiii_20","jsCall_viiiiiiiiiiiiii_21","jsCall_viiiiiiiiiiiiii_22","jsCall_viiiiiiiiiiiiii_23","jsCall_viiiiiiiiiiiiii_24","jsCall_viiiiiiiiiiiiii_25","jsCall_viiiiiiiiiiiiii_26","jsCall_viiiiiiiiiiiiii_27","jsCall_viiiiiiiiiiiiii_28","jsCall_viiiiiiiiiiiiii_29","jsCall_viiiiiiiiiiiiii_30","jsCall_viiiiiiiiiiiiii_31","jsCall_viiiiiiiiiiiiii_32","jsCall_viiiiiiiiiiiiii_33","jsCall_viiiiiiiiiiiiii_34","jsCall_viiiiiiiiiiiiii_35","jsCall_viiiiiiiiiiiiii_36","jsCall_viiiiiiiiiiiiii_37","jsCall_viiiiiiiiiiiiii_38","jsCall_viiiiiiiiiiiiii_39","jsCall_viiiiiiiiiiiiii_40","jsCall_viiiiiiiiiiiiii_41","jsCall_viiiiiiiiiiiiii_42","jsCall_viiiiiiiiiiiiii_43","jsCall_viiiiiiiiiiiiii_44","jsCall_viiiiiiiiiiiiii_45","jsCall_viiiiiiiiiiiiii_46","jsCall_viiiiiiiiiiiiii_47","jsCall_viiiiiiiiiiiiii_48","jsCall_viiiiiiiiiiiiii_49","jsCall_viiiiiiiiiiiiii_50","jsCall_viiiiiiiiiiiiii_51","jsCall_viiiiiiiiiiiiii_52","jsCall_viiiiiiiiiiiiii_53","jsCall_viiiiiiiiiiiiii_54","jsCall_viiiiiiiiiiiiii_55","jsCall_viiiiiiiiiiiiii_56","jsCall_viiiiiiiiiiiiii_57","jsCall_viiiiiiiiiiiiii_58","jsCall_viiiiiiiiiiiiii_59","jsCall_viiiiiiiiiiiiii_60","jsCall_viiiiiiiiiiiiii_61","jsCall_viiiiiiiiiiiiii_62","jsCall_viiiiiiiiiiiiii_63","jsCall_viiiiiiiiiiiiii_64","jsCall_viiiiiiiiiiiiii_65","jsCall_viiiiiiiiiiiiii_66","jsCall_viiiiiiiiiiiiii_67","jsCall_viiiiiiiiiiiiii_68","jsCall_viiiiiiiiiiiiii_69","jsCall_viiiiiiiiiiiiii_70","jsCall_viiiiiiiiiiiiii_71","jsCall_viiiiiiiiiiiiii_72","jsCall_viiiiiiiiiiiiii_73","jsCall_viiiiiiiiiiiiii_74","jsCall_viiiiiiiiiiiiii_75","jsCall_viiiiiiiiiiiiii_76","jsCall_viiiiiiiiiiiiii_77","jsCall_viiiiiiiiiiiiii_78","jsCall_viiiiiiiiiiiiii_79","jsCall_viiiiiiiiiiiiii_80","jsCall_viiiiiiiiiiiiii_81","jsCall_viiiiiiiiiiiiii_82","jsCall_viiiiiiiiiiiiii_83","jsCall_viiiiiiiiiiiiii_84","jsCall_viiiiiiiiiiiiii_85","jsCall_viiiiiiiiiiiiii_86","jsCall_viiiiiiiiiiiiii_87","jsCall_viiiiiiiiiiiiii_88","jsCall_viiiiiiiiiiiiii_89","jsCall_viiiiiiiiiiiiii_90","jsCall_viiiiiiiiiiiiii_91","jsCall_viiiiiiiiiiiiii_92","jsCall_viiiiiiiiiiiiii_93","jsCall_viiiiiiiiiiiiii_94","jsCall_viiiiiiiiiiiiii_95","jsCall_viiiiiiiiiiiiii_96","jsCall_viiiiiiiiiiiiii_97","jsCall_viiiiiiiiiiiiii_98","jsCall_viiiiiiiiiiiiii_99","_put_hevc_pel_bi_w_pixels_9","_put_hevc_qpel_bi_w_h_9","_put_hevc_qpel_bi_w_v_9","_put_hevc_qpel_bi_w_hv_9","_put_hevc_epel_bi_w_h_9","_put_hevc_epel_bi_w_v_9","_put_hevc_epel_bi_w_hv_9","_put_hevc_pel_bi_w_pixels_10","_put_hevc_qpel_bi_w_h_10","_put_hevc_qpel_bi_w_v_10","_put_hevc_qpel_bi_w_hv_10","_put_hevc_epel_bi_w_h_10","_put_hevc_epel_bi_w_v_10","_put_hevc_epel_bi_w_hv_10","_put_hevc_pel_bi_w_pixels_12","_put_hevc_qpel_bi_w_h_12","_put_hevc_qpel_bi_w_v_12","_put_hevc_qpel_bi_w_hv_12","_put_hevc_epel_bi_w_h_12","_put_hevc_epel_bi_w_v_12","_put_hevc_epel_bi_w_hv_12","_put_hevc_pel_bi_w_pixels_8","_put_hevc_qpel_bi_w_h_8","_put_hevc_qpel_bi_w_v_8","_put_hevc_qpel_bi_w_hv_8","_put_hevc_epel_bi_w_h_8","_put_hevc_epel_bi_w_v_8","_put_hevc_epel_bi_w_hv_8",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,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,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,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];var debug_tables={"dd":debug_table_dd,"did":debug_table_did,"didd":debug_table_didd,"fii":debug_table_fii,"fiii":debug_table_fiii,"ii":debug_table_ii,"iid":debug_table_iid,"iii":debug_table_iii,"iiii":debug_table_iiii,"iiiii":debug_table_iiiii,"iiiiii":debug_table_iiiiii,"iiiiiii":debug_table_iiiiiii,"iiiiiiii":debug_table_iiiiiiii,"iiiiij":debug_table_iiiiij,"iiiji":debug_table_iiiji,"iiijjji":debug_table_iiijjji,"jiiij":debug_table_jiiij,"jiiji":debug_table_jiiji,"jiji":debug_table_jiji,"v":debug_table_v,"vdiidiiiii":debug_table_vdiidiiiii,"vi":debug_table_vi,"vii":debug_table_vii,"viidi":debug_table_viidi,"viifi":debug_table_viifi,"viii":debug_table_viii,"viiii":debug_table_viiii,"viiiid":debug_table_viiiid,"viiiifii":debug_table_viiiifii,"viiiii":debug_table_viiiii,"viiiiidd":debug_table_viiiiidd,"viiiiii":debug_table_viiiiii,"viiiiiifi":debug_table_viiiiiifi,"viiiiiii":debug_table_viiiiiii,"viiiiiiii":debug_table_viiiiiiii,"viiiiiiiid":debug_table_viiiiiiiid,"viiiiiiiidi":debug_table_viiiiiiiidi,"viiiiiiiii":debug_table_viiiiiiiii,"viiiiiiiiii":debug_table_viiiiiiiiii,"viiiiiiiiiii":debug_table_viiiiiiiiiii,"viiiiiiiiiiii":debug_table_viiiiiiiiiiii,"viiiiiiiiiiiiii":debug_table_viiiiiiiiiiiiii};function nullFunc_dd(x){abortFnPtrError(x,"dd")}function nullFunc_did(x){abortFnPtrError(x,"did")}function nullFunc_didd(x){abortFnPtrError(x,"didd")}function nullFunc_fii(x){abortFnPtrError(x,"fii")}function nullFunc_fiii(x){abortFnPtrError(x,"fiii")}function nullFunc_ii(x){abortFnPtrError(x,"ii")}function nullFunc_iid(x){abortFnPtrError(x,"iid")}function nullFunc_iii(x){abortFnPtrError(x,"iii")}function nullFunc_iiii(x){abortFnPtrError(x,"iiii")}function nullFunc_iiiii(x){abortFnPtrError(x,"iiiii")}function nullFunc_iiiiii(x){abortFnPtrError(x,"iiiiii")}function nullFunc_iiiiiii(x){abortFnPtrError(x,"iiiiiii")}function nullFunc_iiiiiiii(x){abortFnPtrError(x,"iiiiiiii")}function nullFunc_iiiiij(x){abortFnPtrError(x,"iiiiij")}function nullFunc_iiiji(x){abortFnPtrError(x,"iiiji")}function nullFunc_iiijjji(x){abortFnPtrError(x,"iiijjji")}function nullFunc_jiiij(x){abortFnPtrError(x,"jiiij")}function nullFunc_jiiji(x){abortFnPtrError(x,"jiiji")}function nullFunc_jiji(x){abortFnPtrError(x,"jiji")}function nullFunc_v(x){abortFnPtrError(x,"v")}function nullFunc_vdiidiiiii(x){abortFnPtrError(x,"vdiidiiiii")}function nullFunc_vi(x){abortFnPtrError(x,"vi")}function nullFunc_vii(x){abortFnPtrError(x,"vii")}function nullFunc_viidi(x){abortFnPtrError(x,"viidi")}function nullFunc_viifi(x){abortFnPtrError(x,"viifi")}function nullFunc_viii(x){abortFnPtrError(x,"viii")}function nullFunc_viiii(x){abortFnPtrError(x,"viiii")}function nullFunc_viiiid(x){abortFnPtrError(x,"viiiid")}function nullFunc_viiiifii(x){abortFnPtrError(x,"viiiifii")}function nullFunc_viiiii(x){abortFnPtrError(x,"viiiii")}function nullFunc_viiiiidd(x){abortFnPtrError(x,"viiiiidd")}function nullFunc_viiiiii(x){abortFnPtrError(x,"viiiiii")}function nullFunc_viiiiiifi(x){abortFnPtrError(x,"viiiiiifi")}function nullFunc_viiiiiii(x){abortFnPtrError(x,"viiiiiii")}function nullFunc_viiiiiiii(x){abortFnPtrError(x,"viiiiiiii")}function nullFunc_viiiiiiiid(x){abortFnPtrError(x,"viiiiiiiid")}function nullFunc_viiiiiiiidi(x){abortFnPtrError(x,"viiiiiiiidi")}function nullFunc_viiiiiiiii(x){abortFnPtrError(x,"viiiiiiiii")}function nullFunc_viiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiii")}function nullFunc_viiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiii")}function nullFunc_viiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiii")}function nullFunc_viiiiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiiiii")}function jsCall_dd(index,a1){return functionPointers[index](a1)}function jsCall_did(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_didd(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_fii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_fiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_ii(index,a1){return functionPointers[index](a1)}function jsCall_iid(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_iiiii(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiiiii(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiiiii(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){return functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_iiiiij(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiijjji(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_jiiij(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiji(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_v(index){functionPointers[index]()}function jsCall_vdiidiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_vi(index,a1){functionPointers[index](a1)}function jsCall_vii(index,a1,a2){functionPointers[index](a1,a2)}function jsCall_viidi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viifi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viii(index,a1,a2,a3){functionPointers[index](a1,a2,a3)}function jsCall_viiii(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viiiid(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiifii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiii(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiiidd(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiii(index,a1,a2,a3,a4,a5,a6){functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_viiiiiifi(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiiiid(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiidi(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}function jsCall_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}function jsCall_viiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}var asmGlobalArg={};var asmLibraryArg={"___buildEnvironment":___buildEnvironment,"___lock":___lock,"___syscall221":___syscall221,"___syscall3":___syscall3,"___syscall5":___syscall5,"___unlock":___unlock,"___wasi_fd_close":___wasi_fd_close,"___wasi_fd_fdstat_get":___wasi_fd_fdstat_get,"___wasi_fd_seek":___wasi_fd_seek,"___wasi_fd_write":___wasi_fd_write,"__emscripten_fetch_free":__emscripten_fetch_free,"__memory_base":1024,"__table_base":0,"_abort":_abort,"_clock":_clock,"_clock_gettime":_clock_gettime,"_emscripten_asm_const_i":_emscripten_asm_const_i,"_emscripten_get_heap_size":_emscripten_get_heap_size,"_emscripten_is_main_browser_thread":_emscripten_is_main_browser_thread,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_emscripten_resize_heap":_emscripten_resize_heap,"_emscripten_start_fetch":_emscripten_start_fetch,"_fabs":_fabs,"_getenv":_getenv,"_gettimeofday":_gettimeofday,"_gmtime_r":_gmtime_r,"_llvm_exp2_f64":_llvm_exp2_f64,"_llvm_log2_f32":_llvm_log2_f32,"_llvm_stackrestore":_llvm_stackrestore,"_llvm_stacksave":_llvm_stacksave,"_llvm_trunc_f64":_llvm_trunc_f64,"_localtime_r":_localtime_r,"_nanosleep":_nanosleep,"_pthread_cond_destroy":_pthread_cond_destroy,"_pthread_cond_init":_pthread_cond_init,"_pthread_create":_pthread_create,"_pthread_join":_pthread_join,"_strftime":_strftime,"_sysconf":_sysconf,"_time":_time,"abortStackOverflow":abortStackOverflow,"getTempRet0":getTempRet0,"jsCall_dd":jsCall_dd,"jsCall_did":jsCall_did,"jsCall_didd":jsCall_didd,"jsCall_fii":jsCall_fii,"jsCall_fiii":jsCall_fiii,"jsCall_ii":jsCall_ii,"jsCall_iid":jsCall_iid,"jsCall_iii":jsCall_iii,"jsCall_iiii":jsCall_iiii,"jsCall_iiiii":jsCall_iiiii,"jsCall_iiiiii":jsCall_iiiiii,"jsCall_iiiiiii":jsCall_iiiiiii,"jsCall_iiiiiiii":jsCall_iiiiiiii,"jsCall_iiiiij":jsCall_iiiiij,"jsCall_iiiji":jsCall_iiiji,"jsCall_iiijjji":jsCall_iiijjji,"jsCall_jiiij":jsCall_jiiij,"jsCall_jiiji":jsCall_jiiji,"jsCall_jiji":jsCall_jiji,"jsCall_v":jsCall_v,"jsCall_vdiidiiiii":jsCall_vdiidiiiii,"jsCall_vi":jsCall_vi,"jsCall_vii":jsCall_vii,"jsCall_viidi":jsCall_viidi,"jsCall_viifi":jsCall_viifi,"jsCall_viii":jsCall_viii,"jsCall_viiii":jsCall_viiii,"jsCall_viiiid":jsCall_viiiid,"jsCall_viiiifii":jsCall_viiiifii,"jsCall_viiiii":jsCall_viiiii,"jsCall_viiiiidd":jsCall_viiiiidd,"jsCall_viiiiii":jsCall_viiiiii,"jsCall_viiiiiifi":jsCall_viiiiiifi,"jsCall_viiiiiii":jsCall_viiiiiii,"jsCall_viiiiiiii":jsCall_viiiiiiii,"jsCall_viiiiiiiid":jsCall_viiiiiiiid,"jsCall_viiiiiiiidi":jsCall_viiiiiiiidi,"jsCall_viiiiiiiii":jsCall_viiiiiiiii,"jsCall_viiiiiiiiii":jsCall_viiiiiiiiii,"jsCall_viiiiiiiiiii":jsCall_viiiiiiiiiii,"jsCall_viiiiiiiiiiii":jsCall_viiiiiiiiiiii,"jsCall_viiiiiiiiiiiiii":jsCall_viiiiiiiiiiiiii,"memory":wasmMemory,"nullFunc_dd":nullFunc_dd,"nullFunc_did":nullFunc_did,"nullFunc_didd":nullFunc_didd,"nullFunc_fii":nullFunc_fii,"nullFunc_fiii":nullFunc_fiii,"nullFunc_ii":nullFunc_ii,"nullFunc_iid":nullFunc_iid,"nullFunc_iii":nullFunc_iii,"nullFunc_iiii":nullFunc_iiii,"nullFunc_iiiii":nullFunc_iiiii,"nullFunc_iiiiii":nullFunc_iiiiii,"nullFunc_iiiiiii":nullFunc_iiiiiii,"nullFunc_iiiiiiii":nullFunc_iiiiiiii,"nullFunc_iiiiij":nullFunc_iiiiij,"nullFunc_iiiji":nullFunc_iiiji,"nullFunc_iiijjji":nullFunc_iiijjji,"nullFunc_jiiij":nullFunc_jiiij,"nullFunc_jiiji":nullFunc_jiiji,"nullFunc_jiji":nullFunc_jiji,"nullFunc_v":nullFunc_v,"nullFunc_vdiidiiiii":nullFunc_vdiidiiiii,"nullFunc_vi":nullFunc_vi,"nullFunc_vii":nullFunc_vii,"nullFunc_viidi":nullFunc_viidi,"nullFunc_viifi":nullFunc_viifi,"nullFunc_viii":nullFunc_viii,"nullFunc_viiii":nullFunc_viiii,"nullFunc_viiiid":nullFunc_viiiid,"nullFunc_viiiifii":nullFunc_viiiifii,"nullFunc_viiiii":nullFunc_viiiii,"nullFunc_viiiiidd":nullFunc_viiiiidd,"nullFunc_viiiiii":nullFunc_viiiiii,"nullFunc_viiiiiifi":nullFunc_viiiiiifi,"nullFunc_viiiiiii":nullFunc_viiiiiii,"nullFunc_viiiiiiii":nullFunc_viiiiiiii,"nullFunc_viiiiiiiid":nullFunc_viiiiiiiid,"nullFunc_viiiiiiiidi":nullFunc_viiiiiiiidi,"nullFunc_viiiiiiiii":nullFunc_viiiiiiiii,"nullFunc_viiiiiiiiii":nullFunc_viiiiiiiiii,"nullFunc_viiiiiiiiiii":nullFunc_viiiiiiiiiii,"nullFunc_viiiiiiiiiiii":nullFunc_viiiiiiiiiiii,"nullFunc_viiiiiiiiiiiiii":nullFunc_viiiiiiiiiiiiii,"table":wasmTable};var asm=Module["asm"](asmGlobalArg,asmLibraryArg,buffer);Module["asm"]=asm;var _AVSniffHttpFlvInit=Module["_AVSniffHttpFlvInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffHttpFlvInit"].apply(null,arguments)};var _AVSniffStreamInit=Module["_AVSniffStreamInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffStreamInit"].apply(null,arguments)};var ___emscripten_environ_constructor=Module["___emscripten_environ_constructor"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___emscripten_environ_constructor"].apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___errno_location"].apply(null,arguments)};var __get_daylight=Module["__get_daylight"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_daylight"].apply(null,arguments)};var __get_timezone=Module["__get_timezone"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_timezone"].apply(null,arguments)};var __get_tzname=Module["__get_tzname"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_tzname"].apply(null,arguments)};var _closeVideo=Module["_closeVideo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_closeVideo"].apply(null,arguments)};var _decodeCodecContext=Module["_decodeCodecContext"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeCodecContext"].apply(null,arguments)};var _decodeHttpFlvVideoFrame=Module["_decodeHttpFlvVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null,arguments)};var _decodeVideoFrame=Module["_decodeVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeVideoFrame"].apply(null,arguments)};var _demuxBox=Module["_demuxBox"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_demuxBox"].apply(null,arguments)};var _exitMissile=Module["_exitMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitMissile"].apply(null,arguments)};var _exitTsMissile=Module["_exitTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitTsMissile"].apply(null,arguments)};var _fflush=Module["_fflush"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_fflush"].apply(null,arguments)};var _free=Module["_free"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_free"].apply(null,arguments)};var _getAudioCodecID=Module["_getAudioCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getAudioCodecID"].apply(null,arguments)};var _getBufferLengthApi=Module["_getBufferLengthApi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getBufferLengthApi"].apply(null,arguments)};var _getExtensionInfo=Module["_getExtensionInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getExtensionInfo"].apply(null,arguments)};var _getMediaInfo=Module["_getMediaInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getMediaInfo"].apply(null,arguments)};var _getPPS=Module["_getPPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPS"].apply(null,arguments)};var _getPPSLen=Module["_getPPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPSLen"].apply(null,arguments)};var _getPacket=Module["_getPacket"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPacket"].apply(null,arguments)};var _getSEI=Module["_getSEI"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEI"].apply(null,arguments)};var _getSEILen=Module["_getSEILen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEILen"].apply(null,arguments)};var _getSPS=Module["_getSPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPS"].apply(null,arguments)};var _getSPSLen=Module["_getSPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPSLen"].apply(null,arguments)};var _getSniffHttpFlvPkg=Module["_getSniffHttpFlvPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkg"].apply(null,arguments)};var _getSniffHttpFlvPkgNoCheckProbe=Module["_getSniffHttpFlvPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null,arguments)};var _getSniffStreamPkg=Module["_getSniffStreamPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkg"].apply(null,arguments)};var _getSniffStreamPkgNoCheckProbe=Module["_getSniffStreamPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null,arguments)};var _getVLC=Module["_getVLC"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLC"].apply(null,arguments)};var _getVLCLen=Module["_getVLCLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLCLen"].apply(null,arguments)};var _getVPS=Module["_getVPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPS"].apply(null,arguments)};var _getVPSLen=Module["_getVPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPSLen"].apply(null,arguments)};var _getVideoCodecID=Module["_getVideoCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVideoCodecID"].apply(null,arguments)};var _initMissile=Module["_initMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initMissile"].apply(null,arguments)};var _initTsMissile=Module["_initTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initTsMissile"].apply(null,arguments)};var _initializeDecoder=Module["_initializeDecoder"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDecoder"].apply(null,arguments)};var _initializeDemuxer=Module["_initializeDemuxer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDemuxer"].apply(null,arguments)};var _initializeSniffHttpFlvModule=Module["_initializeSniffHttpFlvModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null,arguments)};var _initializeSniffHttpFlvModuleWithAOpt=Module["_initializeSniffHttpFlvModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null,arguments)};var _initializeSniffStreamModule=Module["_initializeSniffStreamModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModule"].apply(null,arguments)};var _initializeSniffStreamModuleWithAOpt=Module["_initializeSniffStreamModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null,arguments)};var _main=Module["_main"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_main"].apply(null,arguments)};var _malloc=Module["_malloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_malloc"].apply(null,arguments)};var _pushSniffHttpFlvData=Module["_pushSniffHttpFlvData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffHttpFlvData"].apply(null,arguments)};var _pushSniffStreamData=Module["_pushSniffStreamData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffStreamData"].apply(null,arguments)};var _registerPlayer=Module["_registerPlayer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_registerPlayer"].apply(null,arguments)};var _release=Module["_release"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_release"].apply(null,arguments)};var _releaseHttpFLV=Module["_releaseHttpFLV"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseHttpFLV"].apply(null,arguments)};var _releaseSniffHttpFlv=Module["_releaseSniffHttpFlv"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffHttpFlv"].apply(null,arguments)};var _releaseSniffStream=Module["_releaseSniffStream"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffStream"].apply(null,arguments)};var _setCodecType=Module["_setCodecType"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_setCodecType"].apply(null,arguments)};var establishStackSpace=Module["establishStackSpace"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["establishStackSpace"].apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackAlloc"].apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackRestore"].apply(null,arguments)};var stackSave=Module["stackSave"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackSave"].apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_v"].apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_vi"].apply(null,arguments)};Module["asm"]=asm;if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromString"))Module["intArrayFromString"]=function(){abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=function(){abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["ccall"]=ccall;Module["cwrap"]=cwrap;if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=function(){abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=function(){abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=function(){abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getMemory"))Module["getMemory"]=function(){abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=function(){abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=function(){abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=function(){abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=function(){abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=function(){abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=function(){abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=function(){abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=function(){abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=function(){abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=function(){abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=function(){abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=function(){abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=function(){abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=function(){abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=function(){abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=function(){abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=function(){abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=function(){abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=function(){abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=function(){abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=function(){abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=function(){abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=function(){abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=function(){abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=function(){abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=function(){abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS"))Module["FS"]=function(){abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=function(){abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=function(){abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=function(){abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=function(){abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=function(){abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=function(){abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=function(){abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=function(){abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=function(){abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynamicAlloc"))Module["dynamicAlloc"]=function(){abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadDynamicLibrary"))Module["loadDynamicLibrary"]=function(){abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadWebAssemblyModule"))Module["loadWebAssemblyModule"]=function(){abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=function(){abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=function(){abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=function(){abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=function(){abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["addFunction"]=addFunction;Module["removeFunction"]=removeFunction;if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=function(){abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=function(){abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"makeBigInt"))Module["makeBigInt"]=function(){abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=function(){abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=function(){abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=function(){abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=function(){abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=function(){abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"establishStackSpace"))Module["establishStackSpace"]=function(){abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=function(){abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=function(){abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=function(){abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=function(){abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=function(){abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=function(){abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Pointer_stringify"))Module["Pointer_stringify"]=function(){abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=function(){abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_DYNAMIC"))Object.defineProperty(Module,"ALLOC_DYNAMIC",{configurable:true,get:function(){abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NONE"))Object.defineProperty(Module,"ALLOC_NONE",{configurable:true,get:function(){abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"calledRun"))Object.defineProperty(Module,"calledRun",{configurable:true,get:function(){abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){assert(runDependencies==0,'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])');assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=Module["_main"](argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}writeStackCookie();preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var print=out;var printErr=err;var has=false;out=err=function(x){has=true};try{var flush=Module["_fflush"];if(flush)flush(0);["stdout","stderr"].forEach(function(name){var info=FS.analyzePath("/dev/"+name);if(!info)return;var stream=info.object;var rdev=stream.rdev;var tty=TTY.ttys[rdev];if(tty&&tty.output&&tty.output.length){has=true}})}catch(e){}out=print;err=printErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.")}}function exit(status,implicit){checkUnflushedContent();if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){if(!implicit){err("exit("+status+") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)")}}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run(); diff --git a/vite_vue_ts/public/dist/missile-120func-v20220421.wasm b/vite_vue_ts/public/dist/missile-120func-v20220421.wasm deleted file mode 100644 index 7d195f0e84d00c25d2908d3cf375da5f7e104010..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1927290 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%0AIH8VmW9RRW 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

{IklqS@5g8p@k|?ASt_S8| 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

%; zhJQcATD@(!Fu^x~-iiy8!r!)Dn4p2wxAQMda7VAVi!MwqGD@SKZ40qfgXidPIXuz~ zNM@p!>_B;1v=_q?`W!6Fu`%RhrkxipH>@LBbgCnDOy0~KaqbC`!BsOjpY$AbdvlQ? z-MktKYK1fLGQu=a6jPi%71Lcby@yg~1@5V-fE^30q+!wIRXClOrl7M3!$o}8#&z{| zaXvKn3Kr_w4NpfQA>35uNTX9Fu8NSkPxZA{MD{N)BL9~cfifuzg_Kul@W2ltM+ych z5$xD;Ow0BGgiUfyiZ`i>YY*ZkN8>64O`4KbIIi;b2Ki=3^Q|4kts9NoFo-*SG;Z@C z?ny&&8V!XGx?z$cJ|Lwf13;#E^#PDY=+Ku{1AwSWJ8w`N# z1OvdRQRviKcG&<(%K;$bHZ`kpvOx=U%o~2U2W@8_AaLo#vOVlH=ApTW6(#3Z7tsu& zC|fjbX}*Wu#XL+dvQe0asYP>h(pf}lmt(PyDh|7dMKvfeEtu|`RKIzw8Ikj(!K2)2W8^vV>oWp zAkI-+gR>goIQk#W=OfFNGEUhXzU=y?8&d z!Ff~^PGn$81X?PWsa{0`@svqM@;XqJrGl{wi~Bgu?TqANXSvf~q!K4G{Q&G9_{KbE zCrpZf!CcI4n%a=C$7S=`t^~5oGvRq~_&+X>&w}JJ+~s9e96DH@n)RcR{->L^0u*Xl zU+PCARb!D2QGL)m-I!Zf**K0#Xo?iMWU0DokW?yWE7D3U)0O=)NXJ@tP_@=+o)mL{ zvQq7lRU~FrXG9L56N#uM0TH1jLrGA?WI}ogK}k>s^0I6dL0PskPX+bZsw!$SOw?L1 zHZ_OxY>;>-B^Abv`+@P;7OISGA@%M-`_WoK)*}rXlc#D3K-sX-^}*g(LaZaKUP-+b zHdv7pg|%f#C1CeQdqmweNX#%A+Yy?ODljVS)Kgbr)5=zrRQR{9swb@j9AO zL#Jn$w)QYjB{t7MztNYJVTJiZiz%bnIZ77SrC=LtPjg*na@IIqCTiR({bCjhNTd|& ze6^W2rPq-1^GH_HYaGd>*I*BY!gJQE=uiMd4`~3d|LB1aaPUu7CpZ1S@B7YmI;)n2 z@7(*9Kl)`UV6yP_J3n?k%B!{6zTS0nXeZ~gaS#DT?^9rj_GP`dr@gqwNnAJPMhD=i;OgkeCajemXCCuAofA@BRfa^!_3>yg!oig|pM1 z;-^YQ$bTOo1>_4uQ;_foVe_AQUJ!OjjbEOnV$`mhHDFvJB4#&^0lmcy=r})n+rC`I} zQ~Y1!Q#3n0#-cV6JKItu+#6r_sf3~MD=5G2g0?)YkLTpcWp{n&Qx84x>)*cf!Q?ue z0QDpB&E5FcaO8&n;}<*MPRrd#hMWxssPEBK_iv&yz7dCJ*|s9Xf`P%$hn+ka226Y5 zkJH{;EfME-Jwfm9E&LV_GuAUCo;2LL9u^Tkf+(W|=vUz}+ovffehmjnV4s5V)Xt89+jWl>HM#p7BZS;E&{O+)SyeI28A`CCKkjRg)ebInVk42_ zW)^8aTt*_r$Sl&fJ%%G$3EqaXrH+1Nb*$oe`SNId zIX8J_N;NVmv>U++jq_wa*q(<~hLgfkf@m#1MexSb~bxv1}P6 z+PeaJ4RJOdyr^3*nD2d7=qZOv=RK)B8Y;bSi|Ta?O0VD7sN~dI@Le*k0(=)xRe zXd;+lL!wsd&I@xG;*b*qwM?gp>~EiHP^Qaxa||d$L!50RdP?r<7s8BO0BZ76pZyzUD|nIT{>fA`gF;G;2W&5a|7}&kvAGS4o$=9 zJ4_ngxP!cD*t`RwG!2_}UHC5D_laE)Y;NBV4!*OWwu|LD zC1L7(tAB5XL;gZ{Viv6U_O9KVN+%p=d5ikqqD#C*&rplDjsBy3{e_uLNs^BLBSKt* z5+`_2q9kETlQazZz$;4D1Ct06xNU*(l<(w5Cv zc=dkT7hZvN>B}o%n6w29S%hQ(!%>yMTpn9upjxjr70YFi0bV*)kU$j@qkbN=1Y^Kd z)fv43mk}J07{vh`JE^Gy@Am2^z&da{&a?4<3ATmdl@+9;I0sTDvhf&KGj35NnM7AK zf|f)KDDoypkRjFDXb76}-oo_GMoqRbvzVpUM|4emrU0AJRr=-6K^Ng!Fn%Lc|1gMJ z@h!{9px$q(Zd4izGYeirQa-90hYAq@^$&!GKhz^vcqfBsZgR(TY7JNAxuq>zk>|NJ zQI8m*HuKrj#czb_A6BTY{#j*MyPMu_a6Vt6vV02N_C8d1y%ePw4nLj{d92xR-Lk*u z8{VF>6|~RBsUB9OhHaxU+-`+WwcQk_-fqI-Iz15o@!{sB zOBQCPsU3n1OE#^S)`AaPP8atgq6-Q)jRUc4*Qn2 zl_+TB7ReHIlMjbK}*VpJF%LH3yJg~X4E(kw0QS<#Gs z$F&Hd)N|ET$L%S#R_zmZw&c+sns(M&dC^EKV>q_b$l;0;weq5qwDO9Rw-Ui5LWct5 zDBT9A&+R<6HamS^cAaVUHb4x^F4Nc`;ocDb^nQ*&QQjlLFgRi^khCnG3h#ZV5ye#a zfL`Rv_qT`Kr3_s8LJ}F#xSL~PiK^kU-b*h_ej3iec_pz2ZZM5kRq#5fqES}SD643M zHx5-%5uOSyyijclaI{s7$M`ore1c|VWgS^rM;3m6sE({8Zq+emb!-dJW%zH5{b$G8 zF5kT!HpX!?9TXNPTMJ1YdvhkLG(ZSGG8}wpIQXasrF9@XLoqx&oZ$E%0Y+%F>Vb4_ zopev(#$V%%ziwQbJKcTfDfXh!UYJ>xq?&N~OVWh@MDXFU)Eu*LZtMeiB9?dMaHsKH zmb9Gw@>eCi$6wjY3Lo-U8@|uw%rX`9`fH5m>b*FOVcVL+n6=4j9F0P*2b-*OtQ<`} zmvIP~VcHf#xJr-f@Ft2?cNH72D>m(Wt71A9gK;T7lW^Ww;5Ue?`=+l}Xrh=|;1eVF z@=Z_@hG>eI)Hjp@d`l^vp}neDBW^BDi`8qx`WLMFSAAu>&i7Kz&%`d}tP@bC_>W_+&DV!(D7Ydpq_pKIr#ED19VV zxp3vth`Lp&w-n5#S1ZXgL0W&}YJJ{0XH)uasLrr}M#^*BTxOJ- zZSzkuFouTcD|~HA|F&hW5fYHI%_e#_Y&Di>pHr?+F9;;&${PC79Aa*~NUrv}Yemjx zKCaT(#6@aAs)`oR<4co(WAFp4O;IOq!A0NG7M!HCQ*VLKu6<@qtm9YghAY0OjW|hZ zr``ypp_8@Xh2PT_oTRinD!B8Yhw0FU7#p_=OSh``NVj zv6cCTID>f<&QkQqlVP!3XiG@B7#PNj@VD@?pR}AhVyse$QA*NP4KTv}Gmh$C2 z75rO!OFtdXnMA)%o z)WD_by^lU^q@->+oy8+XkOK>=`9V3csjB0_iah9Kb2MNs<>6vU?-A74?8T>@0~5F& z5W{6vAdRY~*r`qUC(vpNl(iMt(B=XU`R~&CCGITH1D_*Ie+Wi|x)Ok@<--QZNgk2= zNHTI8jnneUo#3uXDW_8t zhm`n&(Y5PW4PyKXZHNwJO0?c6%h>O&BT68UISlcXY ztA;&&(6FatlvFDWVA@!S4wZ>Sw?eTKwy>7xG48wcCdFwWMOg_3pE<5U&$ON@8$=6t zvXm=f;4s^u@+)c$!h%t2zt~f);RbORP1#dBYYpPsEN@U{b0wh)jGwGQT<67I#<7o{ zN8v_y&+oSu`V&A~r@QA5(H(^N0tQ~R{xUkw2JLxatv%ULdm3tw`e#CDr-*P5cm7a}bFs6mh2Nq2Y2P>D@As&N3?PdK2^cE7@JUTj}NfRnak`jMMrY zUD^$Y1cyjHNXk>^CGZy!sJwOsEb2nG*Q`q9jt470eJ+%$76%P!mEDrFVhK5#3Xm*0 zK-*Q>?dTkm@Ax`GmOD2=3}dvi)h~aWa1C9K$HiLnFaf5aJuF~WiBX9`?wenfM{^}t zk&CQUsHni&Jfw3|`8E&-hH%{~z;M%t3Bdqr)*PIGRg9u*5fb<5SFBd#YDGkY%r=^2 z7Da?&%^S<0&9c_JcCa9{^EPB<9nU_k|M(BcDPJrYhNLp$g$77A}MD_i`& zWAmzpG6OjsK&!l=cBtb-E{!dz@HIj$khv%z(P2x5z(|#yZ#H#s02PdziHc}g??Cn9 z#!!83G4y8+T(j(0urxs;(Qn4rwxDGiKt61ke@$H*$qL(i+mRU~Sx!5_z!-Y)W{YcS z$y1M$J9XN~`3qZ7*Q5rSu6yE^)@>aSp(S>IH5upD zSR1D7w;R!<)`KQH3&`a5vALB7&5w!8O#;a;7*ARKQ@+UIL9$P*R|d( zJA~U~=@5Ext_vJ(w&$u2Sw*1g5J4C_q^+saWU9ovink7# zDm$cIMoA5$sMsN8N^$(v5xFy@)$LMylt#T$=IPH^PK$~+Q!AAzb-arh-qt_URS_r6 zBIbdFW8K!dP1iYDmoqy{7-Us%BHAiF8jJxQ{?`~#XtiVm8zf<=C?<4pktZ?=Y@bp! zXwXr`g*|kTsS75p54l5W!gwKyCmRg_Y{I=xAde)oa4ngHcN+lW3B_!r3CVT}udd3o zu~AaA?QLiXlpo5Tu}rH*3h50OvKF)o^>R;T>TbN|#J(w`&`IPmmAx>XsF(H4ZxQzn zl3pB6fEdElNZnsOwSBdo_0-1a@IS91)w!Xm`2Br}@Kyg_VOH6g7wH+#VW>o?aH?iTcQ#|m+9SzIl2#({UFMRD zud?+KcV$XW5)I?dZ$vlTN&OP}4^!X(cRoN3VV>GvYpH=vli`$bhwf7J%FOR1y$oGq zNGCv_sye{w{YDIX^y?W+2c2p=yZ zyGDeaV`rpmWRE;~RvwPm?U9eCI=(O&j-f`-xd-__W#onzqb@OhTr=0)aoiGk$?#ALYvF&SPvv;m>(4SaX)K+2wU zu|XRV=}Xx`kuS8d6{QrMg}0~S9jR})RLLQ9yVzHrwX$QnBvgrQ&9`tq`Q+ zc6@Fcf;8^t-1cK9I)3b0_8s3=}Qzvh_JQ@}2 z%aYfZC9fYTd3}Y{*QDXKNJ2v;YjWRBofsT|u-}mlyEY32^t!U>b!E}(!u}yFtcyiY zsj+Ml>9&^4{!#3`SfgYKW+?Q}J!Tuv9>0~36+%WdRWXm;Zl6e%hCA#N+f#bd742}^ z!pz&#q%>)9%aVVyzrd-JP9L-el~)BsbZiucuwZE=X(MaoGRB~J)m~s6HMx3pZHe}^ zCEC}H^yu1(R_;zY@KEGKJvz2znNDkaGrTSxA%HIK?$(r5t|_ZrGg9RmuM$(HvBewU ztIJYWm!+&8DMh!dYJ6uL&j`PJ3V`31hSx6xyxHW!ggCNi%PMC_s+^60WBj!u#(QNc zTq@xkyuFc9bP=%w{+=|v_Y?p>n1(kj1H6H+hqB65WtFQ&s?@z2REZh&%7D+5rOcG2 z%#4&$UgVL5_oda+YPW)s%VV?HeX?t>Q{jaxnW_InWwQJKP&+L15 zsvcc?pYGHGYgg-U&6@hB;rC`^qQ#dL(kSCgin(^82r|uH@ z+Zf@`hKD=dH6!`I7?b(45$vh_561|9Hay(va!ObaF$b@8{C_Pb^JgR2Q~CcPM)cvyC_t?;cF<g z80F7~hvj^K0Y7J;UGXiPqr5<9Nd?FJIlkc6KhoMi_ur<13Y4gx>I?h_WJy`VEVM&>NnLC`(P$Efxi#H#`+lmYS&j76qZ> zw_C47`LhLGs4fV-;i-tS)Z}`#q6RZyowlK7r06%M`K13PnV!uUdK{0|<47}_q|u%j z{dB@`3c6n>bkhr3VR#4J#us(O>lH(9NctoOoBM9%1ayMogJ1aDZ(qA(Q&|t% z!L6u!Df1ex0by$h%fbzF)Wr!#ooPEKe=O}!U6%YTm9Z^@3YY(XmhIIGiO{}Nr~7f<$^axysOb$DdomHS_KtLQqcuVe*6du@ogV&xcb?+0>4E@4!}Wx|q3g z(=!wM`;Xi1czyNy<{u-6s!Sq!g}Y+Lm{kpw8^iB+1FbbEbpYa!D1`f8)VE;l&df2lKRfhe z1W?A~tR9W1!HfMAN%i`1L)X!iP3h^v-n)Kp#ShKTPC@=!5N3}XDG2CImHK?B-~g)t zt8K||FdU`DrECRST+$+c3@wU?0(UrA4F}TRy=-I#ly_URn^WkKYtVOWa$7e>JcgT* zez2hb!Q3r&b~*t;KE?FoBp^{QDoRzX-o+`XI|lKI3jJ)cL68Nh@kt#kS2Hh> z!|B)>*7A%6eP!_Jo{_Edv(RH9J(pa!b~@pqq)8{xB{KJ<9lf_1Pbnrlf85F@_NC%x z6X*<&)?J<)HJ2yy2^?R7y0|Earb5^|FJG$I}N5+uv36t&lVo}VX+;2Zt>i}6Fm|e+=cmBVY82t zbUYw~$YuZ8?tN2Ke2lhhI@eY&w(>PkTkQo2l^K4(63rZg`w> zBU}i~PPkIJ>8CPxr^=mkA8?6eF#X)#9pD)=H#j?*daP;0*^8MU%kPIEqb05Zj1p7X55hi4|XJos+-l-T~cces+Stcz$*=0gouF zon@OjumK@Y9}ERet8CAJjI0?BXYmMhg$*2m3LBi$7B=h(-8K)y#^>q%$=GRgsgWwf zN3sJWO7$@+inQ~qcsL4&xF8PKC-RSHuBO}Jfp<=+R`<>9}vg^=9kO?14x@UI6pC;Wi?Dt6> z)&u@`(-W+OnsJKioUX^}mQ zZ)r&$uL?-}0GjX-Y7o^Xfin;9N}H`#E6H+xYk$pVt5FLMzbeNm|54(~f9c9mEgjq^ zy3Eg0Yds0zK?hoSXH@E4)||SMNAE1H@J8tGtflY?>F;1!RwRM7(wj1O1(uzavrjef z)KjoAhTymSAde}i$DM$Ag=Qe;AJ!;$%pwuFo;M90nXQ;&eaUu|2pQl~&t%#Z%g5H! z(AdsP9cfTK9R@)!?x&=MMLwH{5&z_lF*J05$0l7HXS78VX2wXMxymD$ zb6PJ1CjD0LwGwBom$}Um9OD7-wfLxEv}5O}iv%z~uyc-mG=K2e4*$bt888u7HX)Y* zOxt!u-$Wdb71NE&+07cIa|tzbEGm{L*+dR>_@o9G*|WL0eBT^Qg<>AYTfjb0fwlGo zNmv&{2R0CWb)bfW5_@nmR2XTgz67;S0-CgnX1(9?qH)~Ht#OJwlI#>hiC_+(m(*WR z+p!6Jv&5){o8f7c$p~nMOZDRZXhhu@+p6H_phhfIWzj&r!Wq1x1?UAQ?^?5@fDAF`K76){g+kfaQ23-B>i9t$5uquGtCc%h16|u>}zU9mP)x^JpIEtks!= zW$QY+@EP+T)#Sv~Xvy@qx|0S{D%8vJsVWr|q>wCbMraI>v7!Vwy;q9wi}y7hy8}Sg zW|c=NB5MQGpuAj|rGyw6yHzz>brx+hm)GJ|bZ(DhEg!=mGl+w;R7Ljhs572S(CsT< z`v!{(IJbrjhu8dsUmKZ}&?6R_g9SiuFb6lF5w#mDh2r$lD6ai%dJD;Q#u!G2>n|yR zR9#lUJbDP^P?U;6l;BK2tuRu;V7!=AgbPo@=BOj>fJBG63CZykXs0vhQ18pzCSE&p zZUIp(E}}w8sz(LcS!e+ZO8p3i=AI&l9sN^^6%=#GI23^v)2easJKP=7;*3dn={Ied z4`F5^-$ut#k=YRS5s4wYHtAU0dzV6{cH3_uF<&HnzdQM(ZH8aklJ!0&zWz%Rx4DXl zr6sxu=Qbh$11THwxuvtn+ZKFo8;&`@7!Ge$Nr+sZnoOt4X2Wm?To^_uuD3NiLi2ib zR?Y^Cj%Hi6Ia@mzAIYtuiiR z9Aa&$mugPOT;>1^I*ZA&A8Q`gt!Cwe^*nbx0g=34*~|fL1N~-bA#?2{3GPYz+#TD% zLY1!z&%z@(XMCjt(JW}|MH10fU1P55X8&h5&T^|^D&H#f(E+ok>u1wBoQd$QWmu|M z!UxMRp?2@f=+w4DsB|3Yl*|k>3Wwe0$iUCpH_XqOJ`ejjlWzi>R5WsmHY30eST~>@ zc{=0k3p7}GF3OmNCw1J=7Q2CWN~Mg-ec$7+j|-n-d6&RYwGIV(X<@+Ao4!61zWOkh zZN1xYagc-?yrE2dME=%mR`JQAG#ojS+Pf*6<1j(*6R9G!mTe-Wp*2!piJC4!9@YS0 zTGGdRm|;1-41HSyI*DPkKr-Vt;9BUGNRnA;VPE-On~q;?U)El0?X}lhd+oRAqR#R}6i#u+=))R)m9j)#wXhhT?1k3T%0NBp%YY_I z-Lh2hc_$Nioc!`745*++rJc!5wgB27>EGAmM=~EQ%V+Xdn1e^m`k~my)>Iy<8(}3^ zu>@-+8gvQQK{AaaaH=Wpq}W(H_ZC%_hK+aHLvY0}F&ZKAbFAW~Eh z+>zZP`4L9)2<#_e@xw|f>o)(v5)X(Y*}!AX+&U>^p}ALU-Jp5kHb&EqBIDY|Jp+4J zO*ZChfP~3sPi6zdKMmHW^Ix3~43|mISu6G=4d^fTee;u5COw~%BezF;Cc`i|$j?Dv z93=njkNX)>7|KKz?_{f2D8 zaG3IY&fqy3R{R-RwdLRxx#H-V4y5zb!`Ba6Y~19lL=6&s;E;!yttxDB>A#%kzXX=k zhvHzvV5ra>2ZZJ+U4!e?3V)xiOJYcmw1>n0!eh{pdabQ3KLg&XBA9jNcz z_D0PW8jfc30r>!S58>?2Y;fDsuieYfJ$L6_$+S&-I{g2)>5Ryv*|>)Jt)xWqh+TZq z2nybGa2w}dRo#IBw8E`t=@ID>6I-(*(uHqK7cPC@{l`93KdJA<=dQuv(nWzs#iKx9iBRSDV2&c>hw zm52V39ZT(PsJi`sJmpC?m=4ma!6~)(9-{W%bg;d4xh>YyK{~fEtqo?=`&QxALXNh! z^T1$>GE=Y-FRd|q*;Hwig%Js5PZLeaWrSwYR+Q!5NKHhpF%X>jtpD()^)T9~>R}rlNx!U_Ck@!U!Em z{%~}dj-<~V)YU&6)Kw4aY75lh3rIBuCwoM7PczPcz!;}>cFr=+-s^021BW5(HV37- zWGdFnKUni_tfhH}yE-N^sGo(w(vC*V7M20fF>KA=5@X6Q0m4Li4t5y}p_EO_U+dawD8Ye&-06<>RRLlxV3Wja=41 zG?Ze_w`0os8$nJoG~%P8SzA1xfd)Nf&!NH?pnU`6I-={}DsczCI3-!Hb>i=gSY2hu z`Lx*7Z9%K!3^G9a3d+Ut#Q$t~IiYas?e}Y>U5wKDrCFB&QBu-V!7G{8QF;Lx7Rn_3 zPz7>pnrS8N_WeX^2bLdsO)}x7Xqe$B^j(5+gEdNLeP>z)ei6ri>1Ws2*oJjf6&3Y7 z`BZRD)-m|GiAHa%HB6KHXEOR_=DU*q#dtI<_O62$XBRRKI>}XXk;8j^O6NFDb^fn@3P8=AWXF9{UbY<>p+~e3SNAp*fw! z(3$O`1{nsj?gH=(aN2dL1ZKuGX;jK-U{^voj4=2<;R?{b4rGMZUFTnklqx$Ly^;c- zex!QR-fcy<)#cu8_$~EJY|VMojZ4m@Pwh?jnc6!#`)9(`s$c_B%o!FO!}hy^xfGq2 z^|)SiS-5r~ohhv_Lkj(6O@Wug=9p0TqEQ`7=W&_fP#~#k5aWO}l^1wENdhyFYK*{RPwRFPU~f2IMuEEb28} z?y62XPN5EL{`q9RmzH5bf_GP3x%VG#UBtODtHMVbH z_K7s-)({SjGjd9COq2qFTil1B>c+3|mH`OVOkR#|&lykai>#xqjRJmKbs5&vKoQ^4 z=u+}ABA2Ee!yC>ST!)lQ{Ct4V?>U1;EP1Q53hkx=Zr~y}z+smf3>mVl+3qo~B9K`& z7!Kd&2di?TzEFshX^qz~O=}%pKqJT3_1(2-K65y8lAIX1%0DH(dp+_z+d{ZP$nyfIUR4$_O50`fJ3K@J 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

    Kf-Tcg|4nxdF$ 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
    4JIQ8SP^N6qvWMH-xEsZRCpMi2hl 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 z%0Aq3eWFsG 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

    XP2EVnkcSZ{L-i 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

    |Pak?PoG!jY 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
    X26Q-HnAOPUThSz#d|-EFX_1PXnDruc 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

    $rZl)<4J0y!aNs;Sq* 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

    tjV3 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%0D3R&&fByB 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%0AsFZmQ771(73p4P+))0o}vTZ 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

    HNA&KYs>yi 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 diff --git a/vite_vue_ts/public/dist/missile-256mb-v20220706.js b/vite_vue_ts/public/dist/missile-256mb-v20220706.js new file mode 100644 index 00000000..22202f10 --- /dev/null +++ b/vite_vue_ts/public/dist/missile-256mb-v20220706.js @@ -0,0 +1,7062 @@ +var ENVIRONMENT_IS_PTHREAD = true; +var Module = typeof Module !== "undefined" ? Module : {}; +var moduleOverrides = {}; +var key; +for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key] + } +} +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = function(status, toThrow) { + throw toThrow +}; +var ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_HAS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === "object"; +ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; +ENVIRONMENT_HAS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string"; +ENVIRONMENT_IS_NODE = ENVIRONMENT_HAS_NODE && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; +if (Module["ENVIRONMENT"]) { + throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)") +} +var scriptDirectory = ""; + +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory) + } + return scriptDirectory + path +} +var read_, readAsync, readBinary, setWindowTitle; +if (ENVIRONMENT_IS_NODE) { + scriptDirectory = __dirname + "/"; + var nodeFS; + var nodePath; + read_ = function shell_read(filename, binary) { + var ret; + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + ret = nodeFS["readFileSync"](filename); + return binary ? ret : ret.toString() + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret) + } + assert(ret.buffer); + return ret + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; + +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} + +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} + +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(35); + +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 35; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} + +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var getTempRet0 = function() { + return tempRet0 +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} + +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 4928, + "element": "anyfunc" +}); +var ABORT = false; +var EXITSTATUS = 0; + +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} + +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} + +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} + +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_NONE = 3; + +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++ >> 0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} + +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; + +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (u8Array[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { + return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) + } else { + var str = ""; + while (idx < endPtr) { + var u0 = u8Array[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + } + return str +} + +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; + +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +var STACK_BASE = 1398016, + STACK_MAX = 6640896, + DYNAMIC_BASE = 6640896, + DYNAMICTOP_PTR = 1397792; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 268435456; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] +} else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE + }) +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; + +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} + +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} + +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +}(function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); + +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} + +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null : callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; + +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} + +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} + +function preMain() { + checkStackCookie(); + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} + +function exitRuntime() { + checkStackCookie(); + runtimeExited = true +} + +function postRun() { + checkStackCookie(); + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} + +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} + +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; + +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +var dataURIPrefix = "data:application/octet-stream;base64,"; + +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-256mb-v20220706.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch (err) { + abort(err) + } +} + +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }).catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} + +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + removeRunDependency("wasm-instantiate") + } + addRunDependency("wasm-instantiate"); + var trueModule = Module; + + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"]) + } + + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}]; + +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +__ATINIT__.push({ + func: function() { + ___emscripten_environ_constructor() + } +}); +var tempDoublePtr = 1398e3; +assert(tempDoublePtr % 8 == 0); + +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} + +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]" + }) +} + +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch (e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} + +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +var ENV = {}; + +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} + +function ___lock() {} + +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !!p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else + while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + }(fromHeap ? HEAP8 : buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + var src = populate ? remote : local; + var dst = populate ? local : remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch (e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== "." && p !== ".." + } + + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor.continue() + } + } catch (e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch (e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch (e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path + } + path = path ? node.name + "/" + path : node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !!node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch (e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch (e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray) + }, onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch (e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 80 >> 2] = tempI64[0], HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; + +function ___syscall221(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: { + return -28 + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall3(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall5(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___unlock() {} + +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} + +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} + +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >> 2] = tempI64[0], HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} + +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} + +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} + +function _abort() { + abort() +} + +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} + +function _emscripten_get_now() { + abort() +} + +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} + +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return -1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} + +function _emscripten_get_heap_size() { + return HEAP8.length +} + +function _emscripten_is_main_browser_thread() { + return !ENVIRONMENT_IS_WORKER +} + +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} + +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined"; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" || !ENVIRONMENT_IS_FETCH_WORKER) addRunDependency("library_fetch_init") + } +}; + +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch (e) { + if (onerror) onerror(fetch, xhr, e) + } +} + +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError : fetchAttrPersistFile ? performCachedXhr : performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess : reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +var _fabs = Math_abs; + +function _getenv(name) { + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} + +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone = (stringToUTF8("GMT", 1397888, 4), 1397888); + +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} + +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} + +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} + +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} + +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} + +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; + +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} + +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} + +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} + +function _usleep(useconds) { + var msec = useconds / 1e3; + if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { + var start = self["performance"]["now"](); + while (self["performance"]["now"]() - start < msec) {} + } else { + var start = Date.now(); + while (Date.now() - start < msec) {} + } + return 0 +} +Module["_usleep"] = _usleep; + +function _nanosleep(rqtp, rmtp) { + if (rqtp === 0) { + ___setErrNo(28); + return -1 + } + var seconds = HEAP32[rqtp >> 2]; + var nanoseconds = HEAP32[rqtp + 4 >> 2]; + if (nanoseconds < 0 || nanoseconds > 999999999 || seconds < 0) { + ___setErrNo(28); + return -1 + } + if (rmtp !== 0) { + HEAP32[rmtp >> 2] = 0; + HEAP32[rmtp + 4 >> 2] = 0 + } + return _usleep(seconds * 1e6 + nanoseconds / 1e3) +} + +function _pthread_cond_destroy() { + return 0 +} + +function _pthread_cond_init() { + return 0 +} + +function _pthread_create() { + return 6 +} + +function _pthread_join() {} + +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} + +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} + +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} + +function _sysconf(name) { + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return -1 +} + +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +Fetch.staticInit(); + +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2919", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "_context_to_name_6206", "_resample_flush", "___stdio_close", "___emscripten_stdout_close", "_releaseSniffStreamFunc", "_naluLListLengthFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_g711_releaseFunc", "_g711_decodeVideoFrameFunc", "_g711_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_g711_initFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare"]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "_set_compensation", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_g711_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_g711_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "_pushBufferFunc", "_g711_setSniffStreamCodecTypeFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", "_resample_common_int16", "_resample_linear_int16", "_resample_common_int32", "_resample_linear_int32", "_resample_common_float", "_resample_linear_float", "_resample_common_double", "_resample_linear_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_multiple_resample", "_invert_initial_buffer", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiidiiddii = [0, "jsCall_iiiiiiidiiddii_0", "jsCall_iiiiiiidiiddii_1", "jsCall_iiiiiiidiiddii_2", "jsCall_iiiiiiidiiddii_3", "jsCall_iiiiiiidiiddii_4", "jsCall_iiiiiiidiiddii_5", "jsCall_iiiiiiidiiddii_6", "jsCall_iiiiiiidiiddii_7", "jsCall_iiiiiiidiiddii_8", "jsCall_iiiiiiidiiddii_9", "jsCall_iiiiiiidiiddii_10", "jsCall_iiiiiiidiiddii_11", "jsCall_iiiiiiidiiddii_12", "jsCall_iiiiiiidiiddii_13", "jsCall_iiiiiiidiiddii_14", "jsCall_iiiiiiidiiddii_15", "jsCall_iiiiiiidiiddii_16", "jsCall_iiiiiiidiiddii_17", "jsCall_iiiiiiidiiddii_18", "jsCall_iiiiiiidiiddii_19", "jsCall_iiiiiiidiiddii_20", "jsCall_iiiiiiidiiddii_21", "jsCall_iiiiiiidiiddii_22", "jsCall_iiiiiiidiiddii_23", "jsCall_iiiiiiidiiddii_24", "jsCall_iiiiiiidiiddii_25", "jsCall_iiiiiiidiiddii_26", "jsCall_iiiiiiidiiddii_27", "jsCall_iiiiiiidiiddii_28", "jsCall_iiiiiiidiiddii_29", "jsCall_iiiiiiidiiddii_30", "jsCall_iiiiiiidiiddii_31", "jsCall_iiiiiiidiiddii_32", "jsCall_iiiiiiidiiddii_33", "jsCall_iiiiiiidiiddii_34", "_resample_init", 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]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", 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]; +var debug_table_jii = [0, "jsCall_jii_0", "jsCall_jii_1", "jsCall_jii_2", "jsCall_jii_3", "jsCall_jii_4", "jsCall_jii_5", "jsCall_jii_6", "jsCall_jii_7", "jsCall_jii_8", "jsCall_jii_9", "jsCall_jii_10", "jsCall_jii_11", "jsCall_jii_12", "jsCall_jii_13", "jsCall_jii_14", "jsCall_jii_15", "jsCall_jii_16", "jsCall_jii_17", "jsCall_jii_18", "jsCall_jii_19", "jsCall_jii_20", "jsCall_jii_21", "jsCall_jii_22", "jsCall_jii_23", "jsCall_jii_24", "jsCall_jii_25", "jsCall_jii_26", "jsCall_jii_27", "jsCall_jii_28", "jsCall_jii_29", "jsCall_jii_30", "jsCall_jii_31", "jsCall_jii_32", "jsCall_jii_33", "jsCall_jii_34", "_get_out_samples", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "_io_read_seek", 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]; +var debug_table_jij = [0, "jsCall_jij_0", "jsCall_jij_1", "jsCall_jij_2", "jsCall_jij_3", "jsCall_jij_4", "jsCall_jij_5", "jsCall_jij_6", "jsCall_jij_7", "jsCall_jij_8", "jsCall_jij_9", "jsCall_jij_10", "jsCall_jij_11", "jsCall_jij_12", "jsCall_jij_13", "jsCall_jij_14", "jsCall_jij_15", "jsCall_jij_16", "jsCall_jij_17", "jsCall_jij_18", "jsCall_jij_19", "jsCall_jij_20", "jsCall_jij_21", "jsCall_jij_22", "jsCall_jij_23", "jsCall_jij_24", "jsCall_jij_25", "jsCall_jij_26", "jsCall_jij_27", "jsCall_jij_28", "jsCall_jij_29", "jsCall_jij_30", "jsCall_jij_31", "jsCall_jij_32", "jsCall_jij_33", "jsCall_jij_34", "_get_delay", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", 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]; +var debug_table_vdiidiiiiii = [0, "jsCall_vdiidiiiiii_0", "jsCall_vdiidiiiiii_1", "jsCall_vdiidiiiiii_2", "jsCall_vdiidiiiiii_3", "jsCall_vdiidiiiiii_4", "jsCall_vdiidiiiiii_5", "jsCall_vdiidiiiiii_6", "jsCall_vdiidiiiiii_7", "jsCall_vdiidiiiiii_8", "jsCall_vdiidiiiiii_9", "jsCall_vdiidiiiiii_10", "jsCall_vdiidiiiiii_11", "jsCall_vdiidiiiiii_12", "jsCall_vdiidiiiiii_13", "jsCall_vdiidiiiiii_14", "jsCall_vdiidiiiiii_15", "jsCall_vdiidiiiiii_16", "jsCall_vdiidiiiiii_17", "jsCall_vdiidiiiiii_18", "jsCall_vdiidiiiiii_19", "jsCall_vdiidiiiiii_20", "jsCall_vdiidiiiiii_21", "jsCall_vdiidiiiiii_22", "jsCall_vdiidiiiiii_23", "jsCall_vdiidiiiiii_24", "jsCall_vdiidiiiiii_25", "jsCall_vdiidiiiiii_26", "jsCall_vdiidiiiiii_27", "jsCall_vdiidiiiiii_28", "jsCall_vdiidiiiiii_29", "jsCall_vdiidiiiiii_30", "jsCall_vdiidiiiiii_31", "jsCall_vdiidiiiiii_32", "jsCall_vdiidiiiiii_33", "jsCall_vdiidiiiiii_34", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3923", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_resample_free", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", 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, 0, 0, 0, 0]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", "_cpy1", "_cpy2", "_cpy4", "_cpy8", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiid = [0, "jsCall_viiid_0", "jsCall_viiid_1", "jsCall_viiid_2", "jsCall_viiid_3", "jsCall_viiid_4", "jsCall_viiid_5", "jsCall_viiid_6", "jsCall_viiid_7", "jsCall_viiid_8", "jsCall_viiid_9", "jsCall_viiid_10", "jsCall_viiid_11", "jsCall_viiid_12", "jsCall_viiid_13", "jsCall_viiid_14", "jsCall_viiid_15", "jsCall_viiid_16", "jsCall_viiid_17", "jsCall_viiid_18", "jsCall_viiid_19", "jsCall_viiid_20", "jsCall_viiid_21", "jsCall_viiid_22", "jsCall_viiid_23", "jsCall_viiid_24", "jsCall_viiid_25", "jsCall_viiid_26", "jsCall_viiid_27", "jsCall_viiid_28", "jsCall_viiid_29", "jsCall_viiid_30", "jsCall_viiid_31", "jsCall_viiid_32", "jsCall_viiid_33", "jsCall_viiid_34", 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]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", "_mix6to2_s16", "_mix8to2_s16", "_mix6to2_clip_s16", "_mix8to2_clip_s16", "_mix6to2_float", "_mix8to2_float", "_mix6to2_double", "_mix8to2_double", "_mix6to2_s32", "_mix8to2_s32", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S64", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", "_copy_s16", "_copy_clip_s16", "_copy_float", "_copy_double", "_copy_s32", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", 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]; +var debug_table_viiiiiddi = [0, "jsCall_viiiiiddi_0", "jsCall_viiiiiddi_1", "jsCall_viiiiiddi_2", "jsCall_viiiiiddi_3", "jsCall_viiiiiddi_4", "jsCall_viiiiiddi_5", "jsCall_viiiiiddi_6", "jsCall_viiiiiddi_7", "jsCall_viiiiiddi_8", "jsCall_viiiiiddi_9", "jsCall_viiiiiddi_10", "jsCall_viiiiiddi_11", "jsCall_viiiiiddi_12", "jsCall_viiiiiddi_13", "jsCall_viiiiiddi_14", "jsCall_viiiiiddi_15", "jsCall_viiiiiddi_16", "jsCall_viiiiiddi_17", "jsCall_viiiiiddi_18", "jsCall_viiiiiddi_19", "jsCall_viiiiiddi_20", "jsCall_viiiiiddi_21", "jsCall_viiiiiddi_22", "jsCall_viiiiiddi_23", "jsCall_viiiiiddi_24", "jsCall_viiiiiddi_25", "jsCall_viiiiiddi_26", "jsCall_viiiiiddi_27", "jsCall_viiiiiddi_28", "jsCall_viiiiiddi_29", "jsCall_viiiiiddi_30", "jsCall_viiiiiddi_31", "jsCall_viiiiiddi_32", "jsCall_viiiiiddi_33", "jsCall_viiiiiddi_34", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", "_sum2_s16", "_sum2_clip_s16", "_sum2_float", "_sum2_double", "_sum2_s32", 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, 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, 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]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8"]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8"]; +var debug_table_viiijj = [0, "jsCall_viiijj_0", "jsCall_viiijj_1", "jsCall_viiijj_2", "jsCall_viiijj_3", "jsCall_viiijj_4", "jsCall_viiijj_5", "jsCall_viiijj_6", "jsCall_viiijj_7", "jsCall_viiijj_8", "jsCall_viiijj_9", "jsCall_viiijj_10", "jsCall_viiijj_11", "jsCall_viiijj_12", "jsCall_viiijj_13", "jsCall_viiijj_14", "jsCall_viiijj_15", "jsCall_viiijj_16", "jsCall_viiijj_17", "jsCall_viiijj_18", "jsCall_viiijj_19", "jsCall_viiijj_20", "jsCall_viiijj_21", "jsCall_viiijj_22", "jsCall_viiijj_23", "jsCall_viiijj_24", "jsCall_viiijj_25", "jsCall_viiijj_26", "jsCall_viiijj_27", "jsCall_viiijj_28", "jsCall_viiijj_29", "jsCall_viiijj_30", "jsCall_viiijj_31", "jsCall_viiijj_32", "jsCall_viiijj_33", "jsCall_viiijj_34", "_resample_one_int16", "_resample_one_int32", "_resample_one_float", "_resample_one_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiidiiddii": debug_table_iiiiiiidiiddii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jii": debug_table_jii, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jij": debug_table_jij, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vdiidiiiiii": debug_table_vdiidiiiiii, + "vi": debug_table_vi, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiid": debug_table_viiid, + "viiii": debug_table_viiii, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiiddi": debug_table_viiiiiddi, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii, + "viiijj": debug_table_viiijj +}; + +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} + +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} + +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} + +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} + +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} + +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} + +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} + +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} + +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} + +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} + +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} + +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} + +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} + +function nullFunc_iiiiiiidiiddii(x) { + abortFnPtrError(x, "iiiiiiidiiddii") +} + +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} + +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} + +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} + +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} + +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} + +function nullFunc_jii(x) { + abortFnPtrError(x, "jii") +} + +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} + +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} + +function nullFunc_jij(x) { + abortFnPtrError(x, "jij") +} + +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} + +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} + +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} + +function nullFunc_vdiidiiiiii(x) { + abortFnPtrError(x, "vdiidiiiiii") +} + +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} + +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} + +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} + +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} + +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} + +function nullFunc_viiid(x) { + abortFnPtrError(x, "viiid") +} + +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} + +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} + +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} + +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} + +function nullFunc_viiiiiddi(x) { + abortFnPtrError(x, "viiiiiddi") +} + +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} + +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} + +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} + +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} + +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} + +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} + +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} + +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} + +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} + +function nullFunc_viiijj(x) { + abortFnPtrError(x, "viiijj") +} + +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iiiiiiidiiddii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) +} + +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_jii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jij(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_v(index) { + functionPointers[index]() +} + +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_vdiidiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} + +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} + +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} + +function jsCall_viiid(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiddi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} + +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} + +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} + +function jsCall_viiijj(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___buildEnvironment": ___buildEnvironment, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_nanosleep": _nanosleep, + "_pthread_cond_destroy": _pthread_cond_destroy, + "_pthread_cond_init": _pthread_cond_init, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiidiiddii": jsCall_iiiiiiidiiddii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jii": jsCall_jii, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jij": jsCall_jij, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vdiidiiiiii": jsCall_vdiidiiiiii, + "jsCall_vi": jsCall_vi, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiid": jsCall_viiid, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiiddi": jsCall_viiiiiddi, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "jsCall_viiijj": jsCall_viiijj, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiidiiddii": nullFunc_iiiiiiidiiddii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jii": nullFunc_jii, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jij": nullFunc_jij, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vdiidiiiiii": nullFunc_vdiidiiiiii, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiid": nullFunc_viiid, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiiddi": nullFunc_viiiiiddi, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "nullFunc_viiijj": nullFunc_viiijj, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffHttpG711Init = Module["_AVSniffHttpG711Init"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpG711Init"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeG711Frame = Module["_decodeG711Frame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeG711Frame"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getG711BufferLengthApi = Module["_getG711BufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getG711BufferLengthApi"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffG711Module = Module["_initializeSniffG711Module"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffG711Module"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _naluLListLength = Module["_naluLListLength"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_naluLListLength"].apply(null, arguments) +}; +var _pushSniffG711FlvData = Module["_pushSniffG711FlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffG711FlvData"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseG711 = Module["_releaseG711"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseG711"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "establishStackSpace")) Module["establishStackSpace"] = function() { + abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +var calledRun; + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; + +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch (e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} + +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; + +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} + +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +noExitRuntime = true; +run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-256mb-v20220706.wasm b/vite_vue_ts/public/dist/missile-256mb-v20220706.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cafdf49ef7793fe97fea3fd1a1a2474e99d42fe2 GIT binary patch literal 2108180 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∋}plFFg92d##zMMV&| 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 F@4qkN*@yrD literal 0 HcmV?d00001 diff --git a/vite_vue_ts/public/dist/missile-256mb.js b/vite_vue_ts/public/dist/missile-256mb.js new file mode 100644 index 00000000..22202f10 --- /dev/null +++ b/vite_vue_ts/public/dist/missile-256mb.js @@ -0,0 +1,7062 @@ +var ENVIRONMENT_IS_PTHREAD = true; +var Module = typeof Module !== "undefined" ? Module : {}; +var moduleOverrides = {}; +var key; +for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key] + } +} +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = function(status, toThrow) { + throw toThrow +}; +var ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_HAS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === "object"; +ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; +ENVIRONMENT_HAS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string"; +ENVIRONMENT_IS_NODE = ENVIRONMENT_HAS_NODE && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; +if (Module["ENVIRONMENT"]) { + throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)") +} +var scriptDirectory = ""; + +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory) + } + return scriptDirectory + path +} +var read_, readAsync, readBinary, setWindowTitle; +if (ENVIRONMENT_IS_NODE) { + scriptDirectory = __dirname + "/"; + var nodeFS; + var nodePath; + read_ = function shell_read(filename, binary) { + var ret; + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + ret = nodeFS["readFileSync"](filename); + return binary ? ret : ret.toString() + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret) + } + assert(ret.buffer); + return ret + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; + +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} + +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} + +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(35); + +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 35; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} + +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var getTempRet0 = function() { + return tempRet0 +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} + +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 4928, + "element": "anyfunc" +}); +var ABORT = false; +var EXITSTATUS = 0; + +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} + +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} + +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} + +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_NONE = 3; + +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++ >> 0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} + +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; + +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (u8Array[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { + return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) + } else { + var str = ""; + while (idx < endPtr) { + var u0 = u8Array[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + } + return str +} + +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; + +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +var STACK_BASE = 1398016, + STACK_MAX = 6640896, + DYNAMIC_BASE = 6640896, + DYNAMICTOP_PTR = 1397792; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 268435456; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] +} else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE + }) +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; + +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} + +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} + +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +}(function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); + +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} + +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null : callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; + +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} + +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} + +function preMain() { + checkStackCookie(); + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} + +function exitRuntime() { + checkStackCookie(); + runtimeExited = true +} + +function postRun() { + checkStackCookie(); + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} + +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} + +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; + +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +var dataURIPrefix = "data:application/octet-stream;base64,"; + +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-256mb-v20220706.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch (err) { + abort(err) + } +} + +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }).catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} + +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + removeRunDependency("wasm-instantiate") + } + addRunDependency("wasm-instantiate"); + var trueModule = Module; + + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"]) + } + + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}]; + +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +__ATINIT__.push({ + func: function() { + ___emscripten_environ_constructor() + } +}); +var tempDoublePtr = 1398e3; +assert(tempDoublePtr % 8 == 0); + +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} + +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]" + }) +} + +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch (e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} + +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +var ENV = {}; + +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} + +function ___lock() {} + +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !!p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else + while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + }(fromHeap ? HEAP8 : buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + var src = populate ? remote : local; + var dst = populate ? local : remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch (e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== "." && p !== ".." + } + + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor.continue() + } + } catch (e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch (e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch (e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path + } + path = path ? node.name + "/" + path : node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !!node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch (e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch (e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray) + }, onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch (e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 80 >> 2] = tempI64[0], HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; + +function ___syscall221(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: { + return -28 + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall3(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall5(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___unlock() {} + +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} + +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} + +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >> 2] = tempI64[0], HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} + +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} + +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} + +function _abort() { + abort() +} + +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} + +function _emscripten_get_now() { + abort() +} + +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} + +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return -1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} + +function _emscripten_get_heap_size() { + return HEAP8.length +} + +function _emscripten_is_main_browser_thread() { + return !ENVIRONMENT_IS_WORKER +} + +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} + +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined"; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" || !ENVIRONMENT_IS_FETCH_WORKER) addRunDependency("library_fetch_init") + } +}; + +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch (e) { + if (onerror) onerror(fetch, xhr, e) + } +} + +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError : fetchAttrPersistFile ? performCachedXhr : performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess : reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +var _fabs = Math_abs; + +function _getenv(name) { + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} + +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone = (stringToUTF8("GMT", 1397888, 4), 1397888); + +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} + +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} + +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} + +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} + +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} + +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; + +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} + +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} + +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} + +function _usleep(useconds) { + var msec = useconds / 1e3; + if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { + var start = self["performance"]["now"](); + while (self["performance"]["now"]() - start < msec) {} + } else { + var start = Date.now(); + while (Date.now() - start < msec) {} + } + return 0 +} +Module["_usleep"] = _usleep; + +function _nanosleep(rqtp, rmtp) { + if (rqtp === 0) { + ___setErrNo(28); + return -1 + } + var seconds = HEAP32[rqtp >> 2]; + var nanoseconds = HEAP32[rqtp + 4 >> 2]; + if (nanoseconds < 0 || nanoseconds > 999999999 || seconds < 0) { + ___setErrNo(28); + return -1 + } + if (rmtp !== 0) { + HEAP32[rmtp >> 2] = 0; + HEAP32[rmtp + 4 >> 2] = 0 + } + return _usleep(seconds * 1e6 + nanoseconds / 1e3) +} + +function _pthread_cond_destroy() { + return 0 +} + +function _pthread_cond_init() { + return 0 +} + +function _pthread_create() { + return 6 +} + +function _pthread_join() {} + +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} + +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} + +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} + +function _sysconf(name) { + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return -1 +} + +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +Fetch.staticInit(); + +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2919", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "_context_to_name_6206", "_resample_flush", "___stdio_close", "___emscripten_stdout_close", "_releaseSniffStreamFunc", "_naluLListLengthFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_g711_releaseFunc", "_g711_decodeVideoFrameFunc", "_g711_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_g711_initFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare"]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "_set_compensation", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_g711_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_g711_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "_pushBufferFunc", "_g711_setSniffStreamCodecTypeFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", "_resample_common_int16", "_resample_linear_int16", "_resample_common_int32", "_resample_linear_int32", "_resample_common_float", "_resample_linear_float", "_resample_common_double", "_resample_linear_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_multiple_resample", "_invert_initial_buffer", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiidiiddii = [0, "jsCall_iiiiiiidiiddii_0", "jsCall_iiiiiiidiiddii_1", "jsCall_iiiiiiidiiddii_2", "jsCall_iiiiiiidiiddii_3", "jsCall_iiiiiiidiiddii_4", "jsCall_iiiiiiidiiddii_5", "jsCall_iiiiiiidiiddii_6", "jsCall_iiiiiiidiiddii_7", "jsCall_iiiiiiidiiddii_8", "jsCall_iiiiiiidiiddii_9", "jsCall_iiiiiiidiiddii_10", "jsCall_iiiiiiidiiddii_11", "jsCall_iiiiiiidiiddii_12", "jsCall_iiiiiiidiiddii_13", "jsCall_iiiiiiidiiddii_14", "jsCall_iiiiiiidiiddii_15", "jsCall_iiiiiiidiiddii_16", "jsCall_iiiiiiidiiddii_17", "jsCall_iiiiiiidiiddii_18", "jsCall_iiiiiiidiiddii_19", "jsCall_iiiiiiidiiddii_20", "jsCall_iiiiiiidiiddii_21", "jsCall_iiiiiiidiiddii_22", "jsCall_iiiiiiidiiddii_23", "jsCall_iiiiiiidiiddii_24", "jsCall_iiiiiiidiiddii_25", "jsCall_iiiiiiidiiddii_26", "jsCall_iiiiiiidiiddii_27", "jsCall_iiiiiiidiiddii_28", "jsCall_iiiiiiidiiddii_29", "jsCall_iiiiiiidiiddii_30", "jsCall_iiiiiiidiiddii_31", "jsCall_iiiiiiidiiddii_32", "jsCall_iiiiiiidiiddii_33", "jsCall_iiiiiiidiiddii_34", "_resample_init", 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]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", 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]; +var debug_table_jii = [0, "jsCall_jii_0", "jsCall_jii_1", "jsCall_jii_2", "jsCall_jii_3", "jsCall_jii_4", "jsCall_jii_5", "jsCall_jii_6", "jsCall_jii_7", "jsCall_jii_8", "jsCall_jii_9", "jsCall_jii_10", "jsCall_jii_11", "jsCall_jii_12", "jsCall_jii_13", "jsCall_jii_14", "jsCall_jii_15", "jsCall_jii_16", "jsCall_jii_17", "jsCall_jii_18", "jsCall_jii_19", "jsCall_jii_20", "jsCall_jii_21", "jsCall_jii_22", "jsCall_jii_23", "jsCall_jii_24", "jsCall_jii_25", "jsCall_jii_26", "jsCall_jii_27", "jsCall_jii_28", "jsCall_jii_29", "jsCall_jii_30", "jsCall_jii_31", "jsCall_jii_32", "jsCall_jii_33", "jsCall_jii_34", "_get_out_samples", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "_io_read_seek", 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]; +var debug_table_jij = [0, "jsCall_jij_0", "jsCall_jij_1", "jsCall_jij_2", "jsCall_jij_3", "jsCall_jij_4", "jsCall_jij_5", "jsCall_jij_6", "jsCall_jij_7", "jsCall_jij_8", "jsCall_jij_9", "jsCall_jij_10", "jsCall_jij_11", "jsCall_jij_12", "jsCall_jij_13", "jsCall_jij_14", "jsCall_jij_15", "jsCall_jij_16", "jsCall_jij_17", "jsCall_jij_18", "jsCall_jij_19", "jsCall_jij_20", "jsCall_jij_21", "jsCall_jij_22", "jsCall_jij_23", "jsCall_jij_24", "jsCall_jij_25", "jsCall_jij_26", "jsCall_jij_27", "jsCall_jij_28", "jsCall_jij_29", "jsCall_jij_30", "jsCall_jij_31", "jsCall_jij_32", "jsCall_jij_33", "jsCall_jij_34", "_get_delay", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", 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]; +var debug_table_vdiidiiiiii = [0, "jsCall_vdiidiiiiii_0", "jsCall_vdiidiiiiii_1", "jsCall_vdiidiiiiii_2", "jsCall_vdiidiiiiii_3", "jsCall_vdiidiiiiii_4", "jsCall_vdiidiiiiii_5", "jsCall_vdiidiiiiii_6", "jsCall_vdiidiiiiii_7", "jsCall_vdiidiiiiii_8", "jsCall_vdiidiiiiii_9", "jsCall_vdiidiiiiii_10", "jsCall_vdiidiiiiii_11", "jsCall_vdiidiiiiii_12", "jsCall_vdiidiiiiii_13", "jsCall_vdiidiiiiii_14", "jsCall_vdiidiiiiii_15", "jsCall_vdiidiiiiii_16", "jsCall_vdiidiiiiii_17", "jsCall_vdiidiiiiii_18", "jsCall_vdiidiiiiii_19", "jsCall_vdiidiiiiii_20", "jsCall_vdiidiiiiii_21", "jsCall_vdiidiiiiii_22", "jsCall_vdiidiiiiii_23", "jsCall_vdiidiiiiii_24", "jsCall_vdiidiiiiii_25", "jsCall_vdiidiiiiii_26", "jsCall_vdiidiiiiii_27", "jsCall_vdiidiiiiii_28", "jsCall_vdiidiiiiii_29", "jsCall_vdiidiiiiii_30", "jsCall_vdiidiiiiii_31", "jsCall_vdiidiiiiii_32", "jsCall_vdiidiiiiii_33", "jsCall_vdiidiiiiii_34", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3923", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_resample_free", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", 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, 0, 0, 0, 0]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", "_cpy1", "_cpy2", "_cpy4", "_cpy8", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiid = [0, "jsCall_viiid_0", "jsCall_viiid_1", "jsCall_viiid_2", "jsCall_viiid_3", "jsCall_viiid_4", "jsCall_viiid_5", "jsCall_viiid_6", "jsCall_viiid_7", "jsCall_viiid_8", "jsCall_viiid_9", "jsCall_viiid_10", "jsCall_viiid_11", "jsCall_viiid_12", "jsCall_viiid_13", "jsCall_viiid_14", "jsCall_viiid_15", "jsCall_viiid_16", "jsCall_viiid_17", "jsCall_viiid_18", "jsCall_viiid_19", "jsCall_viiid_20", "jsCall_viiid_21", "jsCall_viiid_22", "jsCall_viiid_23", "jsCall_viiid_24", "jsCall_viiid_25", "jsCall_viiid_26", "jsCall_viiid_27", "jsCall_viiid_28", "jsCall_viiid_29", "jsCall_viiid_30", "jsCall_viiid_31", "jsCall_viiid_32", "jsCall_viiid_33", "jsCall_viiid_34", 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]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", "_mix6to2_s16", "_mix8to2_s16", "_mix6to2_clip_s16", "_mix8to2_clip_s16", "_mix6to2_float", "_mix8to2_float", "_mix6to2_double", "_mix8to2_double", "_mix6to2_s32", "_mix8to2_s32", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S64", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", "_copy_s16", "_copy_clip_s16", "_copy_float", "_copy_double", "_copy_s32", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", 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]; +var debug_table_viiiiiddi = [0, "jsCall_viiiiiddi_0", "jsCall_viiiiiddi_1", "jsCall_viiiiiddi_2", "jsCall_viiiiiddi_3", "jsCall_viiiiiddi_4", "jsCall_viiiiiddi_5", "jsCall_viiiiiddi_6", "jsCall_viiiiiddi_7", "jsCall_viiiiiddi_8", "jsCall_viiiiiddi_9", "jsCall_viiiiiddi_10", "jsCall_viiiiiddi_11", "jsCall_viiiiiddi_12", "jsCall_viiiiiddi_13", "jsCall_viiiiiddi_14", "jsCall_viiiiiddi_15", "jsCall_viiiiiddi_16", "jsCall_viiiiiddi_17", "jsCall_viiiiiddi_18", "jsCall_viiiiiddi_19", "jsCall_viiiiiddi_20", "jsCall_viiiiiddi_21", "jsCall_viiiiiddi_22", "jsCall_viiiiiddi_23", "jsCall_viiiiiddi_24", "jsCall_viiiiiddi_25", "jsCall_viiiiiddi_26", "jsCall_viiiiiddi_27", "jsCall_viiiiiddi_28", "jsCall_viiiiiddi_29", "jsCall_viiiiiddi_30", "jsCall_viiiiiddi_31", "jsCall_viiiiiddi_32", "jsCall_viiiiiddi_33", "jsCall_viiiiiddi_34", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", "_sum2_s16", "_sum2_clip_s16", "_sum2_float", "_sum2_double", "_sum2_s32", 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, 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, 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]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8"]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8"]; +var debug_table_viiijj = [0, "jsCall_viiijj_0", "jsCall_viiijj_1", "jsCall_viiijj_2", "jsCall_viiijj_3", "jsCall_viiijj_4", "jsCall_viiijj_5", "jsCall_viiijj_6", "jsCall_viiijj_7", "jsCall_viiijj_8", "jsCall_viiijj_9", "jsCall_viiijj_10", "jsCall_viiijj_11", "jsCall_viiijj_12", "jsCall_viiijj_13", "jsCall_viiijj_14", "jsCall_viiijj_15", "jsCall_viiijj_16", "jsCall_viiijj_17", "jsCall_viiijj_18", "jsCall_viiijj_19", "jsCall_viiijj_20", "jsCall_viiijj_21", "jsCall_viiijj_22", "jsCall_viiijj_23", "jsCall_viiijj_24", "jsCall_viiijj_25", "jsCall_viiijj_26", "jsCall_viiijj_27", "jsCall_viiijj_28", "jsCall_viiijj_29", "jsCall_viiijj_30", "jsCall_viiijj_31", "jsCall_viiijj_32", "jsCall_viiijj_33", "jsCall_viiijj_34", "_resample_one_int16", "_resample_one_int32", "_resample_one_float", "_resample_one_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiidiiddii": debug_table_iiiiiiidiiddii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jii": debug_table_jii, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jij": debug_table_jij, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vdiidiiiiii": debug_table_vdiidiiiiii, + "vi": debug_table_vi, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiid": debug_table_viiid, + "viiii": debug_table_viiii, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiiddi": debug_table_viiiiiddi, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii, + "viiijj": debug_table_viiijj +}; + +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} + +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} + +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} + +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} + +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} + +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} + +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} + +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} + +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} + +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} + +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} + +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} + +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} + +function nullFunc_iiiiiiidiiddii(x) { + abortFnPtrError(x, "iiiiiiidiiddii") +} + +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} + +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} + +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} + +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} + +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} + +function nullFunc_jii(x) { + abortFnPtrError(x, "jii") +} + +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} + +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} + +function nullFunc_jij(x) { + abortFnPtrError(x, "jij") +} + +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} + +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} + +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} + +function nullFunc_vdiidiiiiii(x) { + abortFnPtrError(x, "vdiidiiiiii") +} + +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} + +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} + +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} + +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} + +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} + +function nullFunc_viiid(x) { + abortFnPtrError(x, "viiid") +} + +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} + +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} + +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} + +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} + +function nullFunc_viiiiiddi(x) { + abortFnPtrError(x, "viiiiiddi") +} + +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} + +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} + +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} + +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} + +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} + +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} + +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} + +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} + +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} + +function nullFunc_viiijj(x) { + abortFnPtrError(x, "viiijj") +} + +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iiiiiiidiiddii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) +} + +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_jii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jij(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_v(index) { + functionPointers[index]() +} + +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_vdiidiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} + +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} + +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} + +function jsCall_viiid(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiddi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} + +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} + +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} + +function jsCall_viiijj(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___buildEnvironment": ___buildEnvironment, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_nanosleep": _nanosleep, + "_pthread_cond_destroy": _pthread_cond_destroy, + "_pthread_cond_init": _pthread_cond_init, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiidiiddii": jsCall_iiiiiiidiiddii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jii": jsCall_jii, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jij": jsCall_jij, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vdiidiiiiii": jsCall_vdiidiiiiii, + "jsCall_vi": jsCall_vi, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiid": jsCall_viiid, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiiddi": jsCall_viiiiiddi, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "jsCall_viiijj": jsCall_viiijj, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiidiiddii": nullFunc_iiiiiiidiiddii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jii": nullFunc_jii, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jij": nullFunc_jij, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vdiidiiiiii": nullFunc_vdiidiiiiii, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiid": nullFunc_viiid, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiiddi": nullFunc_viiiiiddi, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "nullFunc_viiijj": nullFunc_viiijj, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffHttpG711Init = Module["_AVSniffHttpG711Init"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpG711Init"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeG711Frame = Module["_decodeG711Frame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeG711Frame"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getG711BufferLengthApi = Module["_getG711BufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getG711BufferLengthApi"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffG711Module = Module["_initializeSniffG711Module"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffG711Module"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _naluLListLength = Module["_naluLListLength"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_naluLListLength"].apply(null, arguments) +}; +var _pushSniffG711FlvData = Module["_pushSniffG711FlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffG711FlvData"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseG711 = Module["_releaseG711"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseG711"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "establishStackSpace")) Module["establishStackSpace"] = function() { + abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +var calledRun; + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; + +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch (e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} + +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; + +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} + +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +noExitRuntime = true; +run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-512mb-v20220421.js b/vite_vue_ts/public/dist/missile-512mb-v20220421.js deleted file mode 100644 index 84f87386..00000000 --- a/vite_vue_ts/public/dist/missile-512mb-v20220421.js +++ /dev/null @@ -1,2 +0,0 @@ -var ENVIRONMENT_IS_PTHREAD = true; -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";var nodeFS;var nodePath;read_=function shell_read(filename,binary){var ret;if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)};setWindowTitle=function(title){document.title=title}}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments"))Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_")}});if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram"))Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram")}});if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit"))Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_")}});assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");if(!Object.getOwnPropertyDescriptor(Module,"read"))Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_")}});if(!Object.getOwnPropertyDescriptor(Module,"readAsync"))Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync")}});if(!Object.getOwnPropertyDescriptor(Module,"readBinary"))Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary")}});stackSave=stackRestore=stackAlloc=function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")};function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly")}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":function(x,y){return x%y},"debugger":function(){debugger}};var jsCallStartIndex=1;var functionPointers=new Array(35);function addFunction(func,sig){assert(typeof func!=="undefined");var base=0;for(var i=base;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":3968,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;if(u>=2097152)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).");outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var PAGE_SIZE=16384;var WASM_PAGE_SIZE=65536;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=1134400,STACK_MAX=6377280,DYNAMIC_BASE=6377280,DYNAMICTOP_PTR=1134176;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||536870912;if(!Object.getOwnPropertyDescriptor(Module,"TOTAL_MEMORY"))Object.defineProperty(Module,"TOTAL_MEMORY",{configurable:true,get:function(){abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}});assert(INITIAL_TOTAL_MEMORY>=TOTAL_STACK,"TOTAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE,"maximum":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;assert(INITIAL_TOTAL_MEMORY%WASM_PAGE_SIZE===0);updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){var cookie1=HEAPU32[(STACK_MAX>>2)-1];var cookie2=HEAPU32[(STACK_MAX>>2)-2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+cookie2.toString(16)+" "+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function abortFnPtrError(ptr,sig){var possibleSig="";for(var x in debug_tables){var tbl=debug_tables[x];if(tbl[ptr]){possibleSig+='as sig "'+x+'" pointing to function '+tbl[ptr]+", "}}abort("Invalid function pointer "+ptr+" called with signature '"+sig+"'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: "+possibleSig)}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;throw output}if(!ENVIRONMENT_IS_PTHREAD)addOnPreRun(function(){if(typeof SharedArrayBuffer!=="undefined"){addRunDependency("pthreads");PThread.allocateUnusedWorkers(5,function(){removeRunDependency("pthreads")})}});var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="missile-512mb-v20220421.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_unstable":asmLibraryArg,"global":{"NaN":NaN,Infinity:Infinity},"global.Math":Math,"asm2wasm":asm2wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiatedSource(output){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}Module["asm"]=createWasm;var tempDouble;var tempI64;var ASM_CONSTS=[function(){if(typeof window!="undefined"){window.dispatchEvent(new CustomEvent("wasmLoaded"))}else{global.onWASMLoaded&&global.onWASMLoaded()}}];function _emscripten_asm_const_i(code){return ASM_CONSTS[code]()}__ATINIT__.push({func:function(){___emscripten_environ_constructor()}});var tempDoublePtr=1134384;assert(tempDoublePtr%8==0);function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b__Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]="web_user";ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]=(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";ENV["_"]=thisProgram;poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___lock(){}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else err("failed to set errno from JS");return value}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=function(e){done(this.error);e.preventDefault()};transaction.oncomplete=function(e){if(!errored){callback(null)}};create.sort().forEach(function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};var NODEFS={isWindows:false,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={1024:flags["O_APPEND"],64:flags["O_CREAT"],128:flags["O_EXCL"],0:flags["O_RDONLY"],2:flags["O_RDWR"],4096:flags["O_SYNC"],512:flags["O_TRUNC"],1:flags["O_WRONLY"]}},bufferFrom:function(arrayBuffer){return Buffer["alloc"]?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)},convertNodeCode:function(e){var code=e.code;assert(code in ERRNO_CODES);return ERRNO_CODES[code]},mount:function(mount){assert(ENVIRONMENT_HAS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)},createNode:function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(28)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode:function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return stat.mode},realPath:function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)},flagsForNode:function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(28)}},node_ops:{getattr:function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr:function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},lookup:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod:function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return node},rename:function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},unlink:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},rmdir:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readdir:function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},symlink:function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readlink:function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}},stream_ops:{open:function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},close:function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},read:function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},write:function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size},write:function(stream,buffer,offset,length,position){throw new FS.ErrnoError(29)},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(path,opts){path=PATH_FS.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 2}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 2}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(fd){if(fd===undefined)fd=SYSCALLS.get();var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:___setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_close(){return _fd_close.apply(null,arguments)}function _fd_fdstat_get(fd,pbuf){try{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4;HEAP8[pbuf>>0]=type;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_fdstat_get(){return _fd_fdstat_get.apply(null,arguments)}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_seek(){return _fd_seek.apply(null,arguments)}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_write(){return _fd_write.apply(null,arguments)}function __emscripten_fetch_free(id){delete Fetch.xhrs[id-1]}function _abort(){abort()}function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return 0||ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||typeof performance==="object"&&performance&&typeof performance["now"]==="function"}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(28);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function _emscripten_get_heap_size(){return HEAP8.length}function _emscripten_is_main_browser_thread(){return!ENVIRONMENT_IS_WORKER}function abortOnCannotGrowMemory(requestedSize){abort("Cannot enlarge memory arrays to size "+requestedSize+" bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+HEAP8.length+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function _emscripten_resize_heap(requestedSize){abortOnCannotGrowMemory(requestedSize)}var Fetch={xhrs:[],setu64:function(addr,val){HEAPU32[addr>>2]=val;HEAPU32[addr+4>>2]=val/4294967296|0},openDatabase:function(dbname,dbversion,onsuccess,onerror){try{var openRequest=indexedDB.open(dbname,dbversion)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function(event){var db=event.target.result;if(db.objectStoreNames.contains("FILES")){db.deleteObjectStore("FILES")}db.createObjectStore("FILES")};openRequest.onsuccess=function(event){onsuccess(event.target.result)};openRequest.onerror=function(error){onerror(error)}},staticInit:function(){var isMainThread=typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined";var onsuccess=function(db){Fetch.dbInstance=db;if(isMainThread){removeRunDependency("library_fetch_init")}};var onerror=function(){Fetch.dbInstance=false;if(isMainThread){removeRunDependency("library_fetch_init")}};Fetch.openDatabase("emscripten_filesystem",1,onsuccess,onerror);if(typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined"||!ENVIRONMENT_IS_FETCH_WORKER)addRunDependency("library_fetch_init")}};function __emscripten_fetch_xhr(fetch,onsuccess,onerror,onprogress,onreadystatechange){var url=HEAPU32[fetch+8>>2];if(!url){onerror(fetch,0,"no url specified!");return}var url_=UTF8ToString(url);var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);if(!requestMethod)requestMethod="GET";var userData=HEAPU32[fetch_attr+32>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var timeoutMsecs=HEAPU32[fetch_attr+56>>2];var withCredentials=!!HEAPU32[fetch_attr+60>>2];var destinationPath=HEAPU32[fetch_attr+64>>2];var userName=HEAPU32[fetch_attr+68>>2];var password=HEAPU32[fetch_attr+72>>2];var requestHeaders=HEAPU32[fetch_attr+76>>2];var overriddenMimeType=HEAPU32[fetch_attr+80>>2];var dataPtr=HEAPU32[fetch_attr+84>>2];var dataLength=HEAPU32[fetch_attr+88>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var fetchAttrSynchronous=!!(fetchAttributes&64);var fetchAttrWaitable=!!(fetchAttributes&128);var userNameStr=userName?UTF8ToString(userName):undefined;var passwordStr=password?UTF8ToString(password):undefined;var overriddenMimeTypeStr=overriddenMimeType?UTF8ToString(overriddenMimeType):undefined;var xhr=new XMLHttpRequest;xhr.withCredentials=withCredentials;xhr.open(requestMethod,url_,!fetchAttrSynchronous,userNameStr,passwordStr);if(!fetchAttrSynchronous)xhr.timeout=timeoutMsecs;xhr.url_=url_;assert(!fetchAttrStreamData,"streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()");xhr.responseType="arraybuffer";if(overriddenMimeType){xhr.overrideMimeType(overriddenMimeTypeStr)}if(requestHeaders){for(;;){var key=HEAPU32[requestHeaders>>2];if(!key)break;var value=HEAPU32[requestHeaders+4>>2];if(!value)break;requestHeaders+=8;var keyStr=UTF8ToString(key);var valueStr=UTF8ToString(value);xhr.setRequestHeader(keyStr,valueStr)}}Fetch.xhrs.push(xhr);var id=Fetch.xhrs.length;HEAPU32[fetch+0>>2]=id;var data=dataPtr&&dataLength?HEAPU8.slice(dataPtr,dataPtr+dataLength):null;xhr.onload=function(e){var len=xhr.response?xhr.response.byteLength:0;var ptr=0;var ptrLen=0;if(fetchAttrLoadToMemory&&!fetchAttrStreamData){ptrLen=len;ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,0);if(len){Fetch.setu64(fetch+32,len)}HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState===4&&xhr.status===0){if(len>0)xhr.status=200;else xhr.status=404}HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(xhr.status>=200&&xhr.status<300){if(onsuccess)onsuccess(fetch,xhr,e)}else{if(onerror)onerror(fetch,xhr,e)}};xhr.onerror=function(e){var status=xhr.status;if(xhr.readyState===4&&status===0)status=404;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=xhr.readyState;HEAPU16[fetch+42>>1]=status;if(onerror)onerror(fetch,xhr,e)};xhr.ontimeout=function(e){if(onerror)onerror(fetch,xhr,e)};xhr.onprogress=function(e){var ptrLen=fetchAttrLoadToMemory&&fetchAttrStreamData&&xhr.response?xhr.response.byteLength:0;var ptr=0;if(fetchAttrLoadToMemory&&fetchAttrStreamData){ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,e.loaded-ptrLen);Fetch.setu64(fetch+32,e.total);HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=3&&xhr.status===0&&e.loaded>0)xhr.status=200;HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(onprogress)onprogress(fetch,xhr,e)};xhr.onreadystatechange=function(e){HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=2){HEAPU16[fetch+42>>1]=xhr.status}if(onreadystatechange)onreadystatechange(fetch,xhr,e)};try{xhr.send(data)}catch(e){if(onerror)onerror(fetch,xhr,e)}}function __emscripten_fetch_cache_data(db,fetch,data,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var destinationPath=HEAPU32[fetch_attr+64>>2];if(!destinationPath)destinationPath=HEAPU32[fetch+8>>2];var destinationPathStr=UTF8ToString(destinationPath);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var putRequest=packages.put(data,destinationPathStr);putRequest.onsuccess=function(event){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,destinationPathStr)};putRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=413;stringToUTF8("Payload Too Large",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_load_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readonly");var packages=transaction.objectStore("FILES");var getRequest=packages.get(pathStr);getRequest.onsuccess=function(event){if(event.target.result){var value=event.target.result;var len=value.byteLength||value.length;var ptr=_malloc(len);HEAPU8.set(new Uint8Array(value),ptr);HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,len);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,len);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)}else{HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,"no data")}};getRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_delete_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var request=packages.delete(pathStr);request.onsuccess=function(event){var value=event.target.result;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)};request.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function _emscripten_start_fetch(fetch,successcb,errorcb,progresscb,readystatechangecb){if(typeof noExitRuntime!=="undefined")noExitRuntime=true;var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);var onsuccess=HEAPU32[fetch_attr+36>>2];var onerror=HEAPU32[fetch_attr+40>>2];var onprogress=HEAPU32[fetch_attr+44>>2];var onreadystatechange=HEAPU32[fetch_attr+48>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrNoDownload=!!(fetchAttributes&32);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var reportSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var reportProgress=function(fetch,xhr,e){if(onprogress)dynCall_vi(onprogress,fetch);else if(progresscb)progresscb(fetch)};var reportError=function(fetch,xhr,e){if(onerror)dynCall_vi(onerror,fetch);else if(errorcb)errorcb(fetch)};var reportReadyStateChange=function(fetch,xhr,e){if(onreadystatechange)dynCall_vi(onreadystatechange,fetch);else if(readystatechangecb)readystatechangecb(fetch)};var performUncachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,reportSuccess,reportError,reportProgress,reportReadyStateChange)};var cacheResultAndReportSuccess=function(fetch,xhr,e){var storeSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var storeError=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,xhr.response,storeSuccess,storeError)};var performCachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,cacheResultAndReportSuccess,reportError,reportProgress,reportReadyStateChange)};if(requestMethod==="EM_IDB_STORE"){var ptr=HEAPU32[fetch_attr+84>>2];__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,HEAPU8.slice(ptr,ptr+HEAPU32[fetch_attr+88>>2]),reportSuccess,reportError)}else if(requestMethod==="EM_IDB_DELETE"){__emscripten_fetch_delete_cached_data(Fetch.dbInstance,fetch,reportSuccess,reportError)}else if(!fetchAttrReplace){__emscripten_fetch_load_cached_data(Fetch.dbInstance,fetch,reportSuccess,fetchAttrNoDownload?reportError:fetchAttrPersistFile?performCachedXhr:performUncachedXhr)}else if(!fetchAttrNoDownload){__emscripten_fetch_xhr(fetch,fetchAttrPersistFile?cacheResultAndReportSuccess:reportSuccess,reportError,reportProgress,reportReadyStateChange)}else{return 0}return fetch}var _fabs=Math_abs;function _getenv(name){if(name===0)return 0;name=UTF8ToString(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=(stringToUTF8("GMT",1134272,4),1134272);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(a0){return _llvm_exp2_f32(a0)}function _llvm_log2_f32(x){return Math.log(x)/Math.LN2}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);stackRestore(ret)}function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(stackSave());return self.LLVM_SAVEDSTACKS.length-1}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _usleep(useconds){var msec=useconds/1e3;if((ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]){var start=self["performance"]["now"]();while(self["performance"]["now"]()-start>2];var nanoseconds=HEAP32[rqtp+4>>2];if(nanoseconds<0||nanoseconds>999999999||seconds<0){___setErrNo(28);return-1}if(rmtp!==0){HEAP32[rmtp>>2]=0;HEAP32[rmtp+4>>2]=0}return _usleep(seconds*1e6+nanoseconds/1e3)}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_create(){return 6}function _pthread_join(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-65536;maxHeapSize=HEAPU8.length;return maxHeapSize/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(28);return-1}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}FS.staticInit();if(ENVIRONMENT_HAS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof performance==="object"&&performance&&typeof performance["now"]==="function"){_emscripten_get_now=function(){return performance["now"]()}}else{_emscripten_get_now=Date.now}Fetch.staticInit();function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var debug_table_dd=[0,"jsCall_dd_0","jsCall_dd_1","jsCall_dd_2","jsCall_dd_3","jsCall_dd_4","jsCall_dd_5","jsCall_dd_6","jsCall_dd_7","jsCall_dd_8","jsCall_dd_9","jsCall_dd_10","jsCall_dd_11","jsCall_dd_12","jsCall_dd_13","jsCall_dd_14","jsCall_dd_15","jsCall_dd_16","jsCall_dd_17","jsCall_dd_18","jsCall_dd_19","jsCall_dd_20","jsCall_dd_21","jsCall_dd_22","jsCall_dd_23","jsCall_dd_24","jsCall_dd_25","jsCall_dd_26","jsCall_dd_27","jsCall_dd_28","jsCall_dd_29","jsCall_dd_30","jsCall_dd_31","jsCall_dd_32","jsCall_dd_33","jsCall_dd_34","_sinh","_cosh","_tanh","_sin","_cos","_tan","_atan","_asin","_acos","_exp","_log","_fabs","_etime",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_did=[0,"jsCall_did_0","jsCall_did_1","jsCall_did_2","jsCall_did_3","jsCall_did_4","jsCall_did_5","jsCall_did_6","jsCall_did_7","jsCall_did_8","jsCall_did_9","jsCall_did_10","jsCall_did_11","jsCall_did_12","jsCall_did_13","jsCall_did_14","jsCall_did_15","jsCall_did_16","jsCall_did_17","jsCall_did_18","jsCall_did_19","jsCall_did_20","jsCall_did_21","jsCall_did_22","jsCall_did_23","jsCall_did_24","jsCall_did_25","jsCall_did_26","jsCall_did_27","jsCall_did_28","jsCall_did_29","jsCall_did_30","jsCall_did_31","jsCall_did_32","jsCall_did_33","jsCall_did_34",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];var debug_table_didd=[0,"jsCall_didd_0","jsCall_didd_1","jsCall_didd_2","jsCall_didd_3","jsCall_didd_4","jsCall_didd_5","jsCall_didd_6","jsCall_didd_7","jsCall_didd_8","jsCall_didd_9","jsCall_didd_10","jsCall_didd_11","jsCall_didd_12","jsCall_didd_13","jsCall_didd_14","jsCall_didd_15","jsCall_didd_16","jsCall_didd_17","jsCall_didd_18","jsCall_didd_19","jsCall_didd_20","jsCall_didd_21","jsCall_didd_22","jsCall_didd_23","jsCall_didd_24","jsCall_didd_25","jsCall_didd_26","jsCall_didd_27","jsCall_didd_28","jsCall_didd_29","jsCall_didd_30","jsCall_didd_31","jsCall_didd_32","jsCall_didd_33","jsCall_didd_34",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];var debug_table_fii=[0,"jsCall_fii_0","jsCall_fii_1","jsCall_fii_2","jsCall_fii_3","jsCall_fii_4","jsCall_fii_5","jsCall_fii_6","jsCall_fii_7","jsCall_fii_8","jsCall_fii_9","jsCall_fii_10","jsCall_fii_11","jsCall_fii_12","jsCall_fii_13","jsCall_fii_14","jsCall_fii_15","jsCall_fii_16","jsCall_fii_17","jsCall_fii_18","jsCall_fii_19","jsCall_fii_20","jsCall_fii_21","jsCall_fii_22","jsCall_fii_23","jsCall_fii_24","jsCall_fii_25","jsCall_fii_26","jsCall_fii_27","jsCall_fii_28","jsCall_fii_29","jsCall_fii_30","jsCall_fii_31","jsCall_fii_32","jsCall_fii_33","jsCall_fii_34","_sbr_sum_square_c",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];var debug_table_fiii=[0,"jsCall_fiii_0","jsCall_fiii_1","jsCall_fiii_2","jsCall_fiii_3","jsCall_fiii_4","jsCall_fiii_5","jsCall_fiii_6","jsCall_fiii_7","jsCall_fiii_8","jsCall_fiii_9","jsCall_fiii_10","jsCall_fiii_11","jsCall_fiii_12","jsCall_fiii_13","jsCall_fiii_14","jsCall_fiii_15","jsCall_fiii_16","jsCall_fiii_17","jsCall_fiii_18","jsCall_fiii_19","jsCall_fiii_20","jsCall_fiii_21","jsCall_fiii_22","jsCall_fiii_23","jsCall_fiii_24","jsCall_fiii_25","jsCall_fiii_26","jsCall_fiii_27","jsCall_fiii_28","jsCall_fiii_29","jsCall_fiii_30","jsCall_fiii_31","jsCall_fiii_32","jsCall_fiii_33","jsCall_fiii_34","_avpriv_scalarproduct_float_c",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];var debug_table_ii=[0,"jsCall_ii_0","jsCall_ii_1","jsCall_ii_2","jsCall_ii_3","jsCall_ii_4","jsCall_ii_5","jsCall_ii_6","jsCall_ii_7","jsCall_ii_8","jsCall_ii_9","jsCall_ii_10","jsCall_ii_11","jsCall_ii_12","jsCall_ii_13","jsCall_ii_14","jsCall_ii_15","jsCall_ii_16","jsCall_ii_17","jsCall_ii_18","jsCall_ii_19","jsCall_ii_20","jsCall_ii_21","jsCall_ii_22","jsCall_ii_23","jsCall_ii_24","jsCall_ii_25","jsCall_ii_26","jsCall_ii_27","jsCall_ii_28","jsCall_ii_29","jsCall_ii_30","jsCall_ii_31","jsCall_ii_32","jsCall_ii_33","jsCall_ii_34","_avi_probe","_avi_read_header","_avi_read_close","_av_default_item_name","_ff_avio_child_class_next","_flv_probe","_flv_read_header","_flv_read_close","_live_flv_probe","_mov_probe","_mov_read_header","_mov_read_close","_mpegps_probe","_mpegps_read_header","_mpegts_probe","_mpegts_read_header","_mpegts_read_close","_mpegvideo_probe","_ff_raw_video_read_header","_format_to_name","_format_child_class_next","_get_category","_urlcontext_to_name","_ff_urlcontext_child_class_next","_sws_context_to_name","_ff_bsf_child_class_next","_hevc_mp4toannexb_init","_hevc_init_thread_copy","_hevc_decode_init","_hevc_decode_free","_context_to_name","_codec_child_class_next","_get_category_2429","_aac_decode_init","_aac_decode_close","_init","___stdio_close","___emscripten_stdout_close","_initializeDecoderFunc","__getFrame","_closeVideoFunc","_releaseFunc","_initializeDemuxerFunc","_getPacketFunc","_releaseDemuxerFunc","_releaseSniffStreamFunc","_hflv_releaseFunc","_hflv_getBufferLength","_io_short_seek","_avio_rb16","_avio_rl16","_av_buffer_allocz","_av_buffer_alloc","_frame_worker_thread","_thread_worker",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,0,0,0,0];var debug_table_iid=[0,"jsCall_iid_0","jsCall_iid_1","jsCall_iid_2","jsCall_iid_3","jsCall_iid_4","jsCall_iid_5","jsCall_iid_6","jsCall_iid_7","jsCall_iid_8","jsCall_iid_9","jsCall_iid_10","jsCall_iid_11","jsCall_iid_12","jsCall_iid_13","jsCall_iid_14","jsCall_iid_15","jsCall_iid_16","jsCall_iid_17","jsCall_iid_18","jsCall_iid_19","jsCall_iid_20","jsCall_iid_21","jsCall_iid_22","jsCall_iid_23","jsCall_iid_24","jsCall_iid_25","jsCall_iid_26","jsCall_iid_27","jsCall_iid_28","jsCall_iid_29","jsCall_iid_30","jsCall_iid_31","jsCall_iid_32","jsCall_iid_33","jsCall_iid_34","_seekBufferFunc",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];var debug_table_iii=[0,"jsCall_iii_0","jsCall_iii_1","jsCall_iii_2","jsCall_iii_3","jsCall_iii_4","jsCall_iii_5","jsCall_iii_6","jsCall_iii_7","jsCall_iii_8","jsCall_iii_9","jsCall_iii_10","jsCall_iii_11","jsCall_iii_12","jsCall_iii_13","jsCall_iii_14","jsCall_iii_15","jsCall_iii_16","jsCall_iii_17","jsCall_iii_18","jsCall_iii_19","jsCall_iii_20","jsCall_iii_21","jsCall_iii_22","jsCall_iii_23","jsCall_iii_24","jsCall_iii_25","jsCall_iii_26","jsCall_iii_27","jsCall_iii_28","jsCall_iii_29","jsCall_iii_30","jsCall_iii_31","jsCall_iii_32","jsCall_iii_33","jsCall_iii_34","_avi_read_packet","_ff_avio_child_next","_flv_read_packet","_mov_read_packet","_mpegps_read_packet","_mpegts_read_packet","_mpegts_raw_read_packet","_ff_raw_read_partial_packet","_format_child_next","_urlcontext_child_next","_bsf_child_next","_hevc_mp4toannexb_filter","_hevc_update_thread_context","_null_filter","_codec_child_next","_initSniffStreamFunc","_hflv_initFunc","_hflv_getPacketFunc","_descriptor_compare","_io_read_pause","_avcodec_default_get_format","_hls_decode_entry","_ff_startcode_find_candidate_c","_color_table_compare",0,0,0,0];var debug_table_iiii=[0,"jsCall_iiii_0","jsCall_iiii_1","jsCall_iiii_2","jsCall_iiii_3","jsCall_iiii_4","jsCall_iiii_5","jsCall_iiii_6","jsCall_iiii_7","jsCall_iiii_8","jsCall_iiii_9","jsCall_iiii_10","jsCall_iiii_11","jsCall_iiii_12","jsCall_iiii_13","jsCall_iiii_14","jsCall_iiii_15","jsCall_iiii_16","jsCall_iiii_17","jsCall_iiii_18","jsCall_iiii_19","jsCall_iiii_20","jsCall_iiii_21","jsCall_iiii_22","jsCall_iiii_23","jsCall_iiii_24","jsCall_iiii_25","jsCall_iiii_26","jsCall_iiii_27","jsCall_iiii_28","jsCall_iiii_29","jsCall_iiii_30","jsCall_iiii_31","jsCall_iiii_32","jsCall_iiii_33","jsCall_iiii_34","_mov_read_aclr","_mov_read_avid","_mov_read_ares","_mov_read_avss","_mov_read_av1c","_mov_read_chpl","_mov_read_stco","_mov_read_colr","_mov_read_ctts","_mov_read_default","_mov_read_dpxe","_mov_read_dref","_mov_read_elst","_mov_read_enda","_mov_read_fiel","_mov_read_adrm","_mov_read_ftyp","_mov_read_glbl","_mov_read_hdlr","_mov_read_ilst","_mov_read_jp2h","_mov_read_mdat","_mov_read_mdhd","_mov_read_meta","_mov_read_moof","_mov_read_moov","_mov_read_mvhd","_mov_read_svq3","_mov_read_alac","_mov_read_pasp","_mov_read_sidx","_mov_read_stps","_mov_read_strf","_mov_read_stsc","_mov_read_stsd","_mov_read_stss","_mov_read_stsz","_mov_read_stts","_mov_read_tkhd","_mov_read_tfdt","_mov_read_tfhd","_mov_read_trak","_mov_read_tmcd","_mov_read_chap","_mov_read_trex","_mov_read_trun","_mov_read_wave","_mov_read_esds","_mov_read_dac3","_mov_read_dec3","_mov_read_ddts","_mov_read_wide","_mov_read_wfex","_mov_read_cmov","_mov_read_chan","_mov_read_dvc1","_mov_read_sbgp","_mov_read_uuid","_mov_read_targa_y216","_mov_read_free","_mov_read_custom","_mov_read_frma","_mov_read_senc","_mov_read_saiz","_mov_read_saio","_mov_read_pssh","_mov_read_schm","_mov_read_tenc","_mov_read_dfla","_mov_read_st3d","_mov_read_sv3d","_mov_read_dops","_mov_read_smdm","_mov_read_coll","_mov_read_vpcc","_mov_read_mdcv","_mov_read_clli","_h264_split","_hevc_split","___stdio_write","_sn_write","_setCodecTypeFunc","_getSniffStreamPacketFunc","_read_stream_live","_read_stream_vod","_hflv_read_stream_live","_read_packet","_io_write_packet","_io_read_packet","_dyn_buf_write","_avcodec_default_get_buffer2","_mov_read_keys","_mov_read_udta_string","_do_read",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,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,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,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];var debug_table_iiiii=[0,"jsCall_iiiii_0","jsCall_iiiii_1","jsCall_iiiii_2","jsCall_iiiii_3","jsCall_iiiii_4","jsCall_iiiii_5","jsCall_iiiii_6","jsCall_iiiii_7","jsCall_iiiii_8","jsCall_iiiii_9","jsCall_iiiii_10","jsCall_iiiii_11","jsCall_iiiii_12","jsCall_iiiii_13","jsCall_iiiii_14","jsCall_iiiii_15","jsCall_iiiii_16","jsCall_iiiii_17","jsCall_iiiii_18","jsCall_iiiii_19","jsCall_iiiii_20","jsCall_iiiii_21","jsCall_iiiii_22","jsCall_iiiii_23","jsCall_iiiii_24","jsCall_iiiii_25","jsCall_iiiii_26","jsCall_iiiii_27","jsCall_iiiii_28","jsCall_iiiii_29","jsCall_iiiii_30","jsCall_iiiii_31","jsCall_iiiii_32","jsCall_iiiii_33","jsCall_iiiii_34","_hevc_decode_frame","_aac_decode_frame","_demuxBoxFunc","_hflv_pushBufferFunc","_mov_metadata_int8_no_padding","_mov_metadata_track_or_disc_number","_mov_metadata_gnre","_mov_metadata_int8_bypass_padding","_gamma_convert","_lum_convert","_lum_h_scale","_chr_convert","_chr_h_scale","_no_chr_scale","_lum_planar_vscale","_chr_planar_vscale","_any_vscale","_packed_vscale","_hls_decode_entry_wpp",0,0,0,0,0,0,0,0,0];var debug_table_iiiiii=[0,"jsCall_iiiiii_0","jsCall_iiiiii_1","jsCall_iiiiii_2","jsCall_iiiiii_3","jsCall_iiiiii_4","jsCall_iiiiii_5","jsCall_iiiiii_6","jsCall_iiiiii_7","jsCall_iiiiii_8","jsCall_iiiiii_9","jsCall_iiiiii_10","jsCall_iiiiii_11","jsCall_iiiiii_12","jsCall_iiiiii_13","jsCall_iiiiii_14","jsCall_iiiiii_15","jsCall_iiiiii_16","jsCall_iiiiii_17","jsCall_iiiiii_18","jsCall_iiiiii_19","jsCall_iiiiii_20","jsCall_iiiiii_21","jsCall_iiiiii_22","jsCall_iiiiii_23","jsCall_iiiiii_24","jsCall_iiiiii_25","jsCall_iiiiii_26","jsCall_iiiiii_27","jsCall_iiiiii_28","jsCall_iiiiii_29","jsCall_iiiiii_30","jsCall_iiiiii_31","jsCall_iiiiii_32","jsCall_iiiiii_33","jsCall_iiiiii_34","_decodeCodecContextFunc","_pushBufferFunc","_avcodec_default_execute2","_io_open_default","_thread_execute2","_sbr_lf_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiii=[0,"jsCall_iiiiiii_0","jsCall_iiiiiii_1","jsCall_iiiiiii_2","jsCall_iiiiiii_3","jsCall_iiiiiii_4","jsCall_iiiiiii_5","jsCall_iiiiiii_6","jsCall_iiiiiii_7","jsCall_iiiiiii_8","jsCall_iiiiiii_9","jsCall_iiiiiii_10","jsCall_iiiiiii_11","jsCall_iiiiiii_12","jsCall_iiiiiii_13","jsCall_iiiiiii_14","jsCall_iiiiiii_15","jsCall_iiiiiii_16","jsCall_iiiiiii_17","jsCall_iiiiiii_18","jsCall_iiiiiii_19","jsCall_iiiiiii_20","jsCall_iiiiiii_21","jsCall_iiiiiii_22","jsCall_iiiiiii_23","jsCall_iiiiiii_24","jsCall_iiiiiii_25","jsCall_iiiiiii_26","jsCall_iiiiiii_27","jsCall_iiiiiii_28","jsCall_iiiiiii_29","jsCall_iiiiiii_30","jsCall_iiiiiii_31","jsCall_iiiiiii_32","jsCall_iiiiiii_33","jsCall_iiiiiii_34","_h264_parse","_hevc_parse","_hflv_decodeVideoFrameFunc","_avcodec_default_execute","_thread_execute","_sbr_x_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiiii=[0,"jsCall_iiiiiiii_0","jsCall_iiiiiiii_1","jsCall_iiiiiiii_2","jsCall_iiiiiiii_3","jsCall_iiiiiiii_4","jsCall_iiiiiiii_5","jsCall_iiiiiiii_6","jsCall_iiiiiiii_7","jsCall_iiiiiiii_8","jsCall_iiiiiiii_9","jsCall_iiiiiiii_10","jsCall_iiiiiiii_11","jsCall_iiiiiiii_12","jsCall_iiiiiiii_13","jsCall_iiiiiiii_14","jsCall_iiiiiiii_15","jsCall_iiiiiiii_16","jsCall_iiiiiiii_17","jsCall_iiiiiiii_18","jsCall_iiiiiiii_19","jsCall_iiiiiiii_20","jsCall_iiiiiiii_21","jsCall_iiiiiiii_22","jsCall_iiiiiiii_23","jsCall_iiiiiiii_24","jsCall_iiiiiiii_25","jsCall_iiiiiiii_26","jsCall_iiiiiiii_27","jsCall_iiiiiiii_28","jsCall_iiiiiiii_29","jsCall_iiiiiiii_30","jsCall_iiiiiiii_31","jsCall_iiiiiiii_32","jsCall_iiiiiiii_33","jsCall_iiiiiiii_34","_decodeVideoFrameFunc","_setSniffStreamCodecTypeFunc","_hflv_setSniffStreamCodecTypeFunc","_ff_sws_alphablendaway","_planarToP01xWrapper","_planar8ToP01xleWrapper","_yvu9ToYv12Wrapper","_bgr24ToYv12Wrapper","_rgbToRgbWrapper","_planarRgbToplanarRgbWrapper","_planarRgbToRgbWrapper","_planarRgbaToRgbWrapper","_Rgb16ToPlanarRgb16Wrapper","_planarRgb16ToRgb16Wrapper","_rgbToPlanarRgbWrapper","_bayer_to_rgb24_wrapper","_bayer_to_yv12_wrapper","_bswap_16bpc","_palToRgbWrapper","_yuv422pToYuy2Wrapper","_yuv422pToUyvyWrapper","_uint_y_to_float_y_wrapper","_float_y_to_uint_y_wrapper","_planarToYuy2Wrapper","_planarToUyvyWrapper","_yuyvToYuv420Wrapper","_uyvyToYuv420Wrapper","_yuyvToYuv422Wrapper","_uyvyToYuv422Wrapper","_packedCopyWrapper","_planarCopyWrapper","_swscale","_planarToNv12Wrapper","_planarToNv24Wrapper","_nv12ToPlanarWrapper","_nv24ToPlanarWrapper","_yuv2rgb_c_32","_yuva2rgba_c","_yuv2rgb_c_bgr48","_yuv2rgb_c_48","_yuva2argb_c","_yuv2rgb_c_24_rgb","_yuv2rgb_c_24_bgr","_yuv2rgb_c_16_ordered_dither","_yuv2rgb_c_15_ordered_dither","_yuv2rgb_c_12_ordered_dither","_yuv2rgb_c_8_ordered_dither","_yuv2rgb_c_4_ordered_dither","_yuv2rgb_c_4b_ordered_dither","_yuv2rgb_c_1_ordered_dither",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,0,0,0,0,0,0,0,0,0];var debug_table_iiiiij=[0,"jsCall_iiiiij_0","jsCall_iiiiij_1","jsCall_iiiiij_2","jsCall_iiiiij_3","jsCall_iiiiij_4","jsCall_iiiiij_5","jsCall_iiiiij_6","jsCall_iiiiij_7","jsCall_iiiiij_8","jsCall_iiiiij_9","jsCall_iiiiij_10","jsCall_iiiiij_11","jsCall_iiiiij_12","jsCall_iiiiij_13","jsCall_iiiiij_14","jsCall_iiiiij_15","jsCall_iiiiij_16","jsCall_iiiiij_17","jsCall_iiiiij_18","jsCall_iiiiij_19","jsCall_iiiiij_20","jsCall_iiiiij_21","jsCall_iiiiij_22","jsCall_iiiiij_23","jsCall_iiiiij_24","jsCall_iiiiij_25","jsCall_iiiiij_26","jsCall_iiiiij_27","jsCall_iiiiij_28","jsCall_iiiiij_29","jsCall_iiiiij_30","jsCall_iiiiij_31","jsCall_iiiiij_32","jsCall_iiiiij_33","jsCall_iiiiij_34","_mpegts_push_data",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];var debug_table_iiiji=[0,"jsCall_iiiji_0","jsCall_iiiji_1","jsCall_iiiji_2","jsCall_iiiji_3","jsCall_iiiji_4","jsCall_iiiji_5","jsCall_iiiji_6","jsCall_iiiji_7","jsCall_iiiji_8","jsCall_iiiji_9","jsCall_iiiji_10","jsCall_iiiji_11","jsCall_iiiji_12","jsCall_iiiji_13","jsCall_iiiji_14","jsCall_iiiji_15","jsCall_iiiji_16","jsCall_iiiji_17","jsCall_iiiji_18","jsCall_iiiji_19","jsCall_iiiji_20","jsCall_iiiji_21","jsCall_iiiji_22","jsCall_iiiji_23","jsCall_iiiji_24","jsCall_iiiji_25","jsCall_iiiji_26","jsCall_iiiji_27","jsCall_iiiji_28","jsCall_iiiji_29","jsCall_iiiji_30","jsCall_iiiji_31","jsCall_iiiji_32","jsCall_iiiji_33","jsCall_iiiji_34","_avi_read_seek","_flv_read_seek","_mov_read_seek",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];var debug_table_iiijjji=[0,"jsCall_iiijjji_0","jsCall_iiijjji_1","jsCall_iiijjji_2","jsCall_iiijjji_3","jsCall_iiijjji_4","jsCall_iiijjji_5","jsCall_iiijjji_6","jsCall_iiijjji_7","jsCall_iiijjji_8","jsCall_iiijjji_9","jsCall_iiijjji_10","jsCall_iiijjji_11","jsCall_iiijjji_12","jsCall_iiijjji_13","jsCall_iiijjji_14","jsCall_iiijjji_15","jsCall_iiijjji_16","jsCall_iiijjji_17","jsCall_iiijjji_18","jsCall_iiijjji_19","jsCall_iiijjji_20","jsCall_iiijjji_21","jsCall_iiijjji_22","jsCall_iiijjji_23","jsCall_iiijjji_24","jsCall_iiijjji_25","jsCall_iiijjji_26","jsCall_iiijjji_27","jsCall_iiijjji_28","jsCall_iiijjji_29","jsCall_iiijjji_30","jsCall_iiijjji_31","jsCall_iiijjji_32","jsCall_iiijjji_33","jsCall_iiijjji_34",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];var debug_table_jiiij=[0,"jsCall_jiiij_0","jsCall_jiiij_1","jsCall_jiiij_2","jsCall_jiiij_3","jsCall_jiiij_4","jsCall_jiiij_5","jsCall_jiiij_6","jsCall_jiiij_7","jsCall_jiiij_8","jsCall_jiiij_9","jsCall_jiiij_10","jsCall_jiiij_11","jsCall_jiiij_12","jsCall_jiiij_13","jsCall_jiiij_14","jsCall_jiiij_15","jsCall_jiiij_16","jsCall_jiiij_17","jsCall_jiiij_18","jsCall_jiiij_19","jsCall_jiiij_20","jsCall_jiiij_21","jsCall_jiiij_22","jsCall_jiiij_23","jsCall_jiiij_24","jsCall_jiiij_25","jsCall_jiiij_26","jsCall_jiiij_27","jsCall_jiiij_28","jsCall_jiiij_29","jsCall_jiiij_30","jsCall_jiiij_31","jsCall_jiiij_32","jsCall_jiiij_33","jsCall_jiiij_34","_mpegps_read_dts","_mpegts_get_dts",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];var debug_table_jiiji=[0,"jsCall_jiiji_0","jsCall_jiiji_1","jsCall_jiiji_2","jsCall_jiiji_3","jsCall_jiiji_4","jsCall_jiiji_5","jsCall_jiiji_6","jsCall_jiiji_7","jsCall_jiiji_8","jsCall_jiiji_9","jsCall_jiiji_10","jsCall_jiiji_11","jsCall_jiiji_12","jsCall_jiiji_13","jsCall_jiiji_14","jsCall_jiiji_15","jsCall_jiiji_16","jsCall_jiiji_17","jsCall_jiiji_18","jsCall_jiiji_19","jsCall_jiiji_20","jsCall_jiiji_21","jsCall_jiiji_22","jsCall_jiiji_23","jsCall_jiiji_24","jsCall_jiiji_25","jsCall_jiiji_26","jsCall_jiiji_27","jsCall_jiiji_28","jsCall_jiiji_29","jsCall_jiiji_30","jsCall_jiiji_31","jsCall_jiiji_32","jsCall_jiiji_33","jsCall_jiiji_34","_io_read_seek",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];var debug_table_jiji=[0,"jsCall_jiji_0","jsCall_jiji_1","jsCall_jiji_2","jsCall_jiji_3","jsCall_jiji_4","jsCall_jiji_5","jsCall_jiji_6","jsCall_jiji_7","jsCall_jiji_8","jsCall_jiji_9","jsCall_jiji_10","jsCall_jiji_11","jsCall_jiji_12","jsCall_jiji_13","jsCall_jiji_14","jsCall_jiji_15","jsCall_jiji_16","jsCall_jiji_17","jsCall_jiji_18","jsCall_jiji_19","jsCall_jiji_20","jsCall_jiji_21","jsCall_jiji_22","jsCall_jiji_23","jsCall_jiji_24","jsCall_jiji_25","jsCall_jiji_26","jsCall_jiji_27","jsCall_jiji_28","jsCall_jiji_29","jsCall_jiji_30","jsCall_jiji_31","jsCall_jiji_32","jsCall_jiji_33","jsCall_jiji_34","___stdio_seek","___emscripten_stdout_seek","_seek_in_buffer","_io_seek","_dyn_buf_seek",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_v=[0,"jsCall_v_0","jsCall_v_1","jsCall_v_2","jsCall_v_3","jsCall_v_4","jsCall_v_5","jsCall_v_6","jsCall_v_7","jsCall_v_8","jsCall_v_9","jsCall_v_10","jsCall_v_11","jsCall_v_12","jsCall_v_13","jsCall_v_14","jsCall_v_15","jsCall_v_16","jsCall_v_17","jsCall_v_18","jsCall_v_19","jsCall_v_20","jsCall_v_21","jsCall_v_22","jsCall_v_23","jsCall_v_24","jsCall_v_25","jsCall_v_26","jsCall_v_27","jsCall_v_28","jsCall_v_29","jsCall_v_30","jsCall_v_31","jsCall_v_32","jsCall_v_33","jsCall_v_34","_init_ff_cos_tabs_16","_init_ff_cos_tabs_32","_init_ff_cos_tabs_64","_init_ff_cos_tabs_128","_init_ff_cos_tabs_256","_init_ff_cos_tabs_512","_init_ff_cos_tabs_1024","_init_ff_cos_tabs_2048","_init_ff_cos_tabs_4096","_init_ff_cos_tabs_8192","_init_ff_cos_tabs_16384","_init_ff_cos_tabs_32768","_init_ff_cos_tabs_65536","_init_ff_cos_tabs_131072","_introduceMineFunc","_introduce_mine",0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_vdiidiiiii=[0,"jsCall_vdiidiiiii_0","jsCall_vdiidiiiii_1","jsCall_vdiidiiiii_2","jsCall_vdiidiiiii_3","jsCall_vdiidiiiii_4","jsCall_vdiidiiiii_5","jsCall_vdiidiiiii_6","jsCall_vdiidiiiii_7","jsCall_vdiidiiiii_8","jsCall_vdiidiiiii_9","jsCall_vdiidiiiii_10","jsCall_vdiidiiiii_11","jsCall_vdiidiiiii_12","jsCall_vdiidiiiii_13","jsCall_vdiidiiiii_14","jsCall_vdiidiiiii_15","jsCall_vdiidiiiii_16","jsCall_vdiidiiiii_17","jsCall_vdiidiiiii_18","jsCall_vdiidiiiii_19","jsCall_vdiidiiiii_20","jsCall_vdiidiiiii_21","jsCall_vdiidiiiii_22","jsCall_vdiidiiiii_23","jsCall_vdiidiiiii_24","jsCall_vdiidiiiii_25","jsCall_vdiidiiiii_26","jsCall_vdiidiiiii_27","jsCall_vdiidiiiii_28","jsCall_vdiidiiiii_29","jsCall_vdiidiiiii_30","jsCall_vdiidiiiii_31","jsCall_vdiidiiiii_32","jsCall_vdiidiiiii_33","jsCall_vdiidiiiii_34",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];var debug_table_vi=[0,"jsCall_vi_0","jsCall_vi_1","jsCall_vi_2","jsCall_vi_3","jsCall_vi_4","jsCall_vi_5","jsCall_vi_6","jsCall_vi_7","jsCall_vi_8","jsCall_vi_9","jsCall_vi_10","jsCall_vi_11","jsCall_vi_12","jsCall_vi_13","jsCall_vi_14","jsCall_vi_15","jsCall_vi_16","jsCall_vi_17","jsCall_vi_18","jsCall_vi_19","jsCall_vi_20","jsCall_vi_21","jsCall_vi_22","jsCall_vi_23","jsCall_vi_24","jsCall_vi_25","jsCall_vi_26","jsCall_vi_27","jsCall_vi_28","jsCall_vi_29","jsCall_vi_30","jsCall_vi_31","jsCall_vi_32","jsCall_vi_33","jsCall_vi_34","_free_geobtag","_free_apic","_free_chapter","_free_priv","_hevc_decode_flush","_flush","_h264_close","_hevc_parser_close","_fft4","_fft8","_fft16","_fft32","_fft64","_fft128","_fft256","_fft512","_fft1024","_fft2048","_fft4096","_fft8192","_fft16384","_fft32768","_fft65536","_fft131072","_logRequest_downloadSucceeded","_logRequest_downloadFailed","_downloadSucceeded","_downloadFailed","_transform_4x4_luma_9","_idct_4x4_dc_9","_idct_8x8_dc_9","_idct_16x16_dc_9","_idct_32x32_dc_9","_transform_4x4_luma_10","_idct_4x4_dc_10","_idct_8x8_dc_10","_idct_16x16_dc_10","_idct_32x32_dc_10","_transform_4x4_luma_12","_idct_4x4_dc_12","_idct_8x8_dc_12","_idct_16x16_dc_12","_idct_32x32_dc_12","_transform_4x4_luma_8","_idct_4x4_dc_8","_idct_8x8_dc_8","_idct_16x16_dc_8","_idct_32x32_dc_8","_main_function","_sbr_sum64x5_c","_sbr_neg_odd_64_c","_sbr_qmf_pre_shuffle_c",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,0,0,0,0,0,0,0];var debug_table_vii=[0,"jsCall_vii_0","jsCall_vii_1","jsCall_vii_2","jsCall_vii_3","jsCall_vii_4","jsCall_vii_5","jsCall_vii_6","jsCall_vii_7","jsCall_vii_8","jsCall_vii_9","jsCall_vii_10","jsCall_vii_11","jsCall_vii_12","jsCall_vii_13","jsCall_vii_14","jsCall_vii_15","jsCall_vii_16","jsCall_vii_17","jsCall_vii_18","jsCall_vii_19","jsCall_vii_20","jsCall_vii_21","jsCall_vii_22","jsCall_vii_23","jsCall_vii_24","jsCall_vii_25","jsCall_vii_26","jsCall_vii_27","jsCall_vii_28","jsCall_vii_29","jsCall_vii_30","jsCall_vii_31","jsCall_vii_32","jsCall_vii_33","jsCall_vii_34","_sha1_transform","_io_close_default","_lumRangeFromJpeg_c","_lumRangeToJpeg_c","_lumRangeFromJpeg16_c","_lumRangeToJpeg16_c","_decode_data_free","_dequant_9","_idct_4x4_9","_idct_8x8_9","_idct_16x16_9","_idct_32x32_9","_dequant_10","_idct_4x4_10","_idct_8x8_10","_idct_16x16_10","_idct_32x32_10","_dequant_12","_idct_4x4_12","_idct_8x8_12","_idct_16x16_12","_idct_32x32_12","_dequant_8","_idct_4x4_8","_idct_8x8_8","_idct_16x16_8","_idct_32x32_8","_imdct_and_windowing","_apply_ltp","_update_ltp","_imdct_and_windowing_ld","_imdct_and_windowing_eld","_imdct_and_windowing_960","_sbr_qmf_post_shuffle_c","_sbr_qmf_deint_neg_c","_sbr_autocorrelate_c","_ff_h264_chroma_dc_dequant_idct_8_c","_hevc_pps_free","_fft_permute_c","_fft_calc_c","_av_buffer_default_free","_pool_release_buffer",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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viidi=[0,"jsCall_viidi_0","jsCall_viidi_1","jsCall_viidi_2","jsCall_viidi_3","jsCall_viidi_4","jsCall_viidi_5","jsCall_viidi_6","jsCall_viidi_7","jsCall_viidi_8","jsCall_viidi_9","jsCall_viidi_10","jsCall_viidi_11","jsCall_viidi_12","jsCall_viidi_13","jsCall_viidi_14","jsCall_viidi_15","jsCall_viidi_16","jsCall_viidi_17","jsCall_viidi_18","jsCall_viidi_19","jsCall_viidi_20","jsCall_viidi_21","jsCall_viidi_22","jsCall_viidi_23","jsCall_viidi_24","jsCall_viidi_25","jsCall_viidi_26","jsCall_viidi_27","jsCall_viidi_28","jsCall_viidi_29","jsCall_viidi_30","jsCall_viidi_31","jsCall_viidi_32","jsCall_viidi_33","jsCall_viidi_34","_vector_dmac_scalar_c","_vector_dmul_scalar_c",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];var debug_table_viifi=[0,"jsCall_viifi_0","jsCall_viifi_1","jsCall_viifi_2","jsCall_viifi_3","jsCall_viifi_4","jsCall_viifi_5","jsCall_viifi_6","jsCall_viifi_7","jsCall_viifi_8","jsCall_viifi_9","jsCall_viifi_10","jsCall_viifi_11","jsCall_viifi_12","jsCall_viifi_13","jsCall_viifi_14","jsCall_viifi_15","jsCall_viifi_16","jsCall_viifi_17","jsCall_viifi_18","jsCall_viifi_19","jsCall_viifi_20","jsCall_viifi_21","jsCall_viifi_22","jsCall_viifi_23","jsCall_viifi_24","jsCall_viifi_25","jsCall_viifi_26","jsCall_viifi_27","jsCall_viifi_28","jsCall_viifi_29","jsCall_viifi_30","jsCall_viifi_31","jsCall_viifi_32","jsCall_viifi_33","jsCall_viifi_34","_vector_fmac_scalar_c","_vector_fmul_scalar_c",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];var debug_table_viii=[0,"jsCall_viii_0","jsCall_viii_1","jsCall_viii_2","jsCall_viii_3","jsCall_viii_4","jsCall_viii_5","jsCall_viii_6","jsCall_viii_7","jsCall_viii_8","jsCall_viii_9","jsCall_viii_10","jsCall_viii_11","jsCall_viii_12","jsCall_viii_13","jsCall_viii_14","jsCall_viii_15","jsCall_viii_16","jsCall_viii_17","jsCall_viii_18","jsCall_viii_19","jsCall_viii_20","jsCall_viii_21","jsCall_viii_22","jsCall_viii_23","jsCall_viii_24","jsCall_viii_25","jsCall_viii_26","jsCall_viii_27","jsCall_viii_28","jsCall_viii_29","jsCall_viii_30","jsCall_viii_31","jsCall_viii_32","jsCall_viii_33","jsCall_viii_34","_avcHandleFrame","_handleFrame","_sdt_cb","_pat_cb","_pmt_cb","_scte_data_cb","_m4sl_cb","_chrRangeFromJpeg_c","_chrRangeToJpeg_c","_chrRangeFromJpeg16_c","_chrRangeToJpeg16_c","_rgb15to16_c","_rgb15tobgr24_c","_rgb15to32_c","_rgb16tobgr24_c","_rgb16to32_c","_rgb16to15_c","_rgb24tobgr16_c","_rgb24tobgr15_c","_rgb24tobgr32_c","_rgb32to16_c","_rgb32to15_c","_rgb32tobgr24_c","_rgb24to15_c","_rgb24to16_c","_rgb24tobgr24_c","_shuffle_bytes_0321_c","_shuffle_bytes_2103_c","_shuffle_bytes_1230_c","_shuffle_bytes_3012_c","_shuffle_bytes_3210_c","_rgb32tobgr16_c","_rgb32tobgr15_c","_rgb48tobgr48_bswap","_rgb48tobgr64_bswap","_rgb48to64_bswap","_rgb64to48_bswap","_rgb48tobgr48_nobswap","_rgb48tobgr64_nobswap","_rgb48to64_nobswap","_rgb64tobgr48_nobswap","_rgb64tobgr48_bswap","_rgb64to48_nobswap","_rgb12to15","_rgb15to24","_rgb16to24","_rgb32to24","_rgb24to32","_rgb12tobgr12","_rgb15tobgr15","_rgb16tobgr15","_rgb15tobgr16","_rgb16tobgr16","_rgb15tobgr32","_rgb16tobgr32","_just_return","_add_residual4x4_9","_add_residual8x8_9","_add_residual16x16_9","_add_residual32x32_9","_transform_rdpcm_9","_add_residual4x4_10","_add_residual8x8_10","_add_residual16x16_10","_add_residual32x32_10","_transform_rdpcm_10","_add_residual4x4_12","_add_residual8x8_12","_add_residual16x16_12","_add_residual32x32_12","_transform_rdpcm_12","_add_residual4x4_8","_add_residual8x8_8","_add_residual16x16_8","_add_residual32x32_8","_transform_rdpcm_8","_bswap_buf","_bswap16_buf","_ps_add_squares_c","_sbr_qmf_deint_bfly_c","_ff_h264_add_pixels4_8_c","_ff_h264_add_pixels8_8_c","_ff_h264_idct_add_8_c","_ff_h264_idct8_add_8_c","_ff_h264_idct_dc_add_8_c","_ff_h264_idct8_dc_add_8_c","_ff_h264_luma_dc_dequant_idct_8_c","_ff_imdct_calc_c","_ff_imdct_half_c","_ff_mdct_calc_c","_butterflies_float_c",0];var debug_table_viiii=[0,"jsCall_viiii_0","jsCall_viiii_1","jsCall_viiii_2","jsCall_viiii_3","jsCall_viiii_4","jsCall_viiii_5","jsCall_viiii_6","jsCall_viiii_7","jsCall_viiii_8","jsCall_viiii_9","jsCall_viiii_10","jsCall_viiii_11","jsCall_viiii_12","jsCall_viiii_13","jsCall_viiii_14","jsCall_viiii_15","jsCall_viiii_16","jsCall_viiii_17","jsCall_viiii_18","jsCall_viiii_19","jsCall_viiii_20","jsCall_viiii_21","jsCall_viiii_22","jsCall_viiii_23","jsCall_viiii_24","jsCall_viiii_25","jsCall_viiii_26","jsCall_viiii_27","jsCall_viiii_28","jsCall_viiii_29","jsCall_viiii_30","jsCall_viiii_31","jsCall_viiii_32","jsCall_viiii_33","jsCall_viiii_34","_planar_rgb9le_to_y","_planar_rgb10le_to_a","_planar_rgb10le_to_y","_planar_rgb12le_to_a","_planar_rgb12le_to_y","_planar_rgb14le_to_y","_planar_rgb16le_to_a","_planar_rgb16le_to_y","_planar_rgb9be_to_y","_planar_rgb10be_to_a","_planar_rgb10be_to_y","_planar_rgb12be_to_a","_planar_rgb12be_to_y","_planar_rgb14be_to_y","_planar_rgb16be_to_a","_planar_rgb16be_to_y","_planar_rgb_to_a","_planar_rgb_to_y","_gray8aToPacked32","_gray8aToPacked32_1","_gray8aToPacked24","_sws_convertPalette8ToPacked32","_sws_convertPalette8ToPacked24","_intra_pred_2_9","_intra_pred_3_9","_intra_pred_4_9","_intra_pred_5_9","_pred_planar_0_9","_pred_planar_1_9","_pred_planar_2_9","_pred_planar_3_9","_intra_pred_2_10","_intra_pred_3_10","_intra_pred_4_10","_intra_pred_5_10","_pred_planar_0_10","_pred_planar_1_10","_pred_planar_2_10","_pred_planar_3_10","_intra_pred_2_12","_intra_pred_3_12","_intra_pred_4_12","_intra_pred_5_12","_pred_planar_0_12","_pred_planar_1_12","_pred_planar_2_12","_pred_planar_3_12","_intra_pred_2_8","_intra_pred_3_8","_intra_pred_4_8","_intra_pred_5_8","_pred_planar_0_8","_pred_planar_1_8","_pred_planar_2_8","_pred_planar_3_8","_apply_tns","_windowing_and_mdct_ltp","_ps_mul_pair_single_c","_ps_hybrid_analysis_ileave_c","_ps_hybrid_synthesis_deint_c","_h264_v_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_mbaff_intra_8_c","_h264_v_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_mbaff_intra_8_c","_fft15_c","_mdct15","_imdct15_half","_vector_fmul_c","_vector_dmul_c","_vector_fmul_reverse_c",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiid=[0,"jsCall_viiiid_0","jsCall_viiiid_1","jsCall_viiiid_2","jsCall_viiiid_3","jsCall_viiiid_4","jsCall_viiiid_5","jsCall_viiiid_6","jsCall_viiiid_7","jsCall_viiiid_8","jsCall_viiiid_9","jsCall_viiiid_10","jsCall_viiiid_11","jsCall_viiiid_12","jsCall_viiiid_13","jsCall_viiiid_14","jsCall_viiiid_15","jsCall_viiiid_16","jsCall_viiiid_17","jsCall_viiiid_18","jsCall_viiiid_19","jsCall_viiiid_20","jsCall_viiiid_21","jsCall_viiiid_22","jsCall_viiiid_23","jsCall_viiiid_24","jsCall_viiiid_25","jsCall_viiiid_26","jsCall_viiiid_27","jsCall_viiiid_28","jsCall_viiiid_29","jsCall_viiiid_30","jsCall_viiiid_31","jsCall_viiiid_32","jsCall_viiiid_33","jsCall_viiiid_34",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];var debug_table_viiiifii=[0,"jsCall_viiiifii_0","jsCall_viiiifii_1","jsCall_viiiifii_2","jsCall_viiiifii_3","jsCall_viiiifii_4","jsCall_viiiifii_5","jsCall_viiiifii_6","jsCall_viiiifii_7","jsCall_viiiifii_8","jsCall_viiiifii_9","jsCall_viiiifii_10","jsCall_viiiifii_11","jsCall_viiiifii_12","jsCall_viiiifii_13","jsCall_viiiifii_14","jsCall_viiiifii_15","jsCall_viiiifii_16","jsCall_viiiifii_17","jsCall_viiiifii_18","jsCall_viiiifii_19","jsCall_viiiifii_20","jsCall_viiiifii_21","jsCall_viiiifii_22","jsCall_viiiifii_23","jsCall_viiiifii_24","jsCall_viiiifii_25","jsCall_viiiifii_26","jsCall_viiiifii_27","jsCall_viiiifii_28","jsCall_viiiifii_29","jsCall_viiiifii_30","jsCall_viiiifii_31","jsCall_viiiifii_32","jsCall_viiiifii_33","jsCall_viiiifii_34","_sbr_hf_gen_c",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];var debug_table_viiiii=[0,"jsCall_viiiii_0","jsCall_viiiii_1","jsCall_viiiii_2","jsCall_viiiii_3","jsCall_viiiii_4","jsCall_viiiii_5","jsCall_viiiii_6","jsCall_viiiii_7","jsCall_viiiii_8","jsCall_viiiii_9","jsCall_viiiii_10","jsCall_viiiii_11","jsCall_viiiii_12","jsCall_viiiii_13","jsCall_viiiii_14","jsCall_viiiii_15","jsCall_viiiii_16","jsCall_viiiii_17","jsCall_viiiii_18","jsCall_viiiii_19","jsCall_viiiii_20","jsCall_viiiii_21","jsCall_viiiii_22","jsCall_viiiii_23","jsCall_viiiii_24","jsCall_viiiii_25","jsCall_viiiii_26","jsCall_viiiii_27","jsCall_viiiii_28","jsCall_viiiii_29","jsCall_viiiii_30","jsCall_viiiii_31","jsCall_viiiii_32","jsCall_viiiii_33","jsCall_viiiii_34","_planar_rgb9le_to_uv","_planar_rgb10le_to_uv","_planar_rgb12le_to_uv","_planar_rgb14le_to_uv","_planar_rgb16le_to_uv","_planar_rgb9be_to_uv","_planar_rgb10be_to_uv","_planar_rgb12be_to_uv","_planar_rgb14be_to_uv","_planar_rgb16be_to_uv","_planar_rgb_to_uv","_yuv2p010l1_LE_c","_yuv2p010l1_BE_c","_yuv2plane1_16LE_c","_yuv2plane1_16BE_c","_yuv2plane1_9LE_c","_yuv2plane1_9BE_c","_yuv2plane1_10LE_c","_yuv2plane1_10BE_c","_yuv2plane1_12LE_c","_yuv2plane1_12BE_c","_yuv2plane1_14LE_c","_yuv2plane1_14BE_c","_yuv2plane1_floatBE_c","_yuv2plane1_floatLE_c","_yuv2plane1_8_c","_bayer_bggr8_to_rgb24_copy","_bayer_bggr8_to_rgb24_interpolate","_bayer_bggr16le_to_rgb24_copy","_bayer_bggr16le_to_rgb24_interpolate","_bayer_bggr16be_to_rgb24_copy","_bayer_bggr16be_to_rgb24_interpolate","_bayer_rggb8_to_rgb24_copy","_bayer_rggb8_to_rgb24_interpolate","_bayer_rggb16le_to_rgb24_copy","_bayer_rggb16le_to_rgb24_interpolate","_bayer_rggb16be_to_rgb24_copy","_bayer_rggb16be_to_rgb24_interpolate","_bayer_gbrg8_to_rgb24_copy","_bayer_gbrg8_to_rgb24_interpolate","_bayer_gbrg16le_to_rgb24_copy","_bayer_gbrg16le_to_rgb24_interpolate","_bayer_gbrg16be_to_rgb24_copy","_bayer_gbrg16be_to_rgb24_interpolate","_bayer_grbg8_to_rgb24_copy","_bayer_grbg8_to_rgb24_interpolate","_bayer_grbg16le_to_rgb24_copy","_bayer_grbg16le_to_rgb24_interpolate","_bayer_grbg16be_to_rgb24_copy","_bayer_grbg16be_to_rgb24_interpolate","_hevc_h_loop_filter_chroma_9","_hevc_v_loop_filter_chroma_9","_hevc_h_loop_filter_chroma_10","_hevc_v_loop_filter_chroma_10","_hevc_h_loop_filter_chroma_12","_hevc_v_loop_filter_chroma_12","_hevc_h_loop_filter_chroma_8","_hevc_v_loop_filter_chroma_8","_worker_func","_ps_hybrid_analysis_c","_ps_stereo_interpolate_c","_ps_stereo_interpolate_ipdopd_c","_sbr_hf_g_filt_c","_sbr_hf_assemble","_sbr_hf_inverse_filter","_ff_h264_idct_add16_8_c","_ff_h264_idct8_add4_8_c","_ff_h264_idct_add8_8_c","_ff_h264_idct_add16intra_8_c","_h264_v_loop_filter_luma_8_c","_h264_h_loop_filter_luma_8_c","_h264_h_loop_filter_luma_mbaff_8_c","_h264_v_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_mbaff_8_c","_postrotate_c","_vector_fmul_window_c","_vector_fmul_add_c",0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiidd=[0,"jsCall_viiiiidd_0","jsCall_viiiiidd_1","jsCall_viiiiidd_2","jsCall_viiiiidd_3","jsCall_viiiiidd_4","jsCall_viiiiidd_5","jsCall_viiiiidd_6","jsCall_viiiiidd_7","jsCall_viiiiidd_8","jsCall_viiiiidd_9","jsCall_viiiiidd_10","jsCall_viiiiidd_11","jsCall_viiiiidd_12","jsCall_viiiiidd_13","jsCall_viiiiidd_14","jsCall_viiiiidd_15","jsCall_viiiiidd_16","jsCall_viiiiidd_17","jsCall_viiiiidd_18","jsCall_viiiiidd_19","jsCall_viiiiidd_20","jsCall_viiiiidd_21","jsCall_viiiiidd_22","jsCall_viiiiidd_23","jsCall_viiiiidd_24","jsCall_viiiiidd_25","jsCall_viiiiidd_26","jsCall_viiiiidd_27","jsCall_viiiiidd_28","jsCall_viiiiidd_29","jsCall_viiiiidd_30","jsCall_viiiiidd_31","jsCall_viiiiidd_32","jsCall_viiiiidd_33","jsCall_viiiiidd_34",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];var debug_table_viiiiii=[0,"jsCall_viiiiii_0","jsCall_viiiiii_1","jsCall_viiiiii_2","jsCall_viiiiii_3","jsCall_viiiiii_4","jsCall_viiiiii_5","jsCall_viiiiii_6","jsCall_viiiiii_7","jsCall_viiiiii_8","jsCall_viiiiii_9","jsCall_viiiiii_10","jsCall_viiiiii_11","jsCall_viiiiii_12","jsCall_viiiiii_13","jsCall_viiiiii_14","jsCall_viiiiii_15","jsCall_viiiiii_16","jsCall_viiiiii_17","jsCall_viiiiii_18","jsCall_viiiiii_19","jsCall_viiiiii_20","jsCall_viiiiii_21","jsCall_viiiiii_22","jsCall_viiiiii_23","jsCall_viiiiii_24","jsCall_viiiiii_25","jsCall_viiiiii_26","jsCall_viiiiii_27","jsCall_viiiiii_28","jsCall_viiiiii_29","jsCall_viiiiii_30","jsCall_viiiiii_31","jsCall_viiiiii_32","jsCall_viiiiii_33","jsCall_viiiiii_34","_read_geobtag","_read_apic","_read_chapter","_read_priv","_ff_hyscale_fast_c","_bswap16Y_c","_read_ya16le_gray_c","_read_ya16be_gray_c","_read_ayuv64le_Y_c","_yuy2ToY_c","_uyvyToY_c","_bgr24ToY_c","_bgr16leToY_c","_bgr16beToY_c","_bgr15leToY_c","_bgr15beToY_c","_bgr12leToY_c","_bgr12beToY_c","_rgb24ToY_c","_rgb16leToY_c","_rgb16beToY_c","_rgb15leToY_c","_rgb15beToY_c","_rgb12leToY_c","_rgb12beToY_c","_palToY_c","_monoblack2Y_c","_monowhite2Y_c","_bgr32ToY_c","_bgr321ToY_c","_rgb32ToY_c","_rgb321ToY_c","_rgb48BEToY_c","_rgb48LEToY_c","_bgr48BEToY_c","_bgr48LEToY_c","_rgb64BEToY_c","_rgb64LEToY_c","_bgr64BEToY_c","_bgr64LEToY_c","_p010LEToY_c","_p010BEToY_c","_grayf32ToY16_c","_grayf32ToY16_bswap_c","_rgba64leToA_c","_rgba64beToA_c","_rgbaToA_c","_abgrToA_c","_read_ya16le_alpha_c","_read_ya16be_alpha_c","_read_ayuv64le_A_c","_palToA_c","_pred_dc_9","_pred_angular_0_9","_pred_angular_1_9","_pred_angular_2_9","_pred_angular_3_9","_pred_dc_10","_pred_angular_0_10","_pred_angular_1_10","_pred_angular_2_10","_pred_angular_3_10","_pred_dc_12","_pred_angular_0_12","_pred_angular_1_12","_pred_angular_2_12","_pred_angular_3_12","_pred_dc_8","_pred_angular_0_8","_pred_angular_1_8","_pred_angular_2_8","_pred_angular_3_8","_put_pcm_9","_hevc_h_loop_filter_luma_9","_hevc_v_loop_filter_luma_9","_put_pcm_10","_hevc_h_loop_filter_luma_10","_hevc_v_loop_filter_luma_10","_put_pcm_12","_hevc_h_loop_filter_luma_12","_hevc_v_loop_filter_luma_12","_put_pcm_8","_hevc_h_loop_filter_luma_8","_hevc_v_loop_filter_luma_8","_sbr_hf_apply_noise_0","_sbr_hf_apply_noise_1","_sbr_hf_apply_noise_2","_sbr_hf_apply_noise_3","_weight_h264_pixels16_8_c","_weight_h264_pixels8_8_c","_weight_h264_pixels4_8_c","_weight_h264_pixels2_8_c","_aes_decrypt","_aes_encrypt",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,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,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,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];var debug_table_viiiiiifi=[0,"jsCall_viiiiiifi_0","jsCall_viiiiiifi_1","jsCall_viiiiiifi_2","jsCall_viiiiiifi_3","jsCall_viiiiiifi_4","jsCall_viiiiiifi_5","jsCall_viiiiiifi_6","jsCall_viiiiiifi_7","jsCall_viiiiiifi_8","jsCall_viiiiiifi_9","jsCall_viiiiiifi_10","jsCall_viiiiiifi_11","jsCall_viiiiiifi_12","jsCall_viiiiiifi_13","jsCall_viiiiiifi_14","jsCall_viiiiiifi_15","jsCall_viiiiiifi_16","jsCall_viiiiiifi_17","jsCall_viiiiiifi_18","jsCall_viiiiiifi_19","jsCall_viiiiiifi_20","jsCall_viiiiiifi_21","jsCall_viiiiiifi_22","jsCall_viiiiiifi_23","jsCall_viiiiiifi_24","jsCall_viiiiiifi_25","jsCall_viiiiiifi_26","jsCall_viiiiiifi_27","jsCall_viiiiiifi_28","jsCall_viiiiiifi_29","jsCall_viiiiiifi_30","jsCall_viiiiiifi_31","jsCall_viiiiiifi_32","jsCall_viiiiiifi_33","jsCall_viiiiiifi_34","_ps_decorrelate_c",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];var debug_table_viiiiiii=[0,"jsCall_viiiiiii_0","jsCall_viiiiiii_1","jsCall_viiiiiii_2","jsCall_viiiiiii_3","jsCall_viiiiiii_4","jsCall_viiiiiii_5","jsCall_viiiiiii_6","jsCall_viiiiiii_7","jsCall_viiiiiii_8","jsCall_viiiiiii_9","jsCall_viiiiiii_10","jsCall_viiiiiii_11","jsCall_viiiiiii_12","jsCall_viiiiiii_13","jsCall_viiiiiii_14","jsCall_viiiiiii_15","jsCall_viiiiiii_16","jsCall_viiiiiii_17","jsCall_viiiiiii_18","jsCall_viiiiiii_19","jsCall_viiiiiii_20","jsCall_viiiiiii_21","jsCall_viiiiiii_22","jsCall_viiiiiii_23","jsCall_viiiiiii_24","jsCall_viiiiiii_25","jsCall_viiiiiii_26","jsCall_viiiiiii_27","jsCall_viiiiiii_28","jsCall_viiiiiii_29","jsCall_viiiiiii_30","jsCall_viiiiiii_31","jsCall_viiiiiii_32","jsCall_viiiiiii_33","jsCall_viiiiiii_34","_hScale8To15_c","_hScale8To19_c","_hScale16To19_c","_hScale16To15_c","_yuy2ToUV_c","_yvy2ToUV_c","_uyvyToUV_c","_nv12ToUV_c","_nv21ToUV_c","_palToUV_c","_bswap16UV_c","_read_ayuv64le_UV_c","_p010LEToUV_c","_p010BEToUV_c","_p016LEToUV_c","_p016BEToUV_c","_gbr24pToUV_half_c","_rgb64BEToUV_half_c","_rgb64LEToUV_half_c","_bgr64BEToUV_half_c","_bgr64LEToUV_half_c","_rgb48BEToUV_half_c","_rgb48LEToUV_half_c","_bgr48BEToUV_half_c","_bgr48LEToUV_half_c","_bgr32ToUV_half_c","_bgr321ToUV_half_c","_bgr24ToUV_half_c","_bgr16leToUV_half_c","_bgr16beToUV_half_c","_bgr15leToUV_half_c","_bgr15beToUV_half_c","_bgr12leToUV_half_c","_bgr12beToUV_half_c","_rgb32ToUV_half_c","_rgb321ToUV_half_c","_rgb24ToUV_half_c","_rgb16leToUV_half_c","_rgb16beToUV_half_c","_rgb15leToUV_half_c","_rgb15beToUV_half_c","_rgb12leToUV_half_c","_rgb12beToUV_half_c","_rgb64BEToUV_c","_rgb64LEToUV_c","_bgr64BEToUV_c","_bgr64LEToUV_c","_rgb48BEToUV_c","_rgb48LEToUV_c","_bgr48BEToUV_c","_bgr48LEToUV_c","_bgr32ToUV_c","_bgr321ToUV_c","_bgr24ToUV_c","_bgr16leToUV_c","_bgr16beToUV_c","_bgr15leToUV_c","_bgr15beToUV_c","_bgr12leToUV_c","_bgr12beToUV_c","_rgb32ToUV_c","_rgb321ToUV_c","_rgb24ToUV_c","_rgb16leToUV_c","_rgb16beToUV_c","_rgb15leToUV_c","_rgb15beToUV_c","_rgb12leToUV_c","_rgb12beToUV_c","_yuv2p010lX_LE_c","_yuv2p010lX_BE_c","_yuv2p010cX_c","_yuv2planeX_16LE_c","_yuv2planeX_16BE_c","_yuv2p016cX_c","_yuv2planeX_9LE_c","_yuv2planeX_9BE_c","_yuv2planeX_10LE_c","_yuv2planeX_10BE_c","_yuv2planeX_12LE_c","_yuv2planeX_12BE_c","_yuv2planeX_14LE_c","_yuv2planeX_14BE_c","_yuv2planeX_floatBE_c","_yuv2planeX_floatLE_c","_yuv2planeX_8_c","_yuv2nv12cX_c","_sao_edge_filter_9","_put_hevc_pel_pixels_9","_put_hevc_qpel_h_9","_put_hevc_qpel_v_9","_put_hevc_qpel_hv_9","_put_hevc_epel_h_9","_put_hevc_epel_v_9","_put_hevc_epel_hv_9","_sao_edge_filter_10","_put_hevc_pel_pixels_10","_put_hevc_qpel_h_10","_put_hevc_qpel_v_10","_put_hevc_qpel_hv_10","_put_hevc_epel_h_10","_put_hevc_epel_v_10","_put_hevc_epel_hv_10","_sao_edge_filter_12","_put_hevc_pel_pixels_12","_put_hevc_qpel_h_12","_put_hevc_qpel_v_12","_put_hevc_qpel_hv_12","_put_hevc_epel_h_12","_put_hevc_epel_v_12","_put_hevc_epel_hv_12","_sao_edge_filter_8","_put_hevc_pel_pixels_8","_put_hevc_qpel_h_8","_put_hevc_qpel_v_8","_put_hevc_qpel_hv_8","_put_hevc_epel_h_8","_put_hevc_epel_v_8","_put_hevc_epel_hv_8",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,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,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,0,0];var debug_table_viiiiiiii=[0,"jsCall_viiiiiiii_0","jsCall_viiiiiiii_1","jsCall_viiiiiiii_2","jsCall_viiiiiiii_3","jsCall_viiiiiiii_4","jsCall_viiiiiiii_5","jsCall_viiiiiiii_6","jsCall_viiiiiiii_7","jsCall_viiiiiiii_8","jsCall_viiiiiiii_9","jsCall_viiiiiiii_10","jsCall_viiiiiiii_11","jsCall_viiiiiiii_12","jsCall_viiiiiiii_13","jsCall_viiiiiiii_14","jsCall_viiiiiiii_15","jsCall_viiiiiiii_16","jsCall_viiiiiiii_17","jsCall_viiiiiiii_18","jsCall_viiiiiiii_19","jsCall_viiiiiiii_20","jsCall_viiiiiiii_21","jsCall_viiiiiiii_22","jsCall_viiiiiiii_23","jsCall_viiiiiiii_24","jsCall_viiiiiiii_25","jsCall_viiiiiiii_26","jsCall_viiiiiiii_27","jsCall_viiiiiiii_28","jsCall_viiiiiiii_29","jsCall_viiiiiiii_30","jsCall_viiiiiiii_31","jsCall_viiiiiiii_32","jsCall_viiiiiiii_33","jsCall_viiiiiiii_34","_ff_hcscale_fast_c","_bayer_bggr8_to_yv12_copy","_bayer_bggr8_to_yv12_interpolate","_bayer_bggr16le_to_yv12_copy","_bayer_bggr16le_to_yv12_interpolate","_bayer_bggr16be_to_yv12_copy","_bayer_bggr16be_to_yv12_interpolate","_bayer_rggb8_to_yv12_copy","_bayer_rggb8_to_yv12_interpolate","_bayer_rggb16le_to_yv12_copy","_bayer_rggb16le_to_yv12_interpolate","_bayer_rggb16be_to_yv12_copy","_bayer_rggb16be_to_yv12_interpolate","_bayer_gbrg8_to_yv12_copy","_bayer_gbrg8_to_yv12_interpolate","_bayer_gbrg16le_to_yv12_copy","_bayer_gbrg16le_to_yv12_interpolate","_bayer_gbrg16be_to_yv12_copy","_bayer_gbrg16be_to_yv12_interpolate","_bayer_grbg8_to_yv12_copy","_bayer_grbg8_to_yv12_interpolate","_bayer_grbg16le_to_yv12_copy","_bayer_grbg16le_to_yv12_interpolate","_bayer_grbg16be_to_yv12_copy","_bayer_grbg16be_to_yv12_interpolate","_sao_band_filter_9","_put_hevc_pel_uni_pixels_9","_put_hevc_qpel_uni_h_9","_put_hevc_qpel_uni_v_9","_put_hevc_qpel_uni_hv_9","_put_hevc_epel_uni_h_9","_put_hevc_epel_uni_v_9","_put_hevc_epel_uni_hv_9","_sao_band_filter_10","_put_hevc_pel_uni_pixels_10","_put_hevc_qpel_uni_h_10","_put_hevc_qpel_uni_v_10","_put_hevc_qpel_uni_hv_10","_put_hevc_epel_uni_h_10","_put_hevc_epel_uni_v_10","_put_hevc_epel_uni_hv_10","_sao_band_filter_12","_put_hevc_pel_uni_pixels_12","_put_hevc_qpel_uni_h_12","_put_hevc_qpel_uni_v_12","_put_hevc_qpel_uni_hv_12","_put_hevc_epel_uni_h_12","_put_hevc_epel_uni_v_12","_put_hevc_epel_uni_hv_12","_sao_band_filter_8","_put_hevc_pel_uni_pixels_8","_put_hevc_qpel_uni_h_8","_put_hevc_qpel_uni_v_8","_put_hevc_qpel_uni_hv_8","_put_hevc_epel_uni_h_8","_put_hevc_epel_uni_v_8","_put_hevc_epel_uni_hv_8","_biweight_h264_pixels16_8_c","_biweight_h264_pixels8_8_c","_biweight_h264_pixels4_8_c","_biweight_h264_pixels2_8_c",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];var debug_table_viiiiiiiid=[0,"jsCall_viiiiiiiid_0","jsCall_viiiiiiiid_1","jsCall_viiiiiiiid_2","jsCall_viiiiiiiid_3","jsCall_viiiiiiiid_4","jsCall_viiiiiiiid_5","jsCall_viiiiiiiid_6","jsCall_viiiiiiiid_7","jsCall_viiiiiiiid_8","jsCall_viiiiiiiid_9","jsCall_viiiiiiiid_10","jsCall_viiiiiiiid_11","jsCall_viiiiiiiid_12","jsCall_viiiiiiiid_13","jsCall_viiiiiiiid_14","jsCall_viiiiiiiid_15","jsCall_viiiiiiiid_16","jsCall_viiiiiiiid_17","jsCall_viiiiiiiid_18","jsCall_viiiiiiiid_19","jsCall_viiiiiiiid_20","jsCall_viiiiiiiid_21","jsCall_viiiiiiiid_22","jsCall_viiiiiiiid_23","jsCall_viiiiiiiid_24","jsCall_viiiiiiiid_25","jsCall_viiiiiiiid_26","jsCall_viiiiiiiid_27","jsCall_viiiiiiiid_28","jsCall_viiiiiiiid_29","jsCall_viiiiiiiid_30","jsCall_viiiiiiiid_31","jsCall_viiiiiiiid_32","jsCall_viiiiiiiid_33","jsCall_viiiiiiiid_34",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];var debug_table_viiiiiiiidi=[0,"jsCall_viiiiiiiidi_0","jsCall_viiiiiiiidi_1","jsCall_viiiiiiiidi_2","jsCall_viiiiiiiidi_3","jsCall_viiiiiiiidi_4","jsCall_viiiiiiiidi_5","jsCall_viiiiiiiidi_6","jsCall_viiiiiiiidi_7","jsCall_viiiiiiiidi_8","jsCall_viiiiiiiidi_9","jsCall_viiiiiiiidi_10","jsCall_viiiiiiiidi_11","jsCall_viiiiiiiidi_12","jsCall_viiiiiiiidi_13","jsCall_viiiiiiiidi_14","jsCall_viiiiiiiidi_15","jsCall_viiiiiiiidi_16","jsCall_viiiiiiiidi_17","jsCall_viiiiiiiidi_18","jsCall_viiiiiiiidi_19","jsCall_viiiiiiiidi_20","jsCall_viiiiiiiidi_21","jsCall_viiiiiiiidi_22","jsCall_viiiiiiiidi_23","jsCall_viiiiiiiidi_24","jsCall_viiiiiiiidi_25","jsCall_viiiiiiiidi_26","jsCall_viiiiiiiidi_27","jsCall_viiiiiiiidi_28","jsCall_viiiiiiiidi_29","jsCall_viiiiiiiidi_30","jsCall_viiiiiiiidi_31","jsCall_viiiiiiiidi_32","jsCall_viiiiiiiidi_33","jsCall_viiiiiiiidi_34",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];var debug_table_viiiiiiiii=[0,"jsCall_viiiiiiiii_0","jsCall_viiiiiiiii_1","jsCall_viiiiiiiii_2","jsCall_viiiiiiiii_3","jsCall_viiiiiiiii_4","jsCall_viiiiiiiii_5","jsCall_viiiiiiiii_6","jsCall_viiiiiiiii_7","jsCall_viiiiiiiii_8","jsCall_viiiiiiiii_9","jsCall_viiiiiiiii_10","jsCall_viiiiiiiii_11","jsCall_viiiiiiiii_12","jsCall_viiiiiiiii_13","jsCall_viiiiiiiii_14","jsCall_viiiiiiiii_15","jsCall_viiiiiiiii_16","jsCall_viiiiiiiii_17","jsCall_viiiiiiiii_18","jsCall_viiiiiiiii_19","jsCall_viiiiiiiii_20","jsCall_viiiiiiiii_21","jsCall_viiiiiiiii_22","jsCall_viiiiiiiii_23","jsCall_viiiiiiiii_24","jsCall_viiiiiiiii_25","jsCall_viiiiiiiii_26","jsCall_viiiiiiiii_27","jsCall_viiiiiiiii_28","jsCall_viiiiiiiii_29","jsCall_viiiiiiiii_30","jsCall_viiiiiiiii_31","jsCall_viiiiiiiii_32","jsCall_viiiiiiiii_33","jsCall_viiiiiiiii_34","_yuv2rgba32_full_1_c","_yuv2rgbx32_full_1_c","_yuv2argb32_full_1_c","_yuv2xrgb32_full_1_c","_yuv2bgra32_full_1_c","_yuv2bgrx32_full_1_c","_yuv2abgr32_full_1_c","_yuv2xbgr32_full_1_c","_yuv2rgba64le_full_1_c","_yuv2rgbx64le_full_1_c","_yuv2rgba64be_full_1_c","_yuv2rgbx64be_full_1_c","_yuv2bgra64le_full_1_c","_yuv2bgrx64le_full_1_c","_yuv2bgra64be_full_1_c","_yuv2bgrx64be_full_1_c","_yuv2rgb24_full_1_c","_yuv2bgr24_full_1_c","_yuv2rgb48le_full_1_c","_yuv2bgr48le_full_1_c","_yuv2rgb48be_full_1_c","_yuv2bgr48be_full_1_c","_yuv2bgr4_byte_full_1_c","_yuv2rgb4_byte_full_1_c","_yuv2bgr8_full_1_c","_yuv2rgb8_full_1_c","_yuv2rgbx64le_1_c","_yuv2rgba64le_1_c","_yuv2rgbx64be_1_c","_yuv2rgba64be_1_c","_yuv2bgrx64le_1_c","_yuv2bgra64le_1_c","_yuv2bgrx64be_1_c","_yuv2bgra64be_1_c","_yuv2rgba32_1_c","_yuv2rgbx32_1_c","_yuv2rgba32_1_1_c","_yuv2rgbx32_1_1_c","_yuv2rgb16_1_c","_yuv2rgb15_1_c","_yuv2rgb12_1_c","_yuv2rgb8_1_c","_yuv2rgb4_1_c","_yuv2rgb4b_1_c","_yuv2rgb48le_1_c","_yuv2rgb48be_1_c","_yuv2bgr48le_1_c","_yuv2bgr48be_1_c","_yuv2rgb24_1_c","_yuv2bgr24_1_c","_yuv2monowhite_1_c","_yuv2monoblack_1_c","_yuv2yuyv422_1_c","_yuv2yvyu422_1_c","_yuv2uyvy422_1_c","_yuv2ya8_1_c","_yuv2ya16le_1_c","_yuv2ya16be_1_c","_put_hevc_pel_bi_pixels_9","_put_hevc_qpel_bi_h_9","_put_hevc_qpel_bi_v_9","_put_hevc_qpel_bi_hv_9","_put_hevc_epel_bi_h_9","_put_hevc_epel_bi_v_9","_put_hevc_epel_bi_hv_9","_put_hevc_pel_bi_pixels_10","_put_hevc_qpel_bi_h_10","_put_hevc_qpel_bi_v_10","_put_hevc_qpel_bi_hv_10","_put_hevc_epel_bi_h_10","_put_hevc_epel_bi_v_10","_put_hevc_epel_bi_hv_10","_put_hevc_pel_bi_pixels_12","_put_hevc_qpel_bi_h_12","_put_hevc_qpel_bi_v_12","_put_hevc_qpel_bi_hv_12","_put_hevc_epel_bi_h_12","_put_hevc_epel_bi_v_12","_put_hevc_epel_bi_hv_12","_put_hevc_pel_bi_pixels_8","_put_hevc_qpel_bi_h_8","_put_hevc_qpel_bi_v_8","_put_hevc_qpel_bi_hv_8","_put_hevc_epel_bi_h_8","_put_hevc_epel_bi_v_8","_put_hevc_epel_bi_hv_8",0,0,0,0,0,0];var debug_table_viiiiiiiiii=[0,"jsCall_viiiiiiiiii_0","jsCall_viiiiiiiiii_1","jsCall_viiiiiiiiii_2","jsCall_viiiiiiiiii_3","jsCall_viiiiiiiiii_4","jsCall_viiiiiiiiii_5","jsCall_viiiiiiiiii_6","jsCall_viiiiiiiiii_7","jsCall_viiiiiiiiii_8","jsCall_viiiiiiiiii_9","jsCall_viiiiiiiiii_10","jsCall_viiiiiiiiii_11","jsCall_viiiiiiiiii_12","jsCall_viiiiiiiiii_13","jsCall_viiiiiiiiii_14","jsCall_viiiiiiiiii_15","jsCall_viiiiiiiiii_16","jsCall_viiiiiiiiii_17","jsCall_viiiiiiiiii_18","jsCall_viiiiiiiiii_19","jsCall_viiiiiiiiii_20","jsCall_viiiiiiiiii_21","jsCall_viiiiiiiiii_22","jsCall_viiiiiiiiii_23","jsCall_viiiiiiiiii_24","jsCall_viiiiiiiiii_25","jsCall_viiiiiiiiii_26","jsCall_viiiiiiiiii_27","jsCall_viiiiiiiiii_28","jsCall_viiiiiiiiii_29","jsCall_viiiiiiiiii_30","jsCall_viiiiiiiiii_31","jsCall_viiiiiiiiii_32","jsCall_viiiiiiiiii_33","jsCall_viiiiiiiiii_34","_yuv2rgba32_full_2_c","_yuv2rgbx32_full_2_c","_yuv2argb32_full_2_c","_yuv2xrgb32_full_2_c","_yuv2bgra32_full_2_c","_yuv2bgrx32_full_2_c","_yuv2abgr32_full_2_c","_yuv2xbgr32_full_2_c","_yuv2rgba64le_full_2_c","_yuv2rgbx64le_full_2_c","_yuv2rgba64be_full_2_c","_yuv2rgbx64be_full_2_c","_yuv2bgra64le_full_2_c","_yuv2bgrx64le_full_2_c","_yuv2bgra64be_full_2_c","_yuv2bgrx64be_full_2_c","_yuv2rgb24_full_2_c","_yuv2bgr24_full_2_c","_yuv2rgb48le_full_2_c","_yuv2bgr48le_full_2_c","_yuv2rgb48be_full_2_c","_yuv2bgr48be_full_2_c","_yuv2bgr4_byte_full_2_c","_yuv2rgb4_byte_full_2_c","_yuv2bgr8_full_2_c","_yuv2rgb8_full_2_c","_yuv2rgbx64le_2_c","_yuv2rgba64le_2_c","_yuv2rgbx64be_2_c","_yuv2rgba64be_2_c","_yuv2bgrx64le_2_c","_yuv2bgra64le_2_c","_yuv2bgrx64be_2_c","_yuv2bgra64be_2_c","_yuv2rgba32_2_c","_yuv2rgbx32_2_c","_yuv2rgba32_1_2_c","_yuv2rgbx32_1_2_c","_yuv2rgb16_2_c","_yuv2rgb15_2_c","_yuv2rgb12_2_c","_yuv2rgb8_2_c","_yuv2rgb4_2_c","_yuv2rgb4b_2_c","_yuv2rgb48le_2_c","_yuv2rgb48be_2_c","_yuv2bgr48le_2_c","_yuv2bgr48be_2_c","_yuv2rgb24_2_c","_yuv2bgr24_2_c","_yuv2monowhite_2_c","_yuv2monoblack_2_c","_yuv2yuyv422_2_c","_yuv2yvyu422_2_c","_yuv2uyvy422_2_c","_yuv2ya8_2_c","_yuv2ya16le_2_c","_yuv2ya16be_2_c","_ff_emulated_edge_mc_8","_ff_emulated_edge_mc_16",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];var debug_table_viiiiiiiiiii=[0,"jsCall_viiiiiiiiiii_0","jsCall_viiiiiiiiiii_1","jsCall_viiiiiiiiiii_2","jsCall_viiiiiiiiiii_3","jsCall_viiiiiiiiiii_4","jsCall_viiiiiiiiiii_5","jsCall_viiiiiiiiiii_6","jsCall_viiiiiiiiiii_7","jsCall_viiiiiiiiiii_8","jsCall_viiiiiiiiiii_9","jsCall_viiiiiiiiiii_10","jsCall_viiiiiiiiiii_11","jsCall_viiiiiiiiiii_12","jsCall_viiiiiiiiiii_13","jsCall_viiiiiiiiiii_14","jsCall_viiiiiiiiiii_15","jsCall_viiiiiiiiiii_16","jsCall_viiiiiiiiiii_17","jsCall_viiiiiiiiiii_18","jsCall_viiiiiiiiiii_19","jsCall_viiiiiiiiiii_20","jsCall_viiiiiiiiiii_21","jsCall_viiiiiiiiiii_22","jsCall_viiiiiiiiiii_23","jsCall_viiiiiiiiiii_24","jsCall_viiiiiiiiiii_25","jsCall_viiiiiiiiiii_26","jsCall_viiiiiiiiiii_27","jsCall_viiiiiiiiiii_28","jsCall_viiiiiiiiiii_29","jsCall_viiiiiiiiiii_30","jsCall_viiiiiiiiiii_31","jsCall_viiiiiiiiiii_32","jsCall_viiiiiiiiiii_33","jsCall_viiiiiiiiiii_34","_put_hevc_pel_uni_w_pixels_9","_put_hevc_qpel_uni_w_h_9","_put_hevc_qpel_uni_w_v_9","_put_hevc_qpel_uni_w_hv_9","_put_hevc_epel_uni_w_h_9","_put_hevc_epel_uni_w_v_9","_put_hevc_epel_uni_w_hv_9","_put_hevc_pel_uni_w_pixels_10","_put_hevc_qpel_uni_w_h_10","_put_hevc_qpel_uni_w_v_10","_put_hevc_qpel_uni_w_hv_10","_put_hevc_epel_uni_w_h_10","_put_hevc_epel_uni_w_v_10","_put_hevc_epel_uni_w_hv_10","_put_hevc_pel_uni_w_pixels_12","_put_hevc_qpel_uni_w_h_12","_put_hevc_qpel_uni_w_v_12","_put_hevc_qpel_uni_w_hv_12","_put_hevc_epel_uni_w_h_12","_put_hevc_epel_uni_w_v_12","_put_hevc_epel_uni_w_hv_12","_put_hevc_pel_uni_w_pixels_8","_put_hevc_qpel_uni_w_h_8","_put_hevc_qpel_uni_w_v_8","_put_hevc_qpel_uni_w_hv_8","_put_hevc_epel_uni_w_h_8","_put_hevc_epel_uni_w_v_8","_put_hevc_epel_uni_w_hv_8"];var debug_table_viiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiii_0","jsCall_viiiiiiiiiiii_1","jsCall_viiiiiiiiiiii_2","jsCall_viiiiiiiiiiii_3","jsCall_viiiiiiiiiiii_4","jsCall_viiiiiiiiiiii_5","jsCall_viiiiiiiiiiii_6","jsCall_viiiiiiiiiiii_7","jsCall_viiiiiiiiiiii_8","jsCall_viiiiiiiiiiii_9","jsCall_viiiiiiiiiiii_10","jsCall_viiiiiiiiiiii_11","jsCall_viiiiiiiiiiii_12","jsCall_viiiiiiiiiiii_13","jsCall_viiiiiiiiiiii_14","jsCall_viiiiiiiiiiii_15","jsCall_viiiiiiiiiiii_16","jsCall_viiiiiiiiiiii_17","jsCall_viiiiiiiiiiii_18","jsCall_viiiiiiiiiiii_19","jsCall_viiiiiiiiiiii_20","jsCall_viiiiiiiiiiii_21","jsCall_viiiiiiiiiiii_22","jsCall_viiiiiiiiiiii_23","jsCall_viiiiiiiiiiii_24","jsCall_viiiiiiiiiiii_25","jsCall_viiiiiiiiiiii_26","jsCall_viiiiiiiiiiii_27","jsCall_viiiiiiiiiiii_28","jsCall_viiiiiiiiiiii_29","jsCall_viiiiiiiiiiii_30","jsCall_viiiiiiiiiiii_31","jsCall_viiiiiiiiiiii_32","jsCall_viiiiiiiiiiii_33","jsCall_viiiiiiiiiiii_34","_yuv2rgba32_full_X_c","_yuv2rgbx32_full_X_c","_yuv2argb32_full_X_c","_yuv2xrgb32_full_X_c","_yuv2bgra32_full_X_c","_yuv2bgrx32_full_X_c","_yuv2abgr32_full_X_c","_yuv2xbgr32_full_X_c","_yuv2rgba64le_full_X_c","_yuv2rgbx64le_full_X_c","_yuv2rgba64be_full_X_c","_yuv2rgbx64be_full_X_c","_yuv2bgra64le_full_X_c","_yuv2bgrx64le_full_X_c","_yuv2bgra64be_full_X_c","_yuv2bgrx64be_full_X_c","_yuv2rgb24_full_X_c","_yuv2bgr24_full_X_c","_yuv2rgb48le_full_X_c","_yuv2bgr48le_full_X_c","_yuv2rgb48be_full_X_c","_yuv2bgr48be_full_X_c","_yuv2bgr4_byte_full_X_c","_yuv2rgb4_byte_full_X_c","_yuv2bgr8_full_X_c","_yuv2rgb8_full_X_c","_yuv2gbrp_full_X_c","_yuv2gbrp16_full_X_c","_yuv2rgbx64le_X_c","_yuv2rgba64le_X_c","_yuv2rgbx64be_X_c","_yuv2rgba64be_X_c","_yuv2bgrx64le_X_c","_yuv2bgra64le_X_c","_yuv2bgrx64be_X_c","_yuv2bgra64be_X_c","_yuv2rgba32_X_c","_yuv2rgbx32_X_c","_yuv2rgba32_1_X_c","_yuv2rgbx32_1_X_c","_yuv2rgb16_X_c","_yuv2rgb15_X_c","_yuv2rgb12_X_c","_yuv2rgb8_X_c","_yuv2rgb4_X_c","_yuv2rgb4b_X_c","_yuv2rgb48le_X_c","_yuv2rgb48be_X_c","_yuv2bgr48le_X_c","_yuv2bgr48be_X_c","_yuv2rgb24_X_c","_yuv2bgr24_X_c","_yuv2monowhite_X_c","_yuv2ayuv64le_X_c","_yuv2monoblack_X_c","_yuv2yuyv422_X_c","_yuv2yvyu422_X_c","_yuv2uyvy422_X_c","_yuv2ya8_X_c","_yuv2ya16le_X_c","_yuv2ya16be_X_c","_sao_edge_restore_0_9","_sao_edge_restore_1_9","_sao_edge_restore_0_10","_sao_edge_restore_1_10","_sao_edge_restore_0_12","_sao_edge_restore_1_12","_sao_edge_restore_0_8","_sao_edge_restore_1_8",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiiiii_0","jsCall_viiiiiiiiiiiiii_1","jsCall_viiiiiiiiiiiiii_2","jsCall_viiiiiiiiiiiiii_3","jsCall_viiiiiiiiiiiiii_4","jsCall_viiiiiiiiiiiiii_5","jsCall_viiiiiiiiiiiiii_6","jsCall_viiiiiiiiiiiiii_7","jsCall_viiiiiiiiiiiiii_8","jsCall_viiiiiiiiiiiiii_9","jsCall_viiiiiiiiiiiiii_10","jsCall_viiiiiiiiiiiiii_11","jsCall_viiiiiiiiiiiiii_12","jsCall_viiiiiiiiiiiiii_13","jsCall_viiiiiiiiiiiiii_14","jsCall_viiiiiiiiiiiiii_15","jsCall_viiiiiiiiiiiiii_16","jsCall_viiiiiiiiiiiiii_17","jsCall_viiiiiiiiiiiiii_18","jsCall_viiiiiiiiiiiiii_19","jsCall_viiiiiiiiiiiiii_20","jsCall_viiiiiiiiiiiiii_21","jsCall_viiiiiiiiiiiiii_22","jsCall_viiiiiiiiiiiiii_23","jsCall_viiiiiiiiiiiiii_24","jsCall_viiiiiiiiiiiiii_25","jsCall_viiiiiiiiiiiiii_26","jsCall_viiiiiiiiiiiiii_27","jsCall_viiiiiiiiiiiiii_28","jsCall_viiiiiiiiiiiiii_29","jsCall_viiiiiiiiiiiiii_30","jsCall_viiiiiiiiiiiiii_31","jsCall_viiiiiiiiiiiiii_32","jsCall_viiiiiiiiiiiiii_33","jsCall_viiiiiiiiiiiiii_34","_put_hevc_pel_bi_w_pixels_9","_put_hevc_qpel_bi_w_h_9","_put_hevc_qpel_bi_w_v_9","_put_hevc_qpel_bi_w_hv_9","_put_hevc_epel_bi_w_h_9","_put_hevc_epel_bi_w_v_9","_put_hevc_epel_bi_w_hv_9","_put_hevc_pel_bi_w_pixels_10","_put_hevc_qpel_bi_w_h_10","_put_hevc_qpel_bi_w_v_10","_put_hevc_qpel_bi_w_hv_10","_put_hevc_epel_bi_w_h_10","_put_hevc_epel_bi_w_v_10","_put_hevc_epel_bi_w_hv_10","_put_hevc_pel_bi_w_pixels_12","_put_hevc_qpel_bi_w_h_12","_put_hevc_qpel_bi_w_v_12","_put_hevc_qpel_bi_w_hv_12","_put_hevc_epel_bi_w_h_12","_put_hevc_epel_bi_w_v_12","_put_hevc_epel_bi_w_hv_12","_put_hevc_pel_bi_w_pixels_8","_put_hevc_qpel_bi_w_h_8","_put_hevc_qpel_bi_w_v_8","_put_hevc_qpel_bi_w_hv_8","_put_hevc_epel_bi_w_h_8","_put_hevc_epel_bi_w_v_8","_put_hevc_epel_bi_w_hv_8"];var debug_tables={"dd":debug_table_dd,"did":debug_table_did,"didd":debug_table_didd,"fii":debug_table_fii,"fiii":debug_table_fiii,"ii":debug_table_ii,"iid":debug_table_iid,"iii":debug_table_iii,"iiii":debug_table_iiii,"iiiii":debug_table_iiiii,"iiiiii":debug_table_iiiiii,"iiiiiii":debug_table_iiiiiii,"iiiiiiii":debug_table_iiiiiiii,"iiiiij":debug_table_iiiiij,"iiiji":debug_table_iiiji,"iiijjji":debug_table_iiijjji,"jiiij":debug_table_jiiij,"jiiji":debug_table_jiiji,"jiji":debug_table_jiji,"v":debug_table_v,"vdiidiiiii":debug_table_vdiidiiiii,"vi":debug_table_vi,"vii":debug_table_vii,"viidi":debug_table_viidi,"viifi":debug_table_viifi,"viii":debug_table_viii,"viiii":debug_table_viiii,"viiiid":debug_table_viiiid,"viiiifii":debug_table_viiiifii,"viiiii":debug_table_viiiii,"viiiiidd":debug_table_viiiiidd,"viiiiii":debug_table_viiiiii,"viiiiiifi":debug_table_viiiiiifi,"viiiiiii":debug_table_viiiiiii,"viiiiiiii":debug_table_viiiiiiii,"viiiiiiiid":debug_table_viiiiiiiid,"viiiiiiiidi":debug_table_viiiiiiiidi,"viiiiiiiii":debug_table_viiiiiiiii,"viiiiiiiiii":debug_table_viiiiiiiiii,"viiiiiiiiiii":debug_table_viiiiiiiiiii,"viiiiiiiiiiii":debug_table_viiiiiiiiiiii,"viiiiiiiiiiiiii":debug_table_viiiiiiiiiiiiii};function nullFunc_dd(x){abortFnPtrError(x,"dd")}function nullFunc_did(x){abortFnPtrError(x,"did")}function nullFunc_didd(x){abortFnPtrError(x,"didd")}function nullFunc_fii(x){abortFnPtrError(x,"fii")}function nullFunc_fiii(x){abortFnPtrError(x,"fiii")}function nullFunc_ii(x){abortFnPtrError(x,"ii")}function nullFunc_iid(x){abortFnPtrError(x,"iid")}function nullFunc_iii(x){abortFnPtrError(x,"iii")}function nullFunc_iiii(x){abortFnPtrError(x,"iiii")}function nullFunc_iiiii(x){abortFnPtrError(x,"iiiii")}function nullFunc_iiiiii(x){abortFnPtrError(x,"iiiiii")}function nullFunc_iiiiiii(x){abortFnPtrError(x,"iiiiiii")}function nullFunc_iiiiiiii(x){abortFnPtrError(x,"iiiiiiii")}function nullFunc_iiiiij(x){abortFnPtrError(x,"iiiiij")}function nullFunc_iiiji(x){abortFnPtrError(x,"iiiji")}function nullFunc_iiijjji(x){abortFnPtrError(x,"iiijjji")}function nullFunc_jiiij(x){abortFnPtrError(x,"jiiij")}function nullFunc_jiiji(x){abortFnPtrError(x,"jiiji")}function nullFunc_jiji(x){abortFnPtrError(x,"jiji")}function nullFunc_v(x){abortFnPtrError(x,"v")}function nullFunc_vdiidiiiii(x){abortFnPtrError(x,"vdiidiiiii")}function nullFunc_vi(x){abortFnPtrError(x,"vi")}function nullFunc_vii(x){abortFnPtrError(x,"vii")}function nullFunc_viidi(x){abortFnPtrError(x,"viidi")}function nullFunc_viifi(x){abortFnPtrError(x,"viifi")}function nullFunc_viii(x){abortFnPtrError(x,"viii")}function nullFunc_viiii(x){abortFnPtrError(x,"viiii")}function nullFunc_viiiid(x){abortFnPtrError(x,"viiiid")}function nullFunc_viiiifii(x){abortFnPtrError(x,"viiiifii")}function nullFunc_viiiii(x){abortFnPtrError(x,"viiiii")}function nullFunc_viiiiidd(x){abortFnPtrError(x,"viiiiidd")}function nullFunc_viiiiii(x){abortFnPtrError(x,"viiiiii")}function nullFunc_viiiiiifi(x){abortFnPtrError(x,"viiiiiifi")}function nullFunc_viiiiiii(x){abortFnPtrError(x,"viiiiiii")}function nullFunc_viiiiiiii(x){abortFnPtrError(x,"viiiiiiii")}function nullFunc_viiiiiiiid(x){abortFnPtrError(x,"viiiiiiiid")}function nullFunc_viiiiiiiidi(x){abortFnPtrError(x,"viiiiiiiidi")}function nullFunc_viiiiiiiii(x){abortFnPtrError(x,"viiiiiiiii")}function nullFunc_viiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiii")}function nullFunc_viiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiii")}function nullFunc_viiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiii")}function nullFunc_viiiiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiiiii")}function jsCall_dd(index,a1){return functionPointers[index](a1)}function jsCall_did(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_didd(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_fii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_fiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_ii(index,a1){return functionPointers[index](a1)}function jsCall_iid(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_iiiii(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiiiii(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiiiii(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){return functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_iiiiij(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiijjji(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_jiiij(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiji(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_v(index){functionPointers[index]()}function jsCall_vdiidiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_vi(index,a1){functionPointers[index](a1)}function jsCall_vii(index,a1,a2){functionPointers[index](a1,a2)}function jsCall_viidi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viifi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viii(index,a1,a2,a3){functionPointers[index](a1,a2,a3)}function jsCall_viiii(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viiiid(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiifii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiii(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiiidd(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiii(index,a1,a2,a3,a4,a5,a6){functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_viiiiiifi(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiiiid(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiidi(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}function jsCall_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}function jsCall_viiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}var asmGlobalArg={};var asmLibraryArg={"___buildEnvironment":___buildEnvironment,"___lock":___lock,"___syscall221":___syscall221,"___syscall3":___syscall3,"___syscall5":___syscall5,"___unlock":___unlock,"___wasi_fd_close":___wasi_fd_close,"___wasi_fd_fdstat_get":___wasi_fd_fdstat_get,"___wasi_fd_seek":___wasi_fd_seek,"___wasi_fd_write":___wasi_fd_write,"__emscripten_fetch_free":__emscripten_fetch_free,"__memory_base":1024,"__table_base":0,"_abort":_abort,"_clock":_clock,"_clock_gettime":_clock_gettime,"_emscripten_asm_const_i":_emscripten_asm_const_i,"_emscripten_get_heap_size":_emscripten_get_heap_size,"_emscripten_is_main_browser_thread":_emscripten_is_main_browser_thread,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_emscripten_resize_heap":_emscripten_resize_heap,"_emscripten_start_fetch":_emscripten_start_fetch,"_fabs":_fabs,"_getenv":_getenv,"_gettimeofday":_gettimeofday,"_gmtime_r":_gmtime_r,"_llvm_exp2_f64":_llvm_exp2_f64,"_llvm_log2_f32":_llvm_log2_f32,"_llvm_stackrestore":_llvm_stackrestore,"_llvm_stacksave":_llvm_stacksave,"_llvm_trunc_f64":_llvm_trunc_f64,"_localtime_r":_localtime_r,"_nanosleep":_nanosleep,"_pthread_cond_destroy":_pthread_cond_destroy,"_pthread_cond_init":_pthread_cond_init,"_pthread_create":_pthread_create,"_pthread_join":_pthread_join,"_strftime":_strftime,"_sysconf":_sysconf,"_time":_time,"abortStackOverflow":abortStackOverflow,"getTempRet0":getTempRet0,"jsCall_dd":jsCall_dd,"jsCall_did":jsCall_did,"jsCall_didd":jsCall_didd,"jsCall_fii":jsCall_fii,"jsCall_fiii":jsCall_fiii,"jsCall_ii":jsCall_ii,"jsCall_iid":jsCall_iid,"jsCall_iii":jsCall_iii,"jsCall_iiii":jsCall_iiii,"jsCall_iiiii":jsCall_iiiii,"jsCall_iiiiii":jsCall_iiiiii,"jsCall_iiiiiii":jsCall_iiiiiii,"jsCall_iiiiiiii":jsCall_iiiiiiii,"jsCall_iiiiij":jsCall_iiiiij,"jsCall_iiiji":jsCall_iiiji,"jsCall_iiijjji":jsCall_iiijjji,"jsCall_jiiij":jsCall_jiiij,"jsCall_jiiji":jsCall_jiiji,"jsCall_jiji":jsCall_jiji,"jsCall_v":jsCall_v,"jsCall_vdiidiiiii":jsCall_vdiidiiiii,"jsCall_vi":jsCall_vi,"jsCall_vii":jsCall_vii,"jsCall_viidi":jsCall_viidi,"jsCall_viifi":jsCall_viifi,"jsCall_viii":jsCall_viii,"jsCall_viiii":jsCall_viiii,"jsCall_viiiid":jsCall_viiiid,"jsCall_viiiifii":jsCall_viiiifii,"jsCall_viiiii":jsCall_viiiii,"jsCall_viiiiidd":jsCall_viiiiidd,"jsCall_viiiiii":jsCall_viiiiii,"jsCall_viiiiiifi":jsCall_viiiiiifi,"jsCall_viiiiiii":jsCall_viiiiiii,"jsCall_viiiiiiii":jsCall_viiiiiiii,"jsCall_viiiiiiiid":jsCall_viiiiiiiid,"jsCall_viiiiiiiidi":jsCall_viiiiiiiidi,"jsCall_viiiiiiiii":jsCall_viiiiiiiii,"jsCall_viiiiiiiiii":jsCall_viiiiiiiiii,"jsCall_viiiiiiiiiii":jsCall_viiiiiiiiiii,"jsCall_viiiiiiiiiiii":jsCall_viiiiiiiiiiii,"jsCall_viiiiiiiiiiiiii":jsCall_viiiiiiiiiiiiii,"memory":wasmMemory,"nullFunc_dd":nullFunc_dd,"nullFunc_did":nullFunc_did,"nullFunc_didd":nullFunc_didd,"nullFunc_fii":nullFunc_fii,"nullFunc_fiii":nullFunc_fiii,"nullFunc_ii":nullFunc_ii,"nullFunc_iid":nullFunc_iid,"nullFunc_iii":nullFunc_iii,"nullFunc_iiii":nullFunc_iiii,"nullFunc_iiiii":nullFunc_iiiii,"nullFunc_iiiiii":nullFunc_iiiiii,"nullFunc_iiiiiii":nullFunc_iiiiiii,"nullFunc_iiiiiiii":nullFunc_iiiiiiii,"nullFunc_iiiiij":nullFunc_iiiiij,"nullFunc_iiiji":nullFunc_iiiji,"nullFunc_iiijjji":nullFunc_iiijjji,"nullFunc_jiiij":nullFunc_jiiij,"nullFunc_jiiji":nullFunc_jiiji,"nullFunc_jiji":nullFunc_jiji,"nullFunc_v":nullFunc_v,"nullFunc_vdiidiiiii":nullFunc_vdiidiiiii,"nullFunc_vi":nullFunc_vi,"nullFunc_vii":nullFunc_vii,"nullFunc_viidi":nullFunc_viidi,"nullFunc_viifi":nullFunc_viifi,"nullFunc_viii":nullFunc_viii,"nullFunc_viiii":nullFunc_viiii,"nullFunc_viiiid":nullFunc_viiiid,"nullFunc_viiiifii":nullFunc_viiiifii,"nullFunc_viiiii":nullFunc_viiiii,"nullFunc_viiiiidd":nullFunc_viiiiidd,"nullFunc_viiiiii":nullFunc_viiiiii,"nullFunc_viiiiiifi":nullFunc_viiiiiifi,"nullFunc_viiiiiii":nullFunc_viiiiiii,"nullFunc_viiiiiiii":nullFunc_viiiiiiii,"nullFunc_viiiiiiiid":nullFunc_viiiiiiiid,"nullFunc_viiiiiiiidi":nullFunc_viiiiiiiidi,"nullFunc_viiiiiiiii":nullFunc_viiiiiiiii,"nullFunc_viiiiiiiiii":nullFunc_viiiiiiiiii,"nullFunc_viiiiiiiiiii":nullFunc_viiiiiiiiiii,"nullFunc_viiiiiiiiiiii":nullFunc_viiiiiiiiiiii,"nullFunc_viiiiiiiiiiiiii":nullFunc_viiiiiiiiiiiiii,"table":wasmTable};var asm=Module["asm"](asmGlobalArg,asmLibraryArg,buffer);Module["asm"]=asm;var _AVSniffHttpFlvInit=Module["_AVSniffHttpFlvInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffHttpFlvInit"].apply(null,arguments)};var _AVSniffStreamInit=Module["_AVSniffStreamInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffStreamInit"].apply(null,arguments)};var ___emscripten_environ_constructor=Module["___emscripten_environ_constructor"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___emscripten_environ_constructor"].apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___errno_location"].apply(null,arguments)};var __get_daylight=Module["__get_daylight"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_daylight"].apply(null,arguments)};var __get_timezone=Module["__get_timezone"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_timezone"].apply(null,arguments)};var __get_tzname=Module["__get_tzname"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_tzname"].apply(null,arguments)};var _closeVideo=Module["_closeVideo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_closeVideo"].apply(null,arguments)};var _decodeCodecContext=Module["_decodeCodecContext"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeCodecContext"].apply(null,arguments)};var _decodeHttpFlvVideoFrame=Module["_decodeHttpFlvVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null,arguments)};var _decodeVideoFrame=Module["_decodeVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeVideoFrame"].apply(null,arguments)};var _demuxBox=Module["_demuxBox"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_demuxBox"].apply(null,arguments)};var _exitMissile=Module["_exitMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitMissile"].apply(null,arguments)};var _exitTsMissile=Module["_exitTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitTsMissile"].apply(null,arguments)};var _fflush=Module["_fflush"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_fflush"].apply(null,arguments)};var _free=Module["_free"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_free"].apply(null,arguments)};var _getAudioCodecID=Module["_getAudioCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getAudioCodecID"].apply(null,arguments)};var _getBufferLengthApi=Module["_getBufferLengthApi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getBufferLengthApi"].apply(null,arguments)};var _getExtensionInfo=Module["_getExtensionInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getExtensionInfo"].apply(null,arguments)};var _getMediaInfo=Module["_getMediaInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getMediaInfo"].apply(null,arguments)};var _getPPS=Module["_getPPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPS"].apply(null,arguments)};var _getPPSLen=Module["_getPPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPSLen"].apply(null,arguments)};var _getPacket=Module["_getPacket"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPacket"].apply(null,arguments)};var _getSEI=Module["_getSEI"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEI"].apply(null,arguments)};var _getSEILen=Module["_getSEILen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEILen"].apply(null,arguments)};var _getSPS=Module["_getSPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPS"].apply(null,arguments)};var _getSPSLen=Module["_getSPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPSLen"].apply(null,arguments)};var _getSniffHttpFlvPkg=Module["_getSniffHttpFlvPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkg"].apply(null,arguments)};var _getSniffHttpFlvPkgNoCheckProbe=Module["_getSniffHttpFlvPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null,arguments)};var _getSniffStreamPkg=Module["_getSniffStreamPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkg"].apply(null,arguments)};var _getSniffStreamPkgNoCheckProbe=Module["_getSniffStreamPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null,arguments)};var _getVLC=Module["_getVLC"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLC"].apply(null,arguments)};var _getVLCLen=Module["_getVLCLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLCLen"].apply(null,arguments)};var _getVPS=Module["_getVPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPS"].apply(null,arguments)};var _getVPSLen=Module["_getVPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPSLen"].apply(null,arguments)};var _getVideoCodecID=Module["_getVideoCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVideoCodecID"].apply(null,arguments)};var _initMissile=Module["_initMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initMissile"].apply(null,arguments)};var _initTsMissile=Module["_initTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initTsMissile"].apply(null,arguments)};var _initializeDecoder=Module["_initializeDecoder"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDecoder"].apply(null,arguments)};var _initializeDemuxer=Module["_initializeDemuxer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDemuxer"].apply(null,arguments)};var _initializeSniffHttpFlvModule=Module["_initializeSniffHttpFlvModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null,arguments)};var _initializeSniffHttpFlvModuleWithAOpt=Module["_initializeSniffHttpFlvModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null,arguments)};var _initializeSniffStreamModule=Module["_initializeSniffStreamModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModule"].apply(null,arguments)};var _initializeSniffStreamModuleWithAOpt=Module["_initializeSniffStreamModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null,arguments)};var _main=Module["_main"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_main"].apply(null,arguments)};var _malloc=Module["_malloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_malloc"].apply(null,arguments)};var _pushSniffHttpFlvData=Module["_pushSniffHttpFlvData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffHttpFlvData"].apply(null,arguments)};var _pushSniffStreamData=Module["_pushSniffStreamData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffStreamData"].apply(null,arguments)};var _registerPlayer=Module["_registerPlayer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_registerPlayer"].apply(null,arguments)};var _release=Module["_release"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_release"].apply(null,arguments)};var _releaseHttpFLV=Module["_releaseHttpFLV"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseHttpFLV"].apply(null,arguments)};var _releaseSniffHttpFlv=Module["_releaseSniffHttpFlv"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffHttpFlv"].apply(null,arguments)};var _releaseSniffStream=Module["_releaseSniffStream"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffStream"].apply(null,arguments)};var _setCodecType=Module["_setCodecType"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_setCodecType"].apply(null,arguments)};var establishStackSpace=Module["establishStackSpace"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["establishStackSpace"].apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackAlloc"].apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackRestore"].apply(null,arguments)};var stackSave=Module["stackSave"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackSave"].apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_v"].apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_vi"].apply(null,arguments)};Module["asm"]=asm;if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromString"))Module["intArrayFromString"]=function(){abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=function(){abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["ccall"]=ccall;Module["cwrap"]=cwrap;if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=function(){abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=function(){abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=function(){abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getMemory"))Module["getMemory"]=function(){abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=function(){abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=function(){abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=function(){abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=function(){abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=function(){abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=function(){abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=function(){abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=function(){abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=function(){abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=function(){abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=function(){abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=function(){abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=function(){abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=function(){abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=function(){abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=function(){abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=function(){abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=function(){abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=function(){abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=function(){abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=function(){abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=function(){abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=function(){abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=function(){abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=function(){abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=function(){abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS"))Module["FS"]=function(){abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=function(){abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=function(){abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=function(){abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=function(){abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=function(){abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=function(){abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=function(){abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=function(){abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=function(){abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynamicAlloc"))Module["dynamicAlloc"]=function(){abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadDynamicLibrary"))Module["loadDynamicLibrary"]=function(){abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadWebAssemblyModule"))Module["loadWebAssemblyModule"]=function(){abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=function(){abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=function(){abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=function(){abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=function(){abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["addFunction"]=addFunction;Module["removeFunction"]=removeFunction;if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=function(){abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=function(){abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"makeBigInt"))Module["makeBigInt"]=function(){abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=function(){abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=function(){abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=function(){abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=function(){abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=function(){abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"establishStackSpace"))Module["establishStackSpace"]=function(){abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=function(){abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=function(){abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=function(){abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=function(){abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=function(){abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=function(){abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Pointer_stringify"))Module["Pointer_stringify"]=function(){abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=function(){abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_DYNAMIC"))Object.defineProperty(Module,"ALLOC_DYNAMIC",{configurable:true,get:function(){abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NONE"))Object.defineProperty(Module,"ALLOC_NONE",{configurable:true,get:function(){abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"calledRun"))Object.defineProperty(Module,"calledRun",{configurable:true,get:function(){abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){assert(runDependencies==0,'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])');assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=Module["_main"](argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}writeStackCookie();preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var print=out;var printErr=err;var has=false;out=err=function(x){has=true};try{var flush=Module["_fflush"];if(flush)flush(0);["stdout","stderr"].forEach(function(name){var info=FS.analyzePath("/dev/"+name);if(!info)return;var stream=info.object;var rdev=stream.rdev;var tty=TTY.ttys[rdev];if(tty&&tty.output&&tty.output.length){has=true}})}catch(e){}out=print;err=printErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.")}}function exit(status,implicit){checkUnflushedContent();if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){if(!implicit){err("exit("+status+") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)")}}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run(); diff --git a/vite_vue_ts/public/dist/missile-512mb-v20220421.wasm b/vite_vue_ts/public/dist/missile-512mb-v20220421.wasm deleted file mode 100644 index 2cbaf787f31a9319e38ecc05755654f9b3e7f727..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1859589 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 z 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

    Ebrx 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

    FRfJ62R^7z%573+K`ATN-DNrASD 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 #^uce<|OYf?sch=H7YUyXy(wEiJ z&#a}NQA>YcExo;#etIo^X)S$8ExoOlep)U4)LQ!DT6(FP{z{tkj>SjeW)ryCyV8of z@vc<*#w5QR&EO2z6|Pv}^1HaomFg{ARen4*CvCB>2*VNRcJa#m<@ z8O_2d=J>)%>xSJ(u0e>zazmfZ`g?I3knwevpgZ~EE3`fE|G3py=ydRPd02nw=RP7P zmpd@YWn8Y6wQS$$v#2R|1NX#_U>8&xOm)86|i zf98(ljS1I}kQS$}3~~Nax{BkM0`-KhU*!QlXN#OUa`LzPX!1O4vzFOYs$f9+$+h&8YU!=DbW}?}Z}6F=whqiT8-<)aK9B@3EeX@4^XH=SdtajN=&s1#8?T>Fu1?MHCq zSnERG2Ya1~qY5&YKHdIa3J)+6Vx{RsYtYt@3M;#!Yz0@hlO zoVE5N8`ge=&=PBX2>y1hM{opO>k*86YdwOy&RUQ3*M3Cy+cg%++}e-Gr+AH8v@>Ik zM4>l$s5d&L@$K*QI1BwqUwSc%ita=~d3*g^k zm*4L`tD}}N%_xhp)!jHs;UT|zZ+{pYa~+Gh242NnC(c|;YDZ9qs|I#-K^u^@jkz{o zHu3MyU}F%s+TJ!>tqr(ctG3ixbr{@nO*F2XZ``ksbKB3i>{k>3LDy8=>H{$quX^!R zoa)6>@u?S2#id?66_0xHR2=HXQ}L%4PsN>HJQZ(J{F!#LaI7nltc6In$^oP$cZVd| z&HNs>XrzPxlA4YMr3h;8hz+Vzz2|TK<=)^{Inr?d>3^Cl@Bgm22XgW(|GjS@%i${} zh0da#lFQAO;as{Kdp6edIdkqrz#67xneEuKEC7Jw%-~scdpg4NQtp@}ZcCBuIu}QS z(YodA)yvsymXWNE;-p9NHABMO>-izdrD4MVfU+RzI@|~GpukOUW8NOz5#x6ka<$z6 zU(c*(Zn=7!4-h{=AJ|a+z}Xqe*9hee z)>y9?w=|;N$OTP$tI!%SYf(>h69Gd8*}9i(9u9a2_scwa#R>9o1|*Mwj4U?XJm<}G zKt3sEM4!D%E>6Tq!Rnh?LT(^<9w*sgd1Ym#buHKU)zrhF52U572k3Kr{1LnGuB2*8sE3L#MO?EpU#o0P7WQQyVJ`> zPCV_7LHu(0Xc~YFv6Bu82A#I$`p9dU9PN9KbIE4aw z;S~Dkg;S`X7fzvlUO0vFdEpeg=Y>uk8kf8mH77d0+$FKS%gUevg_y{K_%dr{-U_M*mR?M01?+KU>O zv==olXfJA9&R*2Gn7ycRDSJ`lLiVD@W$ZWc8ka0Z1V9?CrnZB56*MeYFKAe-UeK^qy`W*CdO^c7rJzCZl$X*I zU+^4^1FZeB+&Oz&2jcfNQ*<0n>Ov1D^4M1}x(R4LHUN8Ze9(G~gF6XuvLB z(12UKpaHXZK?7d#f(ESO1r0dG3mPzr7c}4#FKECfUeJI`yr2P-ctHam@qz{{;sp&j z#0wfQh!-^A4=-rI9$wIZJG`I)b9g}m-k@MAnO~Sr=B=m!b7ZpvD{8g;x|cEWM(rVeu734a=`6YFL0pQNt1}iW(MSQPi*ui=u{wSQIrZ#iFQT zF&0G)%dseGSdc|g!;&nD8Wv?y)UYgzqK1W86g4c(qNrhU7DWxqvnXmpkWbuLBkUCf`$d?1r5v33mO)m7c?wAFKAeJUeK`Yyr5yxc|pUH z^MZy2=LHSRje-Ui6&J;S0W4~N%%W~|7IhA+f$vVdwIy`WfI{f*ISq2cV4&<_U3~ED zRmj7$SD_BiUWGV3dllO7>{Up^vsa-EvhQrgeQl6vH`y=HP%GFO8$##yk1!Y57Ktdo zjg+FS+HQjU9#RT@;;H*d&4pBK@5#J0YN5k#4SrVUu8K|^*Q<2Te*CRQ+C|D1e3aw3 ziDDTUCisV97&bq$*uL1GQV+3y^gN!Wr>o5C#4{w+s8-KE7B!-ymzP+atLF${(Fip^ z{qVjfuK)Ko#+dZ7#5-(;A9Fnm9mc0lZNw}$XO3#g?qqkSvD<@+USscjU^NQVZ^Mrt zUZy^fwh2%=-lHW3lwNsI6VjFs8CyG;!$JP8hvp!5H(BO2+V3HI$9w<#oZ8>cf9D}? zv@`N|uraV{V37vscj+&t64QJbM*A@$6O9#Isk? z63<>mNj!TM9r5f{RK&Aa(GbsGML|4!75(t+Rn)_?SJ4j7UPU=PdllXA>{V35vscj! z&t63_JbM+r@a$F8!n0S=3eR3eDLi`>o$%~c_>}C8tFY-{y)tXKl+6D{TOhGtDda*l zxLcMr@Bz@Rm{#nj0sIBtv=s9i0b2y(an9cK2Qi^7C3mww8q?Xu$zW&li2UYHVT#XJ ze&fT@-~)nszF9-m-jEua_RJcR_RJcJ_RJcB_RJc3_RQLv^UT_c^UT_M^UT_6BlFd5 zKeI&!>s34AG?0uFW7)EC0|h1dyMqN&Ui{i8@ID5{A`cj*(GGKhAEnw2z&Pu|-Z@<` zb?UO{m&`B3Oi|``zwBbe0Jc^CJGK)W@MKz>4anv(K0NC1CYDxhJV-OY_{M{jjR!gw zM&>p(NB+7P-V_ffHe>8EvpRTX>@@)p%&F!b09eGL{)v{rL|r0dOP0Qn7(bX-?R7no z62DW822yolq3Hsi(1l^wg&K8P^2>I=?7~p3I=AIAxP#rJbhmBNzz;ggi3c)DmhcOa z$2R*l*paSH88lV#LiO4{g}L!v9ZMMM8TTE0p{u8KpKQ}pIF!(GEWy#JJ>)&FDp5`9 zWp|X|Ty3^wkGrio)?(2B@DuTI+Xug}e|;A^FgOBPn4E>Fvr2}MY5ez0mRv3K+*PFP9c(+;&?A31`EZ$^P06njo$~n_ z-6`{Hq{s9BXA9wA%sPm`m{mb+fkZZfO9-G0m>TME%(69PdN!UVq$#%x5jd36h(a&v zRgJclt*Mc>GQURQ%KRFUEAwk~uFS8Ix-!3pWy<^-qABxhxTegnp&QR%3MUK@b%{}k zhk%(4oPinJn!`xiz|>GvS#b?JmH9OURp!@lRGD8xQ)PY)Q5uk`rN#>%+X5_v?hKhw|ru%4E zeuwSP7Iz2^cjYK2x+E4MO-w@Z58if#qaWWv`1F5qe^INY_zww@RN0f+$ul{da@gPj z!l{xm!wKO?s|QE12`>5b4#D~pFf`6*4iSxZTZ9~OkXUEgf(~Se6`&R;^j`igPF096 ziDn6Xr0ZPXJ$&fUo=nGtLBiRK&KkrST|Tz#@Z@e5=ABK7+|9{p9BJXE{rP|9R8MNH z+~a<#td1V+XxVa&h$ffhH#09Vj+W8q%soBQ8+KqOlKf##@p~ZEIZ{29_e@YgrA8(} zR?@xfJf)5pbs!77uMZ?c`eIw&Ib=+_v6+1KI@&yUor1iw@9R)DN9@%cl+acQ&a2nG zP$aE$HD?7zb{btje`bE3`bkXE-eyD+9Z_efVS2SjCh|Wr2OLNW$ku)y| z0Xv#>ra)dgqzaBu0_{7&tGeD3uJ?uO$HMiK;rd{>J`}EBj?YwxG|_%WvLo1CmuymY z1a=X{DbrdoPb&eDu^3r^wV~@PZ{CrN}1sP=r28?%YV`!ecIjQ?Y=Zy#5f$+mufXI8a)V!P9R? z1}{c#O&Q$iUmIYTG8zAOI=47V#k{AqQllu{JL^pCO&MVA5zue~C-)rPf5J2R+6bB5o>aq&`slZEx*;2vJqS#mS`ES4hbj?UodN&M)wEqz-w$A_%= zhLhRcEo>Da;G=ou9~4?bF;baM+lG)PyAc6HyS%Mgdfka5>>+<8N4!{b+j)QR3nbcQ ztGIIkhZ}E|pKzyE&8HxuRP&wYf7I3{0AaaywV{fVl(p3|-k*co&>@<~$*L!SnsNKH z{!Pm#lB0^N5$`{F?E4kN+**WWWX*$VIhpnC8B|fyzk|yzPIrxZrustZW-&rejOKQt z(rRf3>k&O@0F`96Mh#6(@QIENCRjwzn&1vSiv_|rgV5?(0N+Fw^6sdb#oF2^A$Zu7 znKfljuu1m%U(6Pv3uI?{pjQc9@IcSct+1YBY+}Xcr@9s%cUG)GHvyRP7F>W7VURV> zP)PFGtNHoq{a|oA02V^l2Dv49kC?mJd@paaxr5=<+{8EJ7wWKDW@1TekL$J(qs58U zX0Jho04gPO=$QpmXC0@w>-o+LjEHpr!=Y`uVb+xa820+%lOJ6cOz{HmOLQ|ch6SWkp zmy;8AB)8}*(Fwr~S7H|mP1+ML_RCBCa!07;wYt)~*KwUt!5$9}yhR0Ik?Ol}cc<+UqzvWKdy6XYu8RrrDcoU<3lKm-g+ z5Q0uiV{4ZixsYi=bcibf#t>|9#H=na^9wP{m0I*m=9hhb;V1x={eF1y`B_WT3VKoQ zE-ot>yMpvBphqxItAQTQoz(*`^vgAVxh+(3yRJYF(A1iM9>B?71B&c3KoL7A^8a%zjyF1Q%{*1=#ON@(-l>mVC$H zWQ^8|aH>?-&X4sNSInXekQrpTy&DdXWh}6Q7ZZw)q%Rc6z(7WkZ6b@6kICm$r2Sw4 zh{p5Nl^)$*&F1ugjHl30euWb!q`v}DPRM^n=7a=TWKPI{MdpMQSY%GffkozoBv@ol z$bv=Ygfv)Wo}EznGFkPM3_CuGASbAtUYGUuD>oM6F= zCnuP2%lz#$nIUG5@OxzV-N=maKJf>|0JYJCGN0UU8EWTbR4^FYP-%hHc{DRNDS$!y zMf2LaD>i`_scGLR^-3lYsjOhZvbC~;5estQwyYE?@9b_W@QxhMW`1$|m|<~X7ZfgN zW_jx~kSUP}YkZu4&UTcJI<~bi&L6U*9bp%zphLrth;?H2#E^kl2cxdv^oO%_HA%Jj z=;o{*%2*qGOrXxW&f4(Mo>4(Ko>4(Io>4(GWc>Y7e6iFpeR#3Es=U};6TBD#cgc&vdkO4@8F|p+5!|~V z7pZ+${?U8qGLF)sxZA#@n$PbEcF7<

    avj)6a(Sc`H%3LN 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�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

    2T(ak`T{<$Y?I82* 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 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; + +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} + +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} + +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(35); + +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 35; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} + +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var getTempRet0 = function() { + return tempRet0 +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} + +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 4928, + "element": "anyfunc" +}); +var ABORT = false; +var EXITSTATUS = 0; + +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} + +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} + +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} + +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_NONE = 3; + +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++ >> 0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} + +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; + +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (u8Array[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { + return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) + } else { + var str = ""; + while (idx < endPtr) { + var u0 = u8Array[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + } + return str +} + +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; + +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +var STACK_BASE = 1398016, + STACK_MAX = 6640896, + DYNAMIC_BASE = 6640896, + DYNAMICTOP_PTR = 1397792; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 536870912; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] +} else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE + }) +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; + +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} + +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} + +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +}(function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); + +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} + +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null : callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; + +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} + +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} + +function preMain() { + checkStackCookie(); + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} + +function exitRuntime() { + checkStackCookie(); + runtimeExited = true +} + +function postRun() { + checkStackCookie(); + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} + +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} + +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; + +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +var dataURIPrefix = "data:application/octet-stream;base64,"; + +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-512mb-v20220706.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch (err) { + abort(err) + } +} + +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }).catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} + +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + removeRunDependency("wasm-instantiate") + } + addRunDependency("wasm-instantiate"); + var trueModule = Module; + + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"]) + } + + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}]; + +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +__ATINIT__.push({ + func: function() { + ___emscripten_environ_constructor() + } +}); +var tempDoublePtr = 1398e3; +assert(tempDoublePtr % 8 == 0); + +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} + +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]" + }) +} + +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch (e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} + +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +var ENV = {}; + +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} + +function ___lock() {} + +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !!p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else + while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + }(fromHeap ? HEAP8 : buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + var src = populate ? remote : local; + var dst = populate ? local : remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch (e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== "." && p !== ".." + } + + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor.continue() + } + } catch (e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch (e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch (e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path + } + path = path ? node.name + "/" + path : node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !!node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch (e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch (e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray) + }, onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch (e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 80 >> 2] = tempI64[0], HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; + +function ___syscall221(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: { + return -28 + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall3(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall5(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___unlock() {} + +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} + +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} + +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >> 2] = tempI64[0], HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} + +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} + +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} + +function _abort() { + abort() +} + +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} + +function _emscripten_get_now() { + abort() +} + +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} + +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return -1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} + +function _emscripten_get_heap_size() { + return HEAP8.length +} + +function _emscripten_is_main_browser_thread() { + return !ENVIRONMENT_IS_WORKER +} + +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} + +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined"; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" || !ENVIRONMENT_IS_FETCH_WORKER) addRunDependency("library_fetch_init") + } +}; + +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch (e) { + if (onerror) onerror(fetch, xhr, e) + } +} + +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError : fetchAttrPersistFile ? performCachedXhr : performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess : reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +var _fabs = Math_abs; + +function _getenv(name) { + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} + +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone = (stringToUTF8("GMT", 1397888, 4), 1397888); + +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} + +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} + +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} + +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} + +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} + +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; + +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} + +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} + +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} + +function _usleep(useconds) { + var msec = useconds / 1e3; + if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { + var start = self["performance"]["now"](); + while (self["performance"]["now"]() - start < msec) {} + } else { + var start = Date.now(); + while (Date.now() - start < msec) {} + } + return 0 +} +Module["_usleep"] = _usleep; + +function _nanosleep(rqtp, rmtp) { + if (rqtp === 0) { + ___setErrNo(28); + return -1 + } + var seconds = HEAP32[rqtp >> 2]; + var nanoseconds = HEAP32[rqtp + 4 >> 2]; + if (nanoseconds < 0 || nanoseconds > 999999999 || seconds < 0) { + ___setErrNo(28); + return -1 + } + if (rmtp !== 0) { + HEAP32[rmtp >> 2] = 0; + HEAP32[rmtp + 4 >> 2] = 0 + } + return _usleep(seconds * 1e6 + nanoseconds / 1e3) +} + +function _pthread_cond_destroy() { + return 0 +} + +function _pthread_cond_init() { + return 0 +} + +function _pthread_create() { + return 6 +} + +function _pthread_join() {} + +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} + +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} + +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} + +function _sysconf(name) { + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return -1 +} + +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +Fetch.staticInit(); + +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2919", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "_context_to_name_6206", "_resample_flush", "___stdio_close", "___emscripten_stdout_close", "_releaseSniffStreamFunc", "_naluLListLengthFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_g711_releaseFunc", "_g711_decodeVideoFrameFunc", "_g711_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_g711_initFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare"]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "_set_compensation", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_g711_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_g711_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "_pushBufferFunc", "_g711_setSniffStreamCodecTypeFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", "_resample_common_int16", "_resample_linear_int16", "_resample_common_int32", "_resample_linear_int32", "_resample_common_float", "_resample_linear_float", "_resample_common_double", "_resample_linear_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_multiple_resample", "_invert_initial_buffer", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiidiiddii = [0, "jsCall_iiiiiiidiiddii_0", "jsCall_iiiiiiidiiddii_1", "jsCall_iiiiiiidiiddii_2", "jsCall_iiiiiiidiiddii_3", "jsCall_iiiiiiidiiddii_4", "jsCall_iiiiiiidiiddii_5", "jsCall_iiiiiiidiiddii_6", "jsCall_iiiiiiidiiddii_7", "jsCall_iiiiiiidiiddii_8", "jsCall_iiiiiiidiiddii_9", "jsCall_iiiiiiidiiddii_10", "jsCall_iiiiiiidiiddii_11", "jsCall_iiiiiiidiiddii_12", "jsCall_iiiiiiidiiddii_13", "jsCall_iiiiiiidiiddii_14", "jsCall_iiiiiiidiiddii_15", "jsCall_iiiiiiidiiddii_16", "jsCall_iiiiiiidiiddii_17", "jsCall_iiiiiiidiiddii_18", "jsCall_iiiiiiidiiddii_19", "jsCall_iiiiiiidiiddii_20", "jsCall_iiiiiiidiiddii_21", "jsCall_iiiiiiidiiddii_22", "jsCall_iiiiiiidiiddii_23", "jsCall_iiiiiiidiiddii_24", "jsCall_iiiiiiidiiddii_25", "jsCall_iiiiiiidiiddii_26", "jsCall_iiiiiiidiiddii_27", "jsCall_iiiiiiidiiddii_28", "jsCall_iiiiiiidiiddii_29", "jsCall_iiiiiiidiiddii_30", "jsCall_iiiiiiidiiddii_31", "jsCall_iiiiiiidiiddii_32", "jsCall_iiiiiiidiiddii_33", "jsCall_iiiiiiidiiddii_34", "_resample_init", 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]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", 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]; +var debug_table_jii = [0, "jsCall_jii_0", "jsCall_jii_1", "jsCall_jii_2", "jsCall_jii_3", "jsCall_jii_4", "jsCall_jii_5", "jsCall_jii_6", "jsCall_jii_7", "jsCall_jii_8", "jsCall_jii_9", "jsCall_jii_10", "jsCall_jii_11", "jsCall_jii_12", "jsCall_jii_13", "jsCall_jii_14", "jsCall_jii_15", "jsCall_jii_16", "jsCall_jii_17", "jsCall_jii_18", "jsCall_jii_19", "jsCall_jii_20", "jsCall_jii_21", "jsCall_jii_22", "jsCall_jii_23", "jsCall_jii_24", "jsCall_jii_25", "jsCall_jii_26", "jsCall_jii_27", "jsCall_jii_28", "jsCall_jii_29", "jsCall_jii_30", "jsCall_jii_31", "jsCall_jii_32", "jsCall_jii_33", "jsCall_jii_34", "_get_out_samples", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "_io_read_seek", 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]; +var debug_table_jij = [0, "jsCall_jij_0", "jsCall_jij_1", "jsCall_jij_2", "jsCall_jij_3", "jsCall_jij_4", "jsCall_jij_5", "jsCall_jij_6", "jsCall_jij_7", "jsCall_jij_8", "jsCall_jij_9", "jsCall_jij_10", "jsCall_jij_11", "jsCall_jij_12", "jsCall_jij_13", "jsCall_jij_14", "jsCall_jij_15", "jsCall_jij_16", "jsCall_jij_17", "jsCall_jij_18", "jsCall_jij_19", "jsCall_jij_20", "jsCall_jij_21", "jsCall_jij_22", "jsCall_jij_23", "jsCall_jij_24", "jsCall_jij_25", "jsCall_jij_26", "jsCall_jij_27", "jsCall_jij_28", "jsCall_jij_29", "jsCall_jij_30", "jsCall_jij_31", "jsCall_jij_32", "jsCall_jij_33", "jsCall_jij_34", "_get_delay", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", 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]; +var debug_table_vdiidiiiiii = [0, "jsCall_vdiidiiiiii_0", "jsCall_vdiidiiiiii_1", "jsCall_vdiidiiiiii_2", "jsCall_vdiidiiiiii_3", "jsCall_vdiidiiiiii_4", "jsCall_vdiidiiiiii_5", "jsCall_vdiidiiiiii_6", "jsCall_vdiidiiiiii_7", "jsCall_vdiidiiiiii_8", "jsCall_vdiidiiiiii_9", "jsCall_vdiidiiiiii_10", "jsCall_vdiidiiiiii_11", "jsCall_vdiidiiiiii_12", "jsCall_vdiidiiiiii_13", "jsCall_vdiidiiiiii_14", "jsCall_vdiidiiiiii_15", "jsCall_vdiidiiiiii_16", "jsCall_vdiidiiiiii_17", "jsCall_vdiidiiiiii_18", "jsCall_vdiidiiiiii_19", "jsCall_vdiidiiiiii_20", "jsCall_vdiidiiiiii_21", "jsCall_vdiidiiiiii_22", "jsCall_vdiidiiiiii_23", "jsCall_vdiidiiiiii_24", "jsCall_vdiidiiiiii_25", "jsCall_vdiidiiiiii_26", "jsCall_vdiidiiiiii_27", "jsCall_vdiidiiiiii_28", "jsCall_vdiidiiiiii_29", "jsCall_vdiidiiiiii_30", "jsCall_vdiidiiiiii_31", "jsCall_vdiidiiiiii_32", "jsCall_vdiidiiiiii_33", "jsCall_vdiidiiiiii_34", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3923", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_resample_free", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", 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, 0, 0, 0, 0]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", "_cpy1", "_cpy2", "_cpy4", "_cpy8", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiid = [0, "jsCall_viiid_0", "jsCall_viiid_1", "jsCall_viiid_2", "jsCall_viiid_3", "jsCall_viiid_4", "jsCall_viiid_5", "jsCall_viiid_6", "jsCall_viiid_7", "jsCall_viiid_8", "jsCall_viiid_9", "jsCall_viiid_10", "jsCall_viiid_11", "jsCall_viiid_12", "jsCall_viiid_13", "jsCall_viiid_14", "jsCall_viiid_15", "jsCall_viiid_16", "jsCall_viiid_17", "jsCall_viiid_18", "jsCall_viiid_19", "jsCall_viiid_20", "jsCall_viiid_21", "jsCall_viiid_22", "jsCall_viiid_23", "jsCall_viiid_24", "jsCall_viiid_25", "jsCall_viiid_26", "jsCall_viiid_27", "jsCall_viiid_28", "jsCall_viiid_29", "jsCall_viiid_30", "jsCall_viiid_31", "jsCall_viiid_32", "jsCall_viiid_33", "jsCall_viiid_34", 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]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", "_mix6to2_s16", "_mix8to2_s16", "_mix6to2_clip_s16", "_mix8to2_clip_s16", "_mix6to2_float", "_mix8to2_float", "_mix6to2_double", "_mix8to2_double", "_mix6to2_s32", "_mix8to2_s32", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S64", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", "_copy_s16", "_copy_clip_s16", "_copy_float", "_copy_double", "_copy_s32", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", 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]; +var debug_table_viiiiiddi = [0, "jsCall_viiiiiddi_0", "jsCall_viiiiiddi_1", "jsCall_viiiiiddi_2", "jsCall_viiiiiddi_3", "jsCall_viiiiiddi_4", "jsCall_viiiiiddi_5", "jsCall_viiiiiddi_6", "jsCall_viiiiiddi_7", "jsCall_viiiiiddi_8", "jsCall_viiiiiddi_9", "jsCall_viiiiiddi_10", "jsCall_viiiiiddi_11", "jsCall_viiiiiddi_12", "jsCall_viiiiiddi_13", "jsCall_viiiiiddi_14", "jsCall_viiiiiddi_15", "jsCall_viiiiiddi_16", "jsCall_viiiiiddi_17", "jsCall_viiiiiddi_18", "jsCall_viiiiiddi_19", "jsCall_viiiiiddi_20", "jsCall_viiiiiddi_21", "jsCall_viiiiiddi_22", "jsCall_viiiiiddi_23", "jsCall_viiiiiddi_24", "jsCall_viiiiiddi_25", "jsCall_viiiiiddi_26", "jsCall_viiiiiddi_27", "jsCall_viiiiiddi_28", "jsCall_viiiiiddi_29", "jsCall_viiiiiddi_30", "jsCall_viiiiiddi_31", "jsCall_viiiiiddi_32", "jsCall_viiiiiddi_33", "jsCall_viiiiiddi_34", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", "_sum2_s16", "_sum2_clip_s16", "_sum2_float", "_sum2_double", "_sum2_s32", 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, 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, 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]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8"]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8"]; +var debug_table_viiijj = [0, "jsCall_viiijj_0", "jsCall_viiijj_1", "jsCall_viiijj_2", "jsCall_viiijj_3", "jsCall_viiijj_4", "jsCall_viiijj_5", "jsCall_viiijj_6", "jsCall_viiijj_7", "jsCall_viiijj_8", "jsCall_viiijj_9", "jsCall_viiijj_10", "jsCall_viiijj_11", "jsCall_viiijj_12", "jsCall_viiijj_13", "jsCall_viiijj_14", "jsCall_viiijj_15", "jsCall_viiijj_16", "jsCall_viiijj_17", "jsCall_viiijj_18", "jsCall_viiijj_19", "jsCall_viiijj_20", "jsCall_viiijj_21", "jsCall_viiijj_22", "jsCall_viiijj_23", "jsCall_viiijj_24", "jsCall_viiijj_25", "jsCall_viiijj_26", "jsCall_viiijj_27", "jsCall_viiijj_28", "jsCall_viiijj_29", "jsCall_viiijj_30", "jsCall_viiijj_31", "jsCall_viiijj_32", "jsCall_viiijj_33", "jsCall_viiijj_34", "_resample_one_int16", "_resample_one_int32", "_resample_one_float", "_resample_one_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiidiiddii": debug_table_iiiiiiidiiddii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jii": debug_table_jii, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jij": debug_table_jij, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vdiidiiiiii": debug_table_vdiidiiiiii, + "vi": debug_table_vi, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiid": debug_table_viiid, + "viiii": debug_table_viiii, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiiddi": debug_table_viiiiiddi, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii, + "viiijj": debug_table_viiijj +}; + +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} + +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} + +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} + +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} + +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} + +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} + +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} + +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} + +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} + +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} + +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} + +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} + +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} + +function nullFunc_iiiiiiidiiddii(x) { + abortFnPtrError(x, "iiiiiiidiiddii") +} + +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} + +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} + +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} + +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} + +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} + +function nullFunc_jii(x) { + abortFnPtrError(x, "jii") +} + +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} + +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} + +function nullFunc_jij(x) { + abortFnPtrError(x, "jij") +} + +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} + +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} + +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} + +function nullFunc_vdiidiiiiii(x) { + abortFnPtrError(x, "vdiidiiiiii") +} + +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} + +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} + +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} + +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} + +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} + +function nullFunc_viiid(x) { + abortFnPtrError(x, "viiid") +} + +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} + +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} + +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} + +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} + +function nullFunc_viiiiiddi(x) { + abortFnPtrError(x, "viiiiiddi") +} + +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} + +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} + +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} + +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} + +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} + +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} + +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} + +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} + +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} + +function nullFunc_viiijj(x) { + abortFnPtrError(x, "viiijj") +} + +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iiiiiiidiiddii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) +} + +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_jii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jij(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_v(index) { + functionPointers[index]() +} + +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_vdiidiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} + +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} + +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} + +function jsCall_viiid(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiddi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} + +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} + +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} + +function jsCall_viiijj(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___buildEnvironment": ___buildEnvironment, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_nanosleep": _nanosleep, + "_pthread_cond_destroy": _pthread_cond_destroy, + "_pthread_cond_init": _pthread_cond_init, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiidiiddii": jsCall_iiiiiiidiiddii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jii": jsCall_jii, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jij": jsCall_jij, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vdiidiiiiii": jsCall_vdiidiiiiii, + "jsCall_vi": jsCall_vi, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiid": jsCall_viiid, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiiddi": jsCall_viiiiiddi, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "jsCall_viiijj": jsCall_viiijj, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiidiiddii": nullFunc_iiiiiiidiiddii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jii": nullFunc_jii, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jij": nullFunc_jij, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vdiidiiiiii": nullFunc_vdiidiiiiii, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiid": nullFunc_viiid, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiiddi": nullFunc_viiiiiddi, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "nullFunc_viiijj": nullFunc_viiijj, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffHttpG711Init = Module["_AVSniffHttpG711Init"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpG711Init"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeG711Frame = Module["_decodeG711Frame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeG711Frame"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getG711BufferLengthApi = Module["_getG711BufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getG711BufferLengthApi"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffG711Module = Module["_initializeSniffG711Module"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffG711Module"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _naluLListLength = Module["_naluLListLength"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_naluLListLength"].apply(null, arguments) +}; +var _pushSniffG711FlvData = Module["_pushSniffG711FlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffG711FlvData"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseG711 = Module["_releaseG711"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseG711"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "establishStackSpace")) Module["establishStackSpace"] = function() { + abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +var calledRun; + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; + +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch (e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} + +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; + +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} + +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +noExitRuntime = true; +run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-512mb-v20220706.wasm b/vite_vue_ts/public/dist/missile-512mb-v20220706.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1cbd39909ba0ad0bf719fd538f22e1ab4e8b3823 GIT binary patch literal 2108180 zcmcG%33waFkuW*~fWQDV0A_FufWb90I0%3MHre$$yLtQG8crP9PBzJ|lkD4<|NXRL z(T)yF7DX#|o@|j6MM~6t-}fz1_kC0MeUrK+k~*mSrfyOEt9t-~l4bw@?)(0xIa6I- z-CbQ(UDaJ<(?t6opOXYZkahY2~0lX{oeB0WHnfvxzAnW}xtRX!{>vRaiWadHdHq!#!x)#)sSv-JP zD#XX8wmlIE-3EcFz5yhb>o>~!zClz-mfvKCLlk5$vKL^{Q{B54dKs00kbK}5^N!Yp z)bj1O1PC095aW?9(1_oniBMl8K4mDt;wpaQR;;#6-wgZNSz4C}V`jw<6$6?O_rt4f ztw0U&gw%yi2DFz}c^io#ou)^_mXH}4^~y>Zh_d2CO=%gVMM`{ZPD7a&@iBop%hc1x z`z=TV*@y~_fh_|oAK6N)=_m${@t6Uy4=B(HDHh}lvO=^PFfWA7FpMiOx?-%TQ)UK0 z!TJG{?u%5Vw4X{q7Sdbbf9W>DQ5 z+Z2`o%<(PS(b&Ae@}M_t8^i~)7c>~EDom;24OJwvUU>OvMvY%2)Jc#d935Z@r3!5FG<&{GZL0|ogF z!UN_TL;{QXMtLAI)TE4nxI_*FuPp7pS~m(i*j8Lmgv_8#uc8&&Y=1CboS@w4__y5y(XY$g8%TAA%ljl_GX$@+#S!i!og z-)$iRsDb-V1L1#ThYlTypTDs~2jXW4&%Qno;X`QiYiL4z1M#OFiFXm&^eQpo`7Uh- z;3M_jfje{{-a%O7DKGXsORIud{1whPkVTWv`?z*>mEYfAzc;%^ZmGb#|oP@QSB z(b9X;))s}9fr=vGH#C8Ev8S9IzVf?GkCymTHAG|tD*oK`} z%lIxktxd}4*%c$9;Bm4}5LVi$Q>XM8ZPALRFm-kSWMUYVWe#fx<6d8ON7x##^+$@s zsMjRXiqB5fsbeRFG%K7=!0UI01f)Wj^|x4m>E2nUFcu!^6*yXzlx{#$gWuOD1^1g- zN0t*nW^|fG0w)=sv%Dbh-6_or-#X71qW+3wGqwft3N6MKg6(%JEKo$I z&;RW6wu9#6f7<>}Jrq-Pu$~ebDt&%{*DA93onn0A%fVxiUl7${b$PNWA(1@6Tj4>H8g)WV3M9$%BmqC9#$Wh3sUdmI zzuW$!lI%}@*^m591=*ME>`{~42V83*yAeFkX*2}ahZOh%lH@o($`L&2)_ma6Z~_b_ z5JWp37eeASn*aWLO(%}vctK65qXZ#nR4@(iCSgwg*Z&Wp`Q{srFjz|NZZO&~PN7b`u&W3DcI4QILS%5qJ%!A=RI$$xlB33Q1)L zZb8YQJWwB}R{c&?Yb8I38di(6Eqp*ogj>Qtg5(Aw9e6>WQ2BsQHNk6CY92`cB=9Po z0H!HvJW%XVV8Nu|e-DJO((v%35eT1%q#fK!_m$>x(5T50kXZsEOF(7`+Ic)~w+DXQ9uhs2-y9Mk z40=2&c#}xV_8;Nr_dXON+^kWI5fnfoEuiA@SdqGvLSz7shrn7y^`s}+T3!cbEL%@T z#$In040tl)_WQpNR79`W>pk$BE^Wbf3XX;1K@X*T2NY59;Aa}luH!!gk^dRu3~eOh ziL{pQf=KS}tZv$ZZ4}cM{bu6-EY^UFM|q*Ahin4_Xi|zN{f5`8pgUdo4B&Q)S^>68kCih!T^!DT^=rEuYt7kUa=@Xgq4 zdm6G@txggi>7vO1R;$LE$P_*UBoag`Xd`T`r45+IIUEix{C=mXNrd__E*j;9o^3$# z$3J$Zi;w|cc{?*jlL4Gg5`h+6IOT<&WEQkoa(!rcGLJN{Zxx2@~mP*krJwNl`V z+JC0}W0qKz1^-(XbY{UU1P7w;Et(uAN@dqQ^E52I-nIe%HC=h4^Y7}fX>;j}5buj8x zFn#LLq~Gv@Lsg~-89=Yn@tMHf_AO;ABm!|@)?@-S%W_#T3vt;9-3qnAaioHUz{+KU z>-W9W0oT$Rc;5hIBW4@O(I)6(5C=s~HZ-=0l5N1&An9m@Oqwi6Dj)MX3u zf(JX25JjlZZC(Dk1s0{|w zfr`imtT%xIkqufu0OGg>7t>5>3&LeHQwX6oQW33?@w*@dDTJMk17?ws9{8V^S0bac-7D2}1;S@KM3UK1*#^uY zzY{6Hi@>3?-46s%Xv)UR?}Z?aIq zLdX#kyr7c^Ugv|<4#Ge-5j|BTBx*8?Nxzj_A54ksFao@lCkoPNsyE_Dh*SzC0k0n< z%@DSsLo(zg$QJ6-&L8C?g*I0VB#U%l;VBN%SZ*EsXjDL=wg{30v?^$a>=X&o{p3bErgBeB8=}*vvZ{wn0d!pau+L1AiqQht?<%U_@#S z2noarX+;5y7e1|^3KA|DGC@)lsa9*jWuo8A2BJXk>5{QM;5>ZLn+8UwVbLq znJS)NOVIc|N=@q)8GdHXPyOMet{p%9^!=iuFMiRb=LhJk-dv}xExO%Le*9yMAIe%X z_>YRe#I-u_M=% zkG>$}!`HYj9Y6bX5iux(LElaO+O2B=F)$at2_TxHzjkd8U*3k~(#m(bKXmL+(2Y2n zu;zCt_@rBhf}g?fCqL`fwW#2$BBCnErqPJ`UlgLA#~EiDmtHF#L20|dap|@;$mcFS zAV2@|t9QG7Ma+pY`2}BfEc%y@J$iKPQa~)$nQ;AgJu;YedAj^hKkf2mk3SPba^PDJ z`qnXmWD)bJFFSPXh8g_e=fw7i72)3f^3zWX3V&75^|PWsr@rV&%(HO_{oYsbMW_cz z2R?FiBNj#-2#FT)I{gkK{+#(Q1syuJ$F%38_`B$DfBO-!NH(Bu0K)jhgn&|muU7Eg zu_A)WK6>v1;;@Jt07PV)C8YuSR|J&?rT?8EX1J}H{I>IF#73(hP4XK0*WG^h=Ymf< z|F*E(p9+Y>7E3FMVlk-WKDY0?*jM^B3Ye8Y{OV`K;9SfKfQZMnxk>}@SQAnj6du=y zv7oW`GJ?JzVenV#jDq^>O}L&_*}%93V>-6)0^hxUj_s(BXimP01q&!BBp$|uHne!v zNG<=;t;3gK4%5xv*IUz8mL@pMhklUY-#daC{N{@y;(^`sI-w%E^g#W5!5?aG9cQvP z2Y>t{o)~lhbb&8(#4Iq!uI;;g`Kw=b>`|nc9x>Df-|xX_TUP{L;OFg&+7ru7Z5q;x z!3~4$wrmfDH;iB9G3OT+d#Q0O?nDYT?*i99&t0yWMCvX;tGw(aT^}} zSAQTLv9=7VtyvLU9oARy%A`b-&zRq%pa|>xcVB-|K#ZsK9lq|W{Cjf5L%*T5(vc|k zTjAR*d|T`YOGO`WKl-BmC$NoW1O9NE!t!ZJGPw3{>CdUk+aiUkq=~t~3Lgv~2=5Q?3-1l@3GWW?3hxYW4{r-^4Q~lohc|~eh5I_ooPC_7 z&Jt&_v&He!(d>BPc+;CiXTyty; zZwRjquL-XXuL`dWuLv&>FAFaXF9|OSFAP_O7lh}B=Y{8n=Y(g6XN6~kr-!G7r-rA5 zCx<76Cx$14$A`y;$Am|RuR5+c8XcD%mmC)z7aR?adPkk(yyKkXtmBO1wBwZHq~nC+ zxTDrl<2dFx>Nw&!>^S5&=s4im?-&&x86FWH9v&7R8XgiJ93B)N7#wmG&qsvVmhn;aV*8yxE$>l|wxYaFW_D;+Bw%N@%cOC3ubiyey`_e1wWcSCnV zw?nr=H$yi<*F)DrS3_4qjiJk-OQDOQ3!#QkeW)&UK6Ea0HgqO*I&>;@GISzzJX9Mx z7CIU_5;`0@6uK5!=%{imaLjkibIf(jam;qia?Etha7=ehb4+ziaZGkha!hngaEy11 zbBuM2ag271a*TA0a13`G3>^sV5A6%>4ebf-4($r<4DASQ4{Zx=4Q&Zkhc<^cg*JvZ zgw}`Fh1Q1FgjR=Eg;s`EgqDYvg_eevgcgSug%*aYLdWuU=dI1FiHyqI6WJD76PXZc z$erLik$X72BfKs=GdwOdI8>@R?%D5|@0sd(D_T>Q^Uc zC8sB+CiiKc=UvTf%)69VpLafQY2M=f-N9YKoxvT! z?ZIuqt-&q9>fq+!rr_qh33;0$vt5hBWuYyeQJ#ADY~i%)jOCbhRdQx>TJn0{mAu{h zoz!4zt!{F3X>xpWesWrLb7VWeA-F!cF1R+hCb&AdD!4MZBDg%bG`J+VIJhXdFjy5_ z5S$;J7n~cM9h?=M8JrQE9-J1O8k`cG9Gn!K5F8&I7aSWL6MP=H8)yui2^*S@+rAlvqN4dFO;XtW8{HyiTp^qA=OK@(q3tkv|O4iO_GL7 z719gwp4cd!5f6#m#kJxhafUcn93+;CkNr3O_5ND_K7X};rGLJEs(+Nf(%<5H;JfNO z=R4-x?c3;E=9}xA@l*LJ{A7L-KaronkLSnnWBD=sXnqtw zf*;Ng`&+X6bPwh|akL{1_ z5A99%`}TYGyY@Tw+xA=boAw*_>-KB*tM)7QM*C&^CHqDD1$%?N-d<-vZ$D>0Yd>Q@ zZ9io{X+L2Hcbt8!eT;pyeUyEqeT03ueVBcy zeTaRKeV~1Sz0%&_-p^iPFSqx#m)ZN+OYJ50Vtb42rLEcaRDL2qmLJIvb@F-noP1V3BcGN}$|vOGa;;n=pVrKx z_HmO;2hH2edrUQ^O{O~2b<;yrv3Y=bw0W9&p?Qt@w)U3xruK&Rn)a&pindXES$j!) zQF}q#psmxM*Phd!)t=Fw)}GRy)Sl2D*Vbr{X^(1;Xzy$9Y42+9XkXZ#+n(8;+Md`R z+aB2-+L~++Z1-*VYl?dwoA5)whOifTfME$cHVZ* zcGh;rcG`BzcG7mjcHCBLtFaxk9km^?9g~mBN94ouA^D(uK;AF!llRJdur@+j847+fv&S+hW@y+d^BFZGmmRZLV#OZMJQeZKiF8ZMtomZK`dGZIW%G zZGvsQZJceaZH%q2TqgICOXXs@MS3YUOE0A7(lhC)^hA0rJ(QZH2hx4%o^)5bBi)v6 zNjIhI(lzO-bVX{EE=!lBi_!(DL8_Bh=B!h{P8mZa(!us6$%=*;& z#QNC!$okOQWPM=0Z@p)|YrSK=ZM|i^X}w{+ZoO)~Vr{fuwqCMcv|g|_SnI8;rB%{O zX@#^*S}HA(7E6nyg;JHYK$J!L&+%N7E_lkSO-Qq5Br?^AhCXR|uw@$N8 zwN9~4wobB6v`(;&w~n)pwT`ilwvMunw2rV2vktWmu@1HlvJSKkuvS|8Tl-ndt$nRq z#VumBxLMpJZWK3&>&12A8gaF_N?a+f5SNR~#HHdAak02itP&T9^Tm1MTyc&#Tbw1% z6sL>R#Hr#Gak4l`Jf2%-?PD#qmRO6eEtZ#-X3KNSGs{!U6U$@EBg;celjVWszU8jv zj^(!HmgT19hUL2Dn&qnHie;iWK^!lR6UT_7#Zlr&afCQr93~DGhlqp4f#LwMQtU7G z6D!1Wv9DMr_7O|OVzI^l(%={*$#T(h!O~!< zx71nATh3X|T25O|Sx#C`SdLq2Ej5;7mZO#f69N-f5Ly$uTNfSUP)eYUQ6s{tU2}~_B?i0bvSt@Z$ol@@@C$hyg7LRSWvFGaWsqf{Wq_s9(%;h0a=^dezt_LVzuUjdztg|Nzumvh zztz9RzuCXZztO+Jzuv#jzt+FTzuLdbzrw%Vzs$eXzr?@TzsSGPU*%umpXZd&o6$54ii>J?<`dhr7ky$f24nef4F~`f2e3M(#3qiL2-8xbxgO?ksnPJI$TqPI4!>TCRpW#vSF3 zaEG}=+(GUDx1Za~?csKFySSa)OJB3^h3~oVneVCZiSM!Rk?*1JzVDvzuJ4ZTw(pkj zrtgODy6>9rim%ak*>}lz(Rabu;H&r5`Of>!`p)=H`%d{z`l@ng=Z?=Ekvlp0G;dMf z4RTuwA3&LvJIo+la;7ZT?arxQo>mPQvx7e#k)+qrGrR&EQo zncKu|v&gk;!g6RC{+-PaEIJz>jDzYJW0ymx;$BpI2aHF|V+(>Q& zH=G;B4dsS#gSkQ6KyCn6$@S;@aTQ!S*Ox2f`f#OO30KUuurJwW_657dx7fGHx6oJR zTi~1To9CP3o9&zBo9Ub3o9>(Do9dh5o9vtDo8TMo8|NGA8{-@88|5468{r$~8|oY4 z8|)k88|WM0yA-()dCop#pR!Nb$LvG4iG9G{XYa9h**olQ_7;1Sy}@2*ud!FzD{Lcs znZ3kbWG}D{Y&~1)>+dV~_4Sqc`uIwHCB9-`i}$6s+56o4%=^^)#QWI$$otUS;l1v?=Dq5@;=Sy>{<2_5iz|-N)`__prO!UF=SF2YbQW;H~%8dCz;#dCz!Hdrx^!dQW(d zduzQl-ecaQ-oxHQ-hQv-o4&E-re3^-W}fU-fiBk-Ywp0?`H2N??!J`{BGV| z;j(aA*eNU(W?6<dJKeb%S&RbtSq|U4^cXuAi=4H$XQy zS()scEJ-%1ha?9iE0U!E4NVSA_Dl8wXn1l^vVXD+pk;X@@`mTFjn?O^iC&2{#xBP$ z#deXC)jP>a>NDyc^62QyM?W0H?y1AjqC@0RBJA<9hPGhICQ`pJuBz7V@o*l=IWyi3i*-`9Bb_6?|9mWo3 z2eAX$0c<7PpY6w1u;pxDwhvp%maxTai}|Iw+5E!%-2BY^#QfO&$o$aUWPV`2Z@y=~ zYrbQ?Wxi>?VZLs@X1;2^Vs12FHeWJdG+!_`nCs1T=JV!r=CkHA=F{er<`d@Q<_+HU z-gVx!-ZkFU-c{a}-WA^E-eumU-X-3}-bLPp-YV|`?|kn(?_BR3?`-cZ?@aFu?{x1p z?^N#;?KL*xyF3VeAIlzeAs-*e89ZlywAMXyvMxTyvw}Pyu-ZRyw$wL zTy5TL-elfr-e6vDUT0owUTt1w9_tUrXM?0MvQ=sB%Fr9Y`Zp+By#)z|2c z>5u4dsSm^NA^kyk9?=l0mP*w)yl zScP_DYy&(O#}>sF#^%NPYUjpg!E;<}Y-~(yM68c?cx)Iv`^L&*ePS)qV(rUlGdwp& zH$>M*$3@3PM@O$lu0-l0+tqh-@8sUhy^(u0_e$=i+>5z&x#x3Nnpc>Yo0plFnwOXt zn-`g@%nQu(&GXE2&2!AN&9lri%`?nX%~Q;i&6CU%%@fSy&Ew2t&11}?%p=Vs%)`yY z%tOsX%!AE?%mdAp=Kkh><_dGUxv#m*+{avME-|;5UYeRsFHFx(&rDBEPfU+Zk4#Ob z2d4X`d#1alJEq&FTc(?)8>VZftEMZaM$=`}CDTRI1yh5m-gMq{&UDsv#&p_r%5>6n z!gSnJYdU5+YC2*%Y&v8*XgXlpZ`xS~wA8f3wAi%Bw9r&#T40)QnrE78 znq!)6nq``4I_Npz+2`5o+2h&m+2z^k+2Psl+2+~msrGF4Z1QaMZ1Al2tn;k(tnsY& ztne)NEb}b&Eb%P%Eb=V$RCyM7=6U9N=6I$=CPyYkCPv0b#zn?P#zaO(Mny(OMnr~3 zhD8?V42=wl42}$n42%qbT4khvq+g^w(l=5T=@Ti9lthXnEx9jqn{!{}E;7zAjx`Q4 zmKq;3H<<>emf6c}X2$48>xbwE>nrsY`Z9eVeX+iUdQLr~o=}gdht%=pp5%$--sH*T zzT~Oo{^aT8f#lib!Q{E*q2&4Gkz`%+XtF+eEZLB(NnS|SCg;az#}~xs#23cr#uvrs z#c$<3$UBlZK5uMZQ}llHUi5DCLG(=QbnH~DHa0+86FUaa+tHiR8`100ThU#yov|IU zEwO&u>eyy@UW;CdHbyT;uSS>0mc^FFs$%8Z1+n??ycE3Ld4aZ|7dmZOpxp zJHs^HG|e>CG{rR8G|@D{G~P7MG}bi6G}<)EG}1J}G|V*AG{iL6G{`j2G{978>Tl|2 zDmV2tm6`gON=+rEVpEIprLo!g-1yA+)cC~s*!al!(AZ>rV4Url<(cW3;hFB4=9%J| z?3v`5=$YUd?-}PA>lx!2?HTDA;Ti53<{9c4;u-82JZ(H>JZU^( zJZ`Kt))o@5)=-2Dl>DTJl=vV7k=~wDk=$Gr4 z>6hx4=ojl3=@;s&^b7R!_4D*|^>g&I^|SOd^)vL-_0#lI^;7hd^b_?H^yBs8^dpkX z}RYnmK*yT%Zz=DCB|Z73-gj` zW?nGQnP<#X<_YtNdB`*|519MRJ?1WRhq=w%Vs0?knQP2d<_gouTxKpY7nuu8JyXY= zXU;KanKR63<`i?1IlZnm_5vHW*4)Q*}-gQwlQ0oElf4D ziP^|(VAeD1m=*5j?q%+!?j`QU?nUl}?ke{J_k8y}_gwcJ_iXnp_e}Q;_jLC(_f+>3 z_hk1Z_eA#u_jva>_ZatR_bB&B_XziJ_b~U!=vrnCvzl4OtYnrm%b2Ci5@s>8h*`)~ zF$COj3M2#2+##IG}HI#i~0tAo&K!;rvAGAivF_xk^a8Ekv>eXqi52C z>Boi!!(IJt{XWA=!xTe*!wda0{S*BKeZBs?{*3;H{+hl~e@XvPe@}mg-a#*>$I*T0 zn}*|tJNjGtYQucPNW)A0bNy5OWBn-o2>o#VF#S;dApJo70DZZ>uf9}YqJK%fpq^5X zsV3?Hbuh6tu_>`Gu`2N(ekXoCekidmu{p6mu{zNdzZ<_1Kb+W}s7`E1tVukK-;3Xh zA4%*;Y)NcPtW7+M-;dvp-^;y~doA~JZhh`}W*jq?8N-ZbMlmCq;mj~*C^Li^%nV`% zG6R@Orax1`lrw#qGNunx%9Jq0Obh*zenCH{pV3e0C-h_b5&e*Eq94%r=)3eC`Zj%w zzDeJpuhZA)tMq015`B@rKsV6!bRB)3K1ZLWPt&L9lk^GtI9*HE(8uVb^bz_HeULst z@2B_Cd+9y&Zh9BJlip5mqqovq=xTa1y@}pPZ=l!HYw0!gYI+sDl3qbCr=pJ1yMvc#gq{KS>`#dux37V66rixUeHSL2uB z_3`70m5CLJC5fuUwfN^T;gyq6AVTrIK3>F3n1BC%XrO;pKCsYXKLSLaw=p&R0 zB|@>#;(F<7c0F}98(tWm8=e`S8Xg%Q8k!6b4EGK940jE847Uxp3^xqd4c81;4Oa|} zhRcRahKq&^hI&Jt;k@CT;fd?9>yhiBtI74ib>DT*b;otvb<1_rb;EVtb*{ppb?0=WbR!c(69W_d5(ndZ z;ydD_62lUM68#g0;(Oye<6{!T6N3|#iNo=I@m=w;i4ln*i2;ct@%{1L@w0|AhSP>q zhLeU9hNG?{u0yVat^=<9u6?e(u05{Zu3fI3uI;XEuC1;uu4>n2*Cy9S*9O;m*IL&a z*J{@)*Gkt4*K*e~*HYIK*J9Tq*Fx7_>K1jKYNRew_0&1)6m^_BMjfK|Q+uc#)K+RU zwSihgt)!Mwi>L+ETxupYjhal2rbbaisUcK@N`$+ddcSmArjns|Mt;k!RS8J#-95Wm>95Ea=95Ng< z95C!R>^1B$>^AH&>@@5!Y&UE(Y&C2#Y&L8%Y&2{ztT(JPtTn7LtTwDNtT0r$7P#iS z=DFs&=D23LX1Zp$rn{!Orn;uMCc7rNCc4JE#<|A2#<)hiM!811M!1H%hPej22Dt{h z2DmC+{ayWB6|QpEti-g$q{O(y>G<*Z(fI7d^u*-E_{5p`iTJVjoWzX8l*EL@+4#wL zO?+-*W@2h$V&YuAwT-H#Hd1S;Rn&57F;zv)qh?dnsVUS%Y63Nq8bJ-B22vGNIaN%x=w9e* zHBaF8q3*u!w(f@Rs_v3*wQi$sgKoWUooYfC$Y@1)Ud>`*s#d3&`@PqV3=o^YnWr0ZJ1@4X_#S{ZkT46YM5-8WSD4} zU>I*0XJ~NNJL{b1ooAhAoTr_qoF|&=OO1o=K<$_=RW6N=N{*7 z=Pu_?=MLv~=Qih7=N4zRbF*`kbEC5?(Gq_ie;lulZ-}pn_e~ThUc{fox5PKb*T%~e zrHSVF)A+Xdrue#eMWRpQW&Bxudwg?zeSEB8gLA!eopY^ojdQhgm2;(Yg>#v6sdI^Q zv2&4gp|i@lz&YPJ&pF#U%Q@3I!#UkK%{kRM#W~qI$vM$E!8zVJ&NTMOJK+M}J zMuFJ3RjdNp-d5QZ$oaO)sX(5$RUQQr-&TnV6ntA1RG`S)s)z!`-&VyH=tpm>exyKe zy{&pnf&Srb)jufEKfSH`Cs@rpo$+emMWSV3)>ZGn%6dwpEE!&yCs@`Oc1k#f#s79Is zdCO$Bu0qlV4AucVm;@_B;+Kh3?@m|;DH2pJsxT3lE|NwB^niK+yDdcbR5jNL{sN1r zg5ETmg`T5VX?v@`716Zsb}-Y}_Ef9{8U-DLHK|f9Er01Q=cLGADik6G2GUv9RLOeD z@Gc?h5#?KMNw0b*`=bU}gumYt5%u3lvsRu=9>33T) z1xEZvBtJrv;TBk>z87pTM4!Rt0Q0HhVye5OLvx~mr;@VzJtM3$0`{g>7OUz6e^v#t z{=Sg_*`u~z67(fS`Ws*X6EA^&m@!!^!gl?oTZZkwgv<>4@q4lsG5K!q-y6vsL@2(8 zYu$|`ogVWoAi!g2I#)>s8YE))cW8x;j5+&VitLU!(}Qct=~VUa3X^YTI?Fkk0o7s- z{hq9X;far+hZ+g@8&Q)YzpRoC|6x>Shkc1$(7VL%fdr#$A`L$V^!t(f8(E(M{igo8 zd#c#fiL(+i=m^9n8bFviK#!K7kyXl0g%{eU`k#QJ2=Fy%ld+4)6!L>QNd*i5HBg`~ zip~wFg0#)3XaZb?GM=cP0~W|IAX_9YRZ8^>qdEt_5xpp@3XK{d27{0dSh=cq(2k3! zeuT^$&6#a9k}x*??)rwt=5Nes3ZMdOQ0nOwu&`e8n>n48Nx_M$j4%T7+)Ln%*o8kg z14_|=(ZWjwI~<|khuIV(MYVpQdNez-7!5dV0ES{d#*$z`Ai-)wC(Z(%l~FYBd6gWD z419WV4*cyRL<2k{m1b-nH6?$O7#J1 zNWmJ0B3pg8I8%E6L=7Afh_VRW$=fOjBdw!i)kRc4msNOJpix|*tU+!7nVk5rLb6c<&D4BUZL%Ie>s6=Tyu&Q8Hf zYP7x8A83FUM>fUO$pitBwB~^+*UJk4S5vgG9=^POX?& z3;g4gKqcQDrHL(YLO+X;Ap7y)4m7p8})>

    iSu z;|5OPhzA0uz&?Nx&;w!%_|YL_i>N#>Gi=bB$+d(sjv^^oF$&mt_PJ<@=%Fl;%q$U> zq=vzDhyxN{wod7w{R_9!8}&D;1Q4RA!^bGJ0Z7C&;sHWDB6EUhz?Wt5uqiWm;GCw> zriIfS7#?U9>yJXQ30J9<3fV=DNTqcL)~DzWx~MxTnpJ}^QyUci#T=xxC1^$H0V@JB z8Hou~q*smX4H*DPH*G)du&tsBmMOLy41on_Obic=3<|fVhepS8Od+C4VC5Oxf>lw- zwzTk4Yzx+gw1m#@vgQr8rOgN)OhW`m&44$=x>;9HR5;TD1Q4E%ucW>keHQy~Rl?|{%KqQm8+CpcU9 zk1Vk#P^Z*Isr{gBIGSf102)tJ7s+sUfz6eoz@5Q%M2;#4lK_uun2*41&_d8?K*i`F z-YeS^EQSIWLBI@hV=1bqOu%p?9BEs0ztr?j`C(hY2*oe|xl@YmnWDPO8kjOwT<^zq zO?Nm#gBvZ9wQ$-rW1Olx=G+7wHHE-KXHWyMZ|(`UpVD>e2^$L8d{H5t1Aztx%eVv> z3QQK=d{ju~Hs!@;+yST}Q zDNr%klD{X+m$o%@wt+!WBmudl2QmT=5^|tmg{@l@DPNTl8pw{q=N9M$cMAoLMVgi+ zdciut|Dkm_VV%hMz$&zgLcV`kI<+0`Y4m{Q!I=lU3lT2gu=j6HsU;)=Ed?!I4JrqT zsf|RsQ*UfLB62d=7tv!?Br**Yo4_E^;RY0=N^L`zV=NGS?FIVmRTnQCMlJ%qf$-23 zTn(48i`w*+7n>NeXE-jQ7u<``i&0*1G)6Ui!9_yEHGH*A-)qyC z+VqV!eVt9;Wz!eg^er}fg+*Lq9&*xGNyW_3Z4)&qZ5pNR^~Hgo?M(j+u9rxPttTbb zt49skEwIy3Fn|pMO)1!vi1qaG0-crUnWS<@CEs*MMG+RA9^FmI%o~uvDQzUAI>;dC z7`qVEME^IuQn+fvK>}qpWOX~}SqM|BK&R>)$d|xg1T#yMAoxvmSgsNh0hkeVfoEs> z?-dDX-Xwu^k_ayZ5ON&MN->z4w^sM^a?HbSE>_xk%VN35m0D!O%C=^hz4|zf*M2&bx|h~%OE|Zs6%*IGU}v9uJz?r}59`KnQ_fI$BJ0IGx=#DQ!4{#8Lusz7{O=96wDUo`y4y^5164@i5dMpIxVE>j|I#%sGyM-s4(@QUx6|@N+ZJLCcCr~M0uIX& z_(8Y5LVECj+Tp_G42+1tmpZT@P&;y{0ARm?o3P)N2%MMznW6m#(|(`lMeXQx27Zj7 zKLhoq6)1!E{#B~?hv02& zZXiUa3=oM^5Dw5BDFZt|L(>910j(Pve}p0m817ps0 zd+3sbS&%^Vz=?zcg$g-Yd~ZbY4NV8ZO``-iq(}OSilneBNvA#t$bkZN5(2WX?z`eSoONVlsKweS<=~7J_S`DIwlXM{*rCM6lzeIZgs^C5~ZV+Jc zOAsMMN>H0fc9wN80=%e{A9jigPUm8dJ5{|!*9rVfiUk_f2{jZ#Lnk?>Gt}Vl`99o< zMIAhmMc@-Y5otfKW(Fhwr5kmJtZYw^6uJuFr6GS0 zjKR|I=x-P=^*5jlbl*h7sZ!lxKoB(Urb>^AR!tPakr+m%=~4}3+2Q}fgd8RnfB^dX zHz!BK@aKd_gi42D3z^Y zhoEmmcqkFh75K=m2I<3@15UXx0(|#C-$3wqFxtn^5f4j!*qSc?IkHV?b3$AM`F4=h zjIK4YZ9}qF%qpD*1rtX;0dP25+ZlF(0lu&p@v#5!o{<8pL(vhD8A1It7zn5tJ|*CM zW-pw~MBtwx=l>IUV)h~Ttem*v#fslu0?u1z@_<-sifn#??%J>sK7=<77h$+LIaA|H zA&{~I(ZbP&QO@Ep@cUT=J{Lo0I3HjE;TA|9odAALQV~xDB;dd$RJ#F_eO()$Vss^--L_+_-2ssVGE#pJQ@XVu;@~a zbfQ9=1crkPB*qxf;TCq6DwC0s^>Bek=d={K?IQ33FjVJ4WI#pTVI1h(xjXVdM2hJN z2S(((MG{t!g3Si^Y!beHDs@#)IK{T9lW>K7txmSqA+h$_YT;H7n;)$fHt;K}RdOKs zii!3}dcANOq(n8uL|_$UiWdhEN|&OcVH6d7+)A$+4!CfuMqv{&F`4WX_(DBWMoudy z5-bkHn*+V^c^p`R^Ere-DxIu=V=cZLBW6(xEun)iy6GTMBSqjW1-e;-MKZLKEa}iIDugE#@-j1mQ~PDOUG z36%UT&}33==<3|O2G$B;GHb^WWI!kpl$p_7!B|T8$nqpxC!aDjc?O zP7mjS+UE2?B|ntY1EHo&h;N+hYt8Gyc?7Ja5HfnO&yd0H1vCBi1Nc?0yumff~i0kxHTwPeOS`u3fwK-nFYrW@Tz)veDpRmc#a$r?%+pt@s!*Wd=(;JUcKMSRa-Y@d9SXt3goJdHa5u!E_`X zMilKVF&fkUiV2f%T}H!~W{a3$+tFh{qNf-QGB_bgXw|~JFV*94=6!0c^qTjpumS`g zi|?`mnRyejf=b>vym7zVqbk4{%QxsEw=x8AF%B9>c8tBx@4C;v>dI@5#m-miDY4;f57A zEKaXjP>ud35vMEmKww=NED17LTo9cf_crXT1bYKU2o2ntX{DEBrE~yNSf_*^L{v_k zdz?iFfW(Zkb=Kah_Tpx8fipu~c-^K~twFf!J8#?d1_~l~fMWcc3e5Z673I-J^IQ><+j8z;)#kA#SzSajCXp@Yn6PgxYEgIYq6E_UHncy$jT6#>49VoBXK@8)`BBMkdCq-pV<6Lt%qv zwLzv0Temj|p$gv+*)Ea`ytPF@`XZ7lc#WDx|0A&?g-;8@$~04(&->ehiGj@YS)np( zB6j${PL?^u7VOU$ujogXR6Hqkx<*4?tf_;_Dw#A@8^|C)MBr9TT|mhyDAin;O0g3j znTJ6!BVo(AAPaX4seBtGM~ZeuC`BLf2>#z#fB5SjKJYfdRDX(fWD?w9H~8sLzGNQG#o&paSwxkZeuhSS)i7G1iIV2w#xofn???yBS{z-5tJc1JG_&G zpDsynZD#}*e6qW0-jQ)M4GU?;GkY__LQzx=NepKMoC-@yc;?u`v4ngCtG;43_H3O* zPwRI>KZ?)CD!I|r>_aYj-B@PWn3t+B@kvg{#$@x3mH-)ukh4S)X>N?wUrtq{B>8gy zhD;U!g{oFJW9&kjS^%qJ2+6UZ+RR(15DrFGxPO>*C9fMaB@{Ny2nbAb6*hCYv9@#+ zGdbJ<4B`{@OLK)}?Eb9-2kkGN*P$PPV}fGjNY3+PqgrL{ z80Qfh$3u=m!bv2noEbJuHHl651nzmN36dwRg}6rfC+4-7Cve!#jO^Z{L=CNr?Ag|vWO5d2lnljJBrS))Tg)(%gSdnJGb6#;m> z_mU|A`}IXGYl{A2IdDJ$#puf;<-lVKC`Ml%Ee8%NpcsAmemQVR0mbOckIR9XKj({L z^yP7VDFWN{MKSuawH(;4fMWFJ`f}h#1r(z%JIjGt1r(z%H zm)+&Sy$UEsU+yjk_9&njeYw9J*sFkI^yR^FV4nht(U*tHf&B_7Mqj>I4jfQGG5YdI zIq;YQiqV%x%YlOmC`MntUk)5nKr#CA<8ojIH(-m=m&f%*pB31qFN#rMYdNr80mbOc z_2s~g3MfWjc9sLP3MfWjZY~FIS3oiP^3HPLE(H{$FT2ZudlgWOzT907>`_25`f`6c zuvY=a=*xrUz&-^Oqc0DY1NVzy!;Do4bBY#^S;p)b10*%06)oCKG zXRKzSaTIDkGqHR8ChB7onZ!`9bs(p)o-Du&7X2~4rWLioe3DL8L7w-P4ov{8gki-- z(fkd$Nesww$V_Uf4Aqp57;q3WOPw zN#k#t-XXSYo+0n6#KT+6ovJmUN2N8WN24{Q$3SaTkF2#wkFnO69^62a68YWp^x&|!?&pDD;Ty33p)yQF> zCFvTA#v-gQT3l3IJ6o4G^RabP`6#iNk$mjPx+(m1-Ap_s*HB1mD$nvIO1hM!Bl+T< z?*O>5Jq}gogSnMAM52K_6p~pPQSqGbXZW`_4+i@o5;3I2^=>)!yW$%IMurF+6rKLgpQ?5>$ z70F3+65??*a*Cy0dc?F={CH8k2y^7QmTgJ%tjK;2p4lxrL}hDsWuHkp-)C@u1e@?o?#Dqa8VXFcu!1}@Up1L zRb=>hY2)T=3y-TqPes3TkI*=Jw8>v=$w%fUzgdN_IZQp)1@b1viqZDOX4fiuXl``7 zR^Z^w*_-oj;Fg;@fhcV-P^Mk8bZD)V5+ta2Q_{#nk~^v{*J=}b%tq^%Z$vr=s7*2~(LA%8d z%SO}?eEI6?*e>lr#G&h(A{%iN;Dd$qz3sAz9u`vdaM^gU^|GT8GK6~kl&6Q4XIo$)(3Q?gfdlMEjwNvY_e!z6iSx0J!dBq_l%aF`^&-z}w>vt-e%LG`({ zj581j?&`D@LM41_Ck(G9JlhG^MaTtOV9$CDM4VR-E0W|km_!1M0?i-FW^g>l=rdN? ziFspHF|fZQ%xVnO!%`y~IDA=m^&)R8`R3)^6Y$qJ8LteqBWkUTBz znb*}Y`_w$qW+Mo6w;9cLZ#Ernw`jJqd$X%%PjW^KqOcr|*CdSImFX4j%4GBs4Y`%+ zHF@Q~Xt6iS{_7_6`0UgE=WtuBa9(42yt=3ypB~ zYv@juVoWEGcenY*0WiVI-^}zh%@*C&NWNXp!9eo*H&Uny_D*r6#7AFWnrC4)OV=de znhh{wKs?%ZyaG~-aV6M~p@WAFXl(?L6rueuMi$e}ZQzjHEw{nqAjz2CAcJ71pFDfG5HwS1Lq;{sn{qQ1)Ps?OKZkT<)! z6Ls?Z;zGU-sL;V5HW$xNmtE6b+KGj#J5BqeWh z--9QnZr?YflBI@_j!GMJ2fo3Ab{{V@aN7pYdr7D9ZmTF16;HXZHnm1aTrh*$TjK?c zp1OD}dLO33dTUI!uGs^_BG^9nM!m>O;T=#0J{J7mxNC&{m)FM`WH9KqsiI6Z>t#3* z1tcyyzrEDPD)y^&tx*KmhQ6e0@&V~AL##YulM;n!_ZbE`XaLico#=+4a;=YX`S}|l zZHeKHbu>ps_+MB~}5*4DzLw&uyf97(K;76T8a&&$EXjJP;WsQdP+>1~ zKR+;>4{K}!U*_GvvmA4D#lGJ7jo~~CBNwdRD6B5#WxHOMU?Ch*or6WKoG7E5u_<$P z?d+%v!Gm_dOdnu|06s+YKJ!(*h4-sZ4Un8ivq)6YXah-meA-p6QV#ZFjljfMi-(wS zzt9^N-K>q7*xvCH+(Mfga_Jp`o?6Q=(AGU+K|el*>V1snk7X}V^HIu_Y0JD!-4qU{ zfU!E%FT=EIR7IU)RU^ewr7yLGAWy5@6>QVa>$m~{jR#>QUlh_Vva}#X%jJ1LOZO0? ze@WKli$ZIM73tse;onA!GM6GHlZr#PTFyBc*i9=CbGc3`g|N!ZhYO*0LrXR4_t4Px z08PU~qtd~!a&SVKFP@4F=oW_1MtfK}WsFfvv7%4tF)FO*!{j=LP8c~yb6-90QwQ_X zYLps5V<5?^aZM_p0JW?RAfD}(80EM-T9705i ziS)xnY;NpfB28l=nV3j+cAgm@VHM|mbG8THYkgdalQiKZeFYx@Ux(u)G+LZQ!*&iQ z;fpwled*;Sd=V$HFTI>ZTcNNFz)1{7I7y#z5^}gaZ}f7KW|@-+o3OQ{;3P}LE20i3 zSt4G6`H7Vrb;RPlS>_~*J)hC8Z23S9SasHq~#$3j2bn@v1} zCR}#@Hg8GoG%@o{L+X?b%p@DuBGaqD0|qSf*)?{Jv}y}(NIn&;Iw|Ixvk}SH@MdRe z>ByX<6+ten6SC)1EYX|5h|-LRkP;*3Xcj`i#M#Rv792azHtI>e-Gwj6;ml7ufgn<6 zMC_h|IH?=~{%{o(B{zVns4diyH>jhhipu<=oAAncg);%01t>r-KTpBjhg(g4C9`DJ zy@M0$mYs(sAT+FsPRS?j*A1V}WhV;<|4HgETG)r^j=QhGlpm|~sGerR!wMWWpM#u2 zw}A9jdPs6$p(1SaT%``u|K^MRF$7v#%1Z)EE^&p$Q4tt&DqyBMj#VP-J%5ckmvtz} z#lqkHjKbpMN$1&$&W;etV_gbXUYaVZH-dClr+)PCIl&f8(ZuLqdbudun4;2$N z!_PHWx)V6tl`}UjB0g{8g(R?a67Y|h4z#E|l#U~(lQKa%DDueZ%=oB%UNJ^osLF%d zqGh1v|4?xM9nxba0f=EP=_$fUuf_@fanp!5lWW{nBI8xqb>L?>oI(HbRdOvPHfIh9 zG~PzeMT#l7G&@cCRznVy|0{1CznSxf(T%rN%EkV*Q26QXW>Gj3OHnxIaw^$LDi+yK zQwRmHY>a=0m8{8wH_AJSH>?4?ovtkCv!UeGm;?gYNJB-*4TLR{tx&Q3=E6Z3(CXTG zSEC(r5><&Rdj)U(R`zOTTHY!9MeTY~cD-Bn0MZ`GPHp$GUlqXRVWtB5rcos*yI=0B z?7yT9foFt<{o$iYxL~_u;MU?3kX^2yoqNR@)M zv9^c{i%cu^w8ZP1-6>SZGG!<$cenQ$co7&?5D zuzDRHCWZ-q7Ud2#YR5+9(SZZ{)3mAC&0qKENQ*YrpC)Uyo7K?KfApB7&8K(J@uCts zY(a9BN5^U#$H#&W+#PUX3FxT#<}mn6=wKc^0y<5%n3KPQj;G6tdvTF9QPmxE$o_OB z#>^DVi8BZ(_JCz61bfv3ex(O2Ru6cV9Ew3056p&p@Uq0a2q=|sE zW059$GXCnMiBhr8K$S3lyV=NG|`jsSfmLu7L4~_ zRGLUlny5UDG*L=*glW2z>Il+ADb>+S6QxW?n5#>ve&t|3oitIZ``<2vbEFAy0#O@r z{kt^ruS%Mr=a41>TX<&D1VtcCgd&bjn&`=T)Y3#xu3uJ~C>8b$q={1QW0NMxh%^z9 zb}Z6FPsU%JG*K${8AubQ+{Y$O^kh61X`(0NuTGjM75faNiBj%klO}pH9*Zvbo?%YKLxH+=Ks)Ly2I|Odt5G&Wz(Zoe6tPd?7Z?^y zVH5cCA{G`8SB6&ev|HVS(o&HNSN8AVm|yn45OyHEVntn@97rNk}`jkeZW z^~Uk`(=5@;^}u^Vu&sn;JTB%?87%x}EaNL7+c@wom=f*9Y&+6HO1N{qFqW?YZ__V~ zLtanGcpik3M>{2R57KEdPILi!?j@ZE z{b_N=*a>Hhu9F{#<X zwZ@ONmg@wMy0zlJ3Cju3sI{GJ6+A_bs#hn9QC zOrPbj;aBVWZwTGp9CDc`>X7GwIG-NgRYB}dp>f?MQ#WtT&RsHW`;f;k1EzDA3yPr$T{2=pUFd5DJ$br! z$-w^PkwvfhdtY$hDejWdJpkpVY2ypzP%6*2@Yi6EI-gTBN>z8sm`7~6Ol$Q3OS2O@@181o#^Csos_&O=zcY8Rm?rsm|idsaJIRTH}##FNCHtik~7@M#45U$Dl z@#gDmRaF5y8S*Azvhh3DKKAe_AK;VU;ZVb!xRPhr<|A9Q{iSNb;cN4uEpYt-ek;E- zp%26P&}962L6A2$Q{&L)-y!M1ZSvS#r(1@5T z9??S>X#O{XICk5OiMgHg6mCA`SbuKkYf*rl{1RkT{#0}yC}r^t3iyUzf(X$UZKvmA>|F)NaHlB(xstb~g`bvzTZHO|c2nWWvo zRQ6d$ldi_n9$d)JGRmXhT6hMf6gOubiY*gIkrgj9Nr>56ylg98t}kA;7cV=Dmm3QJ zZ}tF!ia1?k`)UCKAO%_%nwxEZ0WSCc{;vHL1IV0?R+M+BczL{d*`5Zt*zIXu5ZUel z3b01G8&lhf8x_aT%*=4j7kevv!k5npUoj`V2PDJE(tUc8e=koR`2DD!>^;1g2QKI@ z_n}Mu$BP)VwrevLg(i3+Ht8CS%?wQ#Jd@M~V$_UWc=iS2+^HP? zB;&F5h$BdOt?4LIT^7krlI&a1_5;SHaHpCmPxoR$IR0Evm?n&wU8A;njubRndq}y& ziG$Z(?V(GiTQM0VnVY-vc>n=P&?1#?Nqr5e-FQSYk^`xWq=NFjxs2M`+45&qSOKpl z@G`BgKWC!(;bNzF#I+Y~_?h;a2;&sO+$nP}aBFWdmuNT`qQH~*2c3kk>i60Lr2^nL*2TbAWwRDv=VX8Z=y78 zX$9$Gi1+InS=AZ4RiS`Ah;I6reIr%cdl@OBL$X5dWZ6@daHo9=N(QWUt2u*P93Dqn z*K)Dj{y;VR8GR5=FnfT_Ib5q_v7o=@8wkON>xe+(cjhLMqar@i|X0hHvnZ|k} zm@0cCm@9iDm_&Oc_RoztFgN0{xe*8FMjVr(NqwgqYV8 z=1_s2@XOT8?s^*}95=yqE~5d(tuUguog5;3?I%f)Z?ON^5P=)&_=+Hf0{0YGPj+_7s0BMED}#8 zp3S-=H?+rgtmZY!$1Ls!1!St})KJMs@@z*tBN@#l54BcErX#LO$=FbwFY?L6vn^R< zrPWk$MW1g7rKo1bSt%GHHna!3^+jkEF(2F6PIiiRTh<<9PS`XB-0jip+lzPZpjp}ZdK zW>Z%IaGf2@9qgznV>{VXy?EyhC`+R`wPyKJ0^n@aDoTk}Pj!*O38Q&72N?r==A02G zO-+8bK~vINTgN6K1-6@N5}47}b2^&yPj}|TRX|Ikz2es74q~8A(gef+EL?j)nG7eq z&A|mTw~`AN+5%+VN)}N|84XnmR2<2qkMVjG&9BmYrL?k{Tuw>G7HIw$pT~TE`-%e@ z45*!|)7rVQxBHR(PGO{~`>mhJnRHso+niQHh?inCV2myW8H zF|AZeYo)=pe1TRj=d&hJB%_qctImv8Yaw{HBIdwm^Pe^5hr*cWP+J@Gh&LMZwmF_1 zoVbC4nR^>8rh+;5{d$uRw5X*09 zKPxo+xcpf_i>gBV=+A;3h$X6hI#Xnfwl3WXV#WglpwKLzC^LYDkPy(ZsFx}h!3R3y z9*w6v?o;bx#(%(##=VVk#)Dc1Vr<;2;bMp#)QlNw81phr@{vAQ)97p1w-OiF@JZCJ6!#*a)a4GYKFiuQm~QVX=!KVciOp} zcG{>Xmqs4#6aiT~HO@mjt$RsgjKSJzjA6l!7FX!$Xt4s{(aF)YlXDP4M<1r0x(J1_ zUuEn!82fd`ej3L9Z^NB>WEG~!p77J$a*hNe0hn#{daQ0fBpr_Pe&Q3gAHMfo<~;hi zbP|8anr;Jo{4d}66eo}&xMRHC^P|+x@H#6BKQ7AN0GL<^b@Xg>3#p!Z>H)6d8;q7E zYy7WCF4tqhSU;3TvCh-s7(ApIj_q?X*>(CwCnnp55?Tsdino~>P-G&>+tB_g!|fp;xkjwxvGy)8tScTC@w*7QFbrD{jn|g+Pb4f&K7lq4VE3 zAZ~+K`XQJq1T&MAC}t+nc?+2J_i#~EYoHKa8kv1fsGr%)pw-#~My$NXDfsC8(mYixDX?*XndQN>n%ni+lCrx(bMxjn zi8-;(LJ@{??tWNe>OAMcjI}uY2~uheDB*0ZLzE(f{f4{#dp^CL$)Cdo z8*U~BXv1a#%+aA75DC#86>TkHMA<9npZy;JU+|Cfi5nb%MZ;cbREkqrs z;SOYv{YOE@hetiQbTf(kd%JPfx;)MsS54_)5i9}RYyD$veNp!Lm1g{D$aL1wt1JtK z4XqU$`Jz_6Su0_f*ZNhL)%K7bMP;UV?0E<&2<(+?-%8NMHE3I0tTU3DEq^zZyMNTM z)}+HQdFIXRQ1v$=&M9J7K7|6tk5xjbO-Zt!F~GAQYFVVuy%SKi%~yMy%o#wD@9st> zM9TJPN8hVc_7WX;TH-F9I`RX-VgF19livoEX^C&P66&`LO~CpmX>=(Xxqn1)#ay9&}ovboA> zNdi__W9(vu^N9gFZSE=c6MaBPbCvMD#PE+0np%!_lFc*78q^KyI^+gh zTx57?U|NVbPANg;_Hb)n5zIagF^NIJNbCqB6e?6{(Dat`eyA@kX=@1+4q3_fB2H1)2N>Gp*=O-kDr!~2*KqAWk_+sC&~Fp87` zXMHCP9s0ptlFO$AzVHdmqgEb&|!!i z@RCwg``L`Rbludn+ZQRw%nigGmCOA}Tlf6hKT8U>I;lsfyBXi6$6TnwiSBn-mN*X8-MfUZx%;GSnsjkGn( zyS=9#6(~hs>(lns$ni|mp*L))M*Ks3+y)k8I_~+!ah|~v62Bk>qe7IqA8rl*EN2MA zA64sqTV?bsn_9oT3KdGDDbaXKOu7y@fK>io|N{6BlaQ z;lZMK;-;~NBf06*bo15HdJ+jHsuqRI#jS`a1E3;3ihH0;OY}waT{ra7OmqDuL|f&a z!E{Sx3kw=EFG3*tTPThL4N0Q=HB(!yMdZN>zpVMVR%H>+7rdM+(m~5MefS%1Z5g;C zKL-v0_gcbM7C^(YZ6s-KE4O^pfK-$>gFumr+S)ejR;irXkkqySEAa&A;Ftc=Qsv&p z+*G4{Evu_lsoN8sE49cj+%*@1dDXLwWvj-Cd*pgf%LL=@=0CAxGZXiyv0{x*O0_}B0G+S_8BG2BmvMjBkR zOSH2%>T9~04>>& zibNt)bTH=_+wwQ(P~%2K-$5GY_@WvH?33OyH-nPO%@wp*3T01~)nl&Gd{J0+@%7O| zar3`waX8MSwIB_em|80VRWB_f8HKz=P(tD)Jq!A2>EJxtq}M|P4hb_R=hR#Y-*%rRSl7FNwQ9K30Ru|RPE zLz=zoWVIE8OQl&HS#2h$Mz+0jTl1^3D9Is*gD%AO}&}k=+ zns>&w?4SLk+Aza7ZpYb=?0q|aCI4h^H~P2O%|1TDFwMSfv9rYbly~_zzHc3c6=Ywr z?|VvR?dz1af5Ea2bjmuoP+7BgQ*MQFo3{sWeZ@G5c?db`(q4K1#NyJA(tQTg)Z1``viHxShxUY%T| z?-#dW6sIIFZx8H{hnU{a!snF7h3%mo=x;R^LvW2l?@w5(xR5t=d*WW^--v@3o|0UO z!zho-Su*wYZ)C}ih)wOqzJA^>!?e$1U3=*c5A8L0l@f79o2BD~GG$=K`g23OzB*ZF z<*Ro5{iw5cL%Xp$xm@XWR4L?ctqzUI>QzuWt|VWl*@cMmF#k z#!uPfUi0P<0WGTuV&Psr?Qwr9Z>-Gb13M|V$s$@s!ny)=0u88!SDBwrr$l8tK}=LuOe*7~PC?ON$*@Sq3zwtr=r}L@%cq zLIY!lrt&zoo!t;f67K~fUeq4F0X>ShRg4%OtJ`BYv={3w_k(vun{hC{!wVl8WLi9D zOsFF@2Ix}Yr{ifDR9XQ`8c90#qeVcFFoLO3)Dr`vCq)kZ+(DUw(%?}~dU%%m z8h2o!M50t8wGmRZzE>A|)+nMtW50oPxX0dLT`hw4T|Lm;sI@AD|I_iHlXRG@QD{{w zb&<)8k&LL4j@f@9$rGtjj^>r$8r0P%R4sv$*pNy$8B4|sLDok|QpjbAiDcM3{%67g z=ytPD<;2vjDy{3R^2<7S1T*$@Lcdr*MGk(@(w%vFr#a8nv%iU{*OU>2MZtwC_XiLS zEEt7Uf*;NI=f$sb@A&C}-Cu(eW{Qr!BN2|f&+?&)GJ;;idE8W~!|YLZ;QFID^nbbb*3h{a4dd7vekgvgTlo+h7ZbtYmcf$ z)qP!TYi%IOyWuA4gZONyMb-MnL33TCxVCpr$0c1FO2r$KQaQc$+Uc3O={t z?DZU*mN3^FYbua*C9oyBsVWgo2&5yWTkVLH1R~-q>Oz9LfHyFfG1H}*A4^RJ7Vu=Y zRVlqgX&RGi(iwi(u1v?}Y-w@%8Of}AgU=_i2_d|$I3sx|yqcpU zS0<}pfS;)^;bmtecAt?CQTG9#CcPAA&5-l*Gm=Nb>$)?N{o(bBGm`Iz*NuMXfFQa? zShD3Lo-gyIZsN1#Ek4gcd*0k)!QK|4O+q!rfaNlEglpS50TD=(T{9g#Vk1ASFT(m@ zpV-{VcZ5is-Bk~lC((t$*ZGd-*-2sxqj~&-^a{RfY%t~Vu*=@s6>XqkXV*&@?(rp3 zUnMHUx8e18xq6J2T;6Q{IQ5RkS`MCj_`aDIwS0>ox4US{^`A#yeVrS*yuC>F&lLUe zGr!Q``_=4&32SBU3%|%9e)qXwWK9Ur26mKCx65f&HM^0uTU{u{&=)VF(ma`VK;t+> z(WY)R>sqL}p%d>_eI-<%%&EQ-s;?ZTdPF17xL|cCzU9i{hq`#uD(7*5Du>xIutMco zQF-k!mDfV$wZm42h zIk#+@OfH7s=(3B{&8)%vs}&i_*WRs&*8-{xig@DVj*(u;RfyLb92kTQ z&~3~Wlhgpw=^j=syv5#Z@lrkrgvLwFZ6vY@ZTPjCpYeZbH#YN>qdZXvMT+WUQyVX@ zZwXm-zHj17brYS!#*~Ziq-$dSBBJ4VK>AIaHnmv%H`^cET<+X98NZe?uhgvwl4VXvBOj-eGcRPlMJZpssF zVT?&5o|MeAqs`Zbc+DXi+|lHdG_CFjc<_TKg4AGi%O!KVO{@i0vUwBR2V)sWpW&q& zSdW@}WGD(n%yT_LhREK|#vvO4YLIrnF`5NzEL$xRv)Y)7t&p8h?Da{k*>I)V#EltC zBm$h;761tkykY0n8`G24Y2b(;Pvx|PB434OKHDP~QFM-(mJ;a#$RFnq`E#c-k$MmA zPt*?If@Do@a-7@t&mVmFk9EyaeKPfyx(#T>Sy`w17O4r9_p_~Js=v1s!`ZO5I(I2<|EB>9 z@BP*n{v^CwMM^iKT=qesMY7GiZ9n?*pBL$rTVJZ34+?ROm4)B(z)v>?wEpz(za1dI z>xo@o3a{1$YGV}8@#9bRq|&D>phKS&t{FN6##{d-txeAEIi)D`6s^g&7WKw%6`iOPj++ul#~^>)Z={r?1y)iQ|Z$Zk8}H^ z@K}L!ihP2^p7P#Tyjn#{7YoY!KF0@z`V5u#ed9Z&bpA_X>GVPA>KX(n6Ylo=>$1=@ zPQPp8!B%Y|7Db48%gHX%jZF*_@nG-u#s~NFk22TWgdz^`&R9yvrnAPMch<$fXdSo4 zF$_1h<9lwEaI29$`xAeY5@Xd>UL`*1uKg{Ulv`0M>STnnC`#gcc4co!K4SW$Bv)$8 z?S83LhHeHe`>bVWkC`4?uz$-=qUlgVD9NNq7=Z+13NRm&X7fSr{qvF%9AW?-BnE*G zevX?Ei4_Ojh+23?iVK4QLU+NDc+=Kjbd$R*?sN?)$yZ`HFcjTP#uPhEi0HM*c!~Wg zv@JH@Z{GaPoV>ty@FcsDthRR8KQ%HM>E0;XuM12xKXj7Y@|l~lt50ne#N2)oL?@*Z zQ(G%vD05BYV$Mz2Hq0{)hR^5f3viMXv$I;6ejH0^d~h^{C8#jd*tE^|B_N8Fa-(5p zqXIa*sZyC`=&Ca9%F#e z<5GQu+%Q$B2cmPkceCn#8cTx-KuOW?^~k{!PPXVj3a#>wwf=Fjf7~7FSnY#n@tDca zz`p7C1n0?auRm!PqbVxqLjSnPKemMeuGiCgXMxU9wpkJgn%iTPfEyF;K4a>Yu0MC` zP1Z0@ACOFd*CoUn2$l&(8Vi+qwXjTt z?`<-$-x7dwD>Ou_2P)EoO)*W~M40ARS-G0xjl!ksuOf}vGkgI>Km~NZKpE;*QH;^$ z=|=AruWLg}GF4#tL*K`{jB(2gnE77JwrnsXeP%9Zpi*7^V;;FesnnKF7^0wV1Y;-v zQuclcVQ-Ihm;?=!;;wH}%h;I=`Opgyh}DDY^~n5V+&^;vSm7V5{Db{$YB*KGc#t8r zESpG~mq2c}CYQkSS`!43xgUMk+fyuE64r4O*uX^di?KAoO*D2vU**F%e!|RYqEP#7v;1V`g)iy zW_+KJXj`rYI1A?5q?2m4!DIzEiP%v~#X?n>P3X6(=o!?L8*1|~$;IV0rzF4TFWuE} zJXkB)-VWBh@ogV;GboaSp51cpOoDbP%t%(G>$cg&=Qv;6mAugWK)Zf+3u}tq$&Q)v zoV>aLNP!NcKtyX$UU@OuR!kH|2(^6u&S6N)OdqW}ra9_R^hb#?V|~5-Y?}>CouZnHh^x2*D91~9-pg}{=UqIX!}E5YOL@-nJelWq zp2Ix1@njIV8J-*};to}(S}S=z#*-1__VeUq5x0-$DLnV`)aJiEJQ+&vE}kPiZ|8X& z&sm<&<#{8|Wjwd@oZz{Q=W?D*maS*;JOmDp=XsFl2|OR;c`DBXJQXL+jqH}X7<=XRbL7TkW?#Z8*-##q`4eGvIO$K8Hy zlBSE)%jz2r*pXzA{X;nt>rQ1$Z`5V;qb{_lTa!|0XU&fq?~OthpjIYux|K0<1`99s z_OEg0w^r~w2I+CW*4?R$3@9CHrVUk1eRk*gMc6?(fkofV2HKV*G=dtMSA-SkO&V36 zh9Rf%d@%c5qQVhQ1`z5^6ood&HG3D|ko!b?57lg6jEI+l{+cPqBpQ97kqc7wd*A1& z+Fb@zeaI2`pvX#6Ok|g}F~z9t%L^Ims%v`LJN)D%8epBtnAf_s$1d=tJ@$Seyf_Dr^0LD_h*QSbmhyk@`O9Gltyh>LU zcaax_W`|otOX@A{C#jqq>;#r_!a$_pN1~BgQ$dY?hsCbM!mPa!%~u&NV+b3Y zx6sRT0HXq1kkAZ(_mv*&2BjyF;{dJ*cBsw@tlP9=#*~y31&%PCx$W;C&QG-3I2%L* z3Ns;K?^j||F52C+A0%yie%kMM(zd#3|Aw@!xoLG{`9LvDIVR6-(Qz@hDAcfnW3=^I zez#^86MR0XOsaiy7V7QWsHhkRlI zxQuzWa4)CPNSh>g)M8~&FPJUe8}Ayf;`+oxF)zcfP4DhHAHHm&+4T2l!n)PD18%c{ z22$Tlk^vg;`I43A`-MUjl7`9SGLd(j{k{6$qMO-gD@`%j0G)=1GedyqzhSQL_h@Dj zxR~glqQd?H+eL<;@Y!aWHJ@xCFk;72OEGO zviF}B__>YP0g5)ew5Bu!a$90rk=)DdV#`f_`7677rO)JtIkNytA5$zjZnt3v8lD%e zXs6Pf^MZ87-CZ9T&T|^$LGy{uAPY>xzyk{x3p}1L3(w0~@sfJW1ge>LH&uCthOyqG zj!G|daTw1Rb>29!2yb=iv$R|2h3vPmwO~7{Pu3a+jp8Azn4cqp@Y1 zP*6kC?C*^O$RQq=Vef!U+&QiPpv=BLsO g;@HA-7~UU#4^69@^hJ3ebLq;E5m=a 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≧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�E&4C2IndC}5C*==2p~+C)63#mMI`x!?kwaVH<; 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%0AnR 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�S6)4}XfTEb##t6dw_j1)L8xJYvq_I1kOM1jCn(NPGZfdgO2}@xfD> z9=Tphe9%jY4?|Y;5s_2k1K=L33|SH%JeBE@D@NjjVkACn=nAc|L2{2(R*b}lwWct1 z5+Bx@P)xxPvR5uXGMr0%fO9uJGMr0%fb(E_5V0}3>4APWY=TH_Tg3E;qoe5nbBsA< zdV~oQb1>2<-9ACw6N}Q3Gd?)H!<3Gq@i7rBWV)Gi=vpz+_~4Z$2q15KkkkYLXo4^- z(KOHm!3fXDd{{B(W_)DDT(I%MxkF|=aPE*n&K)wyaXbb&j>q5^0^~Rz zOLH8LL5|}w$ZV$I zvFxlGlGc(&$SWS6<<%NPmY0*FMDK-iVT1$(Kl1xgNF`~&x z59ALA55;AM0v`NT?Bz&!2<@%JzKv6D)?Ufcti59J*0d zV==Ee+G2Mk-Lkxj3p1SM%FW?yDvvXEzj|K6Y#a|W_9W1QBI7c8SdpWLq7UBjkRyNP z4AaDOMzjo{7oiQ~v2QD>Hp9az5?SA7twGRwJ?34V&#Pl?vb+-6hO=C`Is8icXL%*< zEiYj%jt8j$89l7AM4*SY!HtI(&zAc`z)NtY2lwBEB=STqsAYYEe_Xr}opyp47JTO` zlC4dJ1hx}axy1$Nw2z53voQC**Z@6lg~5h|7h=j>2os3hL!`b`?kC}jtHahH-qdb_O5`3BBvS&51|dgBOo0k*Is8wp}k^9*52TRaCVg8!P!yBo8dQC zZVqS8j_#kCXvxY|B49{_6x`JzuLvp2D?-Zha{6fIoW~2?h|wo&g}SxTC%iJ* zC@*lMv$E#}<{U#)q&^cM=NMX=^8pQVKA=I)2Q-gn8svPyTJz^FL=jt4 zP{dHe6b&t(_WG!Z&GaInXI&9PCV+&YiWr;pOcCQu5ikll1Vs!t`JKdanIg6tHOWGx zrHI)xSHxD>DLEc=A}{bN0$9vQ=&p7}Y&DNu5eq>l(CY^A7Sp^E@}h`|#N8>ZUlxAS zQ^Yd%rob(;QnCg4Z0#iSwLq{jr^a`H_YuxKRZy2S8H1iBb0rfCZoiW^r-tS7%8<|U zid;jObf(^k>auckqDkaxd4mVQ)i5S`oCeAp5*gnE3(nkP-+EyQS&YaMSjgNNF^>mz z=ai*fYX_7tYi&UZ%X-$Qgh`PGW4Us37?Ty3VN4@qd4o;v=3IsaE&FCz$doX!;F{J@ zEEM&#(P<&4D&<<*}4mN&#w94|=)%dj97 zEW<*kf`J8BtcqAb1&a^Vcd1~IMp0QanW4A&l@X_foT8L#?SKMitt}{E87=fFU;$&f za&s6ne|el9a&Q=SLwv*Wk~|+77UXxyu&_2nSVlc;O3@1hLJDNdut5Rqc@t-(fQbk8 z6tI;+0bAh;7$;Rq0c#sWvml0|H!)*FQJd{~wlX%9M?a$xa~6UaVji}s7#lLbg}V?5 zGj$dqHWWM>Qon=>V?*J!{EJ!M;7{yHO=PUtTUM?pC@U9tOH7CjS>7^d?wS?kQZrNQ z^g5Hqkc_OLj19%U6|hj`P+~Y_ zo#mAW$S{^GH-|B?p)9Z1kmapLEJ*!B`*oCv4P{sehwRDYh7_ZDu6%`6{-A>qg6{Mv z^ML4?g2yc*qUc9+jVeslp-zREQ}Q>HWf7-rR5BvUbZvFh*3aGbMkKxWLqueGbGkNq zSWP%ZR%usB}U~R<06Rxgl?#OCjWSmqN&k>J=iU?M&M`p}u*YE3Cs4>F*2h zt9q&zM=6`?#8JuyIZD|eXKWedj4gwlv1O1mwhVH{mO;+gGRURUwdQ}BE+0B?AJ|-a z-;Yj$8O~BY<3Bc~_xq2P>8t(6=JaL$V@vwe{$o{okN-&0H~EiF`UC!>oBo{t*qXl1 zf6S&o=s&ilKkq-br?2-PtJ5FyA6KMr_8&Xa*Z7b5^yU6zXZqv*V^{hL|FJv$3IDMt zz1x3WnZCh)tVw^;f9y@a&wuPof5v~TO<(Ch_NNc{kE_!E;yOT&pZ}cDQ)Bol_4ySMPA4k&H`j4aOfA$~8(x37l$J6ikAJ?G&RUtAARXf?Z zWeTl33H|(Il*Sb(rBJQ51h(yrRk;H>*^)>Cg6?>!IBP`;Tpuf>A(UGGmf%WMz47Vqiq!UU;I?ZS2vPP z@iT-qGm0{lP0~1i1|OnSJK8+VSdLz{j9iCJbsTSPDLWpO&v3P>l=xMJzPD`dBF^-} z^4auN%F57Jox)co|B6{0ii>r1du8aWt%a{tR}c)a3+Mi^yI_iDunUA;2vppMDbE|b zJQP#g;%CCtcB^+WOx3*gxbujy&w5F7udq~xsU4P#m>PGE$d?*1@O@ zhhMVSGRASQRYb_aDkMfmpGPrH7D}1%T_|;W~uh8GvxWQL)FXl((>f%=i3SX(N z9;RG-&0&h-#=#Vu-Ul${d6&f0!T6alb;#;n3{&DEREA5C1JCoVKWwQCQ%5WrF*WV@ zWgA~|wD8rj;#b!GjHX)tmFhZP`0ASCSKg3bT_LbAxFUll%-Q7%i=NhwCAK6BG>L9w zU3~-V>I5|-busHXp1Y)-G{m=kG>FHK1o&`(zZc-|2KYMxemKD24)C`E{7u1cw94Dh zTfAA$IA-JU{7Be9jWZ!%g zc{_U|FB5P<PEwTxavrD3^^*iikY<*6gnQr2u9!X>>hpPb+OoQTVlSZY#E-xdi>wLtSX)S#; zHG()Z^(JC!d2zNS2($vGTw%&uKcYDEY}r??6-4|lD$cx#*;lST#IG)?I5T+=G3DCG zVl*Xjwmt~70;XINWvzEDCbm8&&Rm&{>Vj*J*;j+&tfNuUdRm@-a|)>_@%+VESK_R@ zh&X#Fh@%e$_!|NKdVn7c@Ye$TK!EQLkYjdCEWS_h-K`6Vn9%8;#`aro#Y_!aG00;x zRDu<=DzN>PuzdtIVbf{#j`YDFwL75L2yDr>ha{_?di$=B#Qmn^FNY-8dMNqskkpCC zB!49&*L(68LXs0+^!67+a?X?Q2+56}{H2iG zKX-yDe>qt@T7H#JTLVVi?26s;m5>U`^e~JJHPPay=YSFJpHPddO!tv6A|D_a(ZQj4*qg~1wbfRXa! zkXQaO90eogSNT1RxEU3@=?+Nf%1N@Z$-yPsD2l%c4 z-x=Wl2=JE#U%sw<{dt>Kz2mbIqW3sDi_JK;XuJ`wDIXi>3+VPRyi`>&7p?fxIS|L; z1M;8Qx^SsGD}Pz3%RvpNx|`&Go6;3x;iQ6&j&HcLJL8MSoB1l7RM5o_CwAT4V(i;a z$g-0P8VI`8X`K)~$)86uIbg~Af6V3HHk@O;{djo0-IG5Z-d^F!N5k74o_teyJMYO) zg||CB`E%jzE>He>cuRDt4}0>{;q4JmJ`mm>_2g&5+hd-5OL%+S zlb;Q5ukqwt!`o{;`ML1+I#0eWynUJ{|1`Y4-jhEY-m+&--T$-jHudBi!`liWJ~Uy+RXp8(>5#M=3CNg)S~G4n;Bv(? z1RLRUHcfQDLKDWO<(2GwinyL4j>j5ZbQi%FFp>CnK`-QwjTxB`&19QhiL{_~I>qTx z35)l5CE0_@H}u8e0!?n>bhL7`0;AA8t@)65$I!gfj6Wi>9@$^9~+T!SjNfx9tR zZs6BopeU#LnhFU}Pj(Mtz_Z4Vof`)B#M(KB%zMSceRAc{UhR!}s}Wmj(7vI0_s6`_ zRN_ipa@9}_TpjbO+#Uvsa@lF1Mui6kG2mIx4+95d?b2whr7YUxMI1&0hhtujF>`FG zK}Uw>JsR_Bal(dgj6NJ2ih<)XugdLVpeTo(2F9uInn4VB*7L)_wXt^25%ZR^V4qw! zv{z4yd9`iYu%!lFKQ!+RG4FWHTc;1{Pz;=id0DBDj9wK*br8EWXQEl zlA#&cL}sW8T!@8Gi)9)z2knE53&o5`XO_EFauA9U4LODsG6XTX(47rD#2~>Sv4kKv zV+lDn6-o%Abny~`aE&Dtn3pv&h}%eh8E>_n{^~^#z_A3ip-0ZcSz2gZkkx~j^{*nr z&I7YS?8i3c7+t73C<2S)C8!3mgdF<|B?M(*@e+di5KAa9MZ;`RC>Fb4hobDNy|Cp%hP)M4sYf zNef*<22HMMz$ABLMrIWOJBv`f)lXcWXUHgi%Br4X4HKa&mvqQ5gyLB~CQmFOqxi*2 z7(($@Le_?i;@j2+Fx=OMeu`&tOvqoW6K6Fr#S_mq>fJ_Eq(spWt4+QvT!LO`+GHePR$s246j)`Dgf=yx8!GKL6YY^5u?SZJl zrU*NNq&tQkL0x!8W>d8N)Lo{?i@Fm9o8qycg0deuM@*eyQ~YIkJKUytJiHxlQ~Y&! zJKU!DoA7qHP4Tzk?Qomo^Wp7qo8k-M?Qomoi{b5Xo8qs++u=6FSHj!jHpSnCx5I6U zzYlMR+Z107Z-?6yUkY!B+Z108Z->|vS{XhEn?k`{Is)(Muogl%%%+$yn_?!4AH_Wt z!Z;A?w*1tPP2p;Jkmgx5R}7FJB6AwibcpON=7qgwx;^CwbHdq=q9KD7K{M^yLR!1y zc9|av$i$TqOp0FqU`b^8JsYP& z)6o70!(plZQ+_Zedi@DDMAjc~Xc<3(jYlvjdijGLk>&SnoY0WBB_@(!LiF`t#rFE& zXHQst3eUiv=OZGn)4NLW3t~oa(di@FZL)IVfe>IMOFeZBW zgAI}8_wncCg1j9ukp%OBZ2A7PNF%jKJ7`Qh%3>%8rO14N!Q2>bOGvEUC>z3Ui4|^3 zwB43y0VL2eTOv(tE&937QX20NlOYa7{0z&&%9WGB7!kp*5|lwQ z_EgpIyr4_bYqu_Xd?c`^kUL1wfl>CLYg@8B&Xp8M#reis)(Pll4s?zvDv9TSO^)lyVr2VP|HE| zXY8{_YGLnNC?%tIQ~uc~6`mKVot^K_gu`aIkSU{f_bFx{7pYyFUx_q6>gR(C1c6BuJJfqTUb#mX}9Qn+gMvN17Wg^aYa(Qk!B|1T23 z^`OO9HhQKA($iSa;wu|XBB`CV_3{>+gSnNBY(WFA8rv|M8?fIF0Rt|vW3MEN``2~| zuJ)D%fe`cNFpzWj6;?Ky#7g(~D(BiOtZX!sXo&PMP;lbqRyG=$HPXYtC@UKi1C|IF zSbk+A>9a(JU|_M8jb;+fkzTJBTiIw5`P`4K#a1>NnLX0Oz$hyl69cvg7+8K~Bk8k6 zhG1Z^m5pW+4U!%P7F*e9Ceaw_TsB(X1FU2ZP#OSil&f zHTyDbfguIGHB-{!%0_rT+$1TmsgN^M(E3U!DrnKDQ5(WSmzHHsch0ml@4oF7lt?RT zX%oRF@ixG66o9qpVr{=Y(vR7TWsgM6<``YT%Yac5o)0%lv|~Li>T!6#<7L1g3D1Wc zB-+-RTkb7dC4HDJS|vTqK4~i(nMHEWD;vWWFe1h0);W9u#3{bGvXN1|J33ZHgQ7_B z(MRaiR$ST0D88?RBE|Pg5XBc)HZqF$m5rNo8tap6Z}+wuMO}g z1N?~qe>}j~1o&z}u7oK$xW0Y7`HJ!K+Sp+yL;dM36t1~x_YpFO-{7GYR%7g;il5%Im23<&3nAWO!D z1h&EJ+qiPTF@Q?Or2_7gP%^F!aNw(waWMd+P06Tt&v`Ps`#I`WZ=-*o17MYm4t=he zP%?V(IRjS7=(0~d8GZB}+y+Q8P@(CaJNm7p-JEssI0J%`Hviy$Nb0C=tpAB}$WE$+ zKS^7biIMf)4SHB1I@XBGB4_nP%Spv23fe3_QG8|b$v6>|#V6WK=})+#nekMkOCE@* z$DUI3V=pyEplL5vBTTiIQjlverO4V|s*Kg&OL5;}zMtyr!2ew0n`p( zG1O@;3Y1oG!;}Re;tf&MW!&4vlz19*0dSpzYaLwU;JAZh4vsoF;^44@Lx8XT%Y~e+ zr|d$`V67C7ZPCex!3(Az_-{3*>}R-()0T+Rb$*fWq#fdC-(YEFS%-gB_OEpNm(H~q z3`>lIB={LKgmLG4v;#^s#vrPsUyp&LV}a8L&nGCYQgva~SuOj}H|_+|zyzUf-#&`nl%_ zUop}pA8B2m2z_8`E?*a4Wp(u^+*xFHWckzp_l%eb{2=C(ww6(N%mcQJd#W`{_M5i! zbI;Lwka0AlRlhNGc^qeT*;ky~vplvKnXE1ghr4_(_UtFo5%2UIMxt5^BU(fxYCi|B z^&Cc`BYZW4L`VB7lIVF~@_EqJ&;t&xc5s!0{SNjy*z4d*2YVds20V0Wk6H{D?kK{I zEq}Tl9(mi@HLRj57eX zVEA#eL#}eqI8xMD*m&4OvNNlAEuLO57%``Gn~WpHJOrK?M_Nv|$#Eo8GulfjLOG5! zO6H6sjgongBgOs|FyS02_Hqa&GU|(Yz=Uz66fr%+@yE{vY`ILl z^{Y>w*`8*ZGx0V`=8Tv|$;_qe`Ku5o<4%O)jfk^;660ic6(WAbU9MN{bTIE=hl48| zY!-I?JC&`~bpOJ(>elMk+H-0*r2E@!&_cUk=!^mI zbP}bM;`^Mh9PQT9_m{tYir}MKdSCfediJAr;k4PQ#ViNA)tIGP%u*$WsV3YL%H*Pb zUHY#3r;AUr##*ZHwM`oub z{@(XGwm#76HcKqEw5gpT)t%MGi8JL_oG3kSs@Y8UwD{-B)?_o?+nQ*m`&x}=y1!L# zrdPGbo9Wf9v1WRpRcodPTh(TIs8yjwY%Gb*Ds{`fW|h5JWi@LoHft<4YpkzXW1(54 zw0U#wbh>klahXqdCgooH=7=?`Y^x^Y&6#EsFSdSLDA_jxaeO_%e+rO$H;rhxcheyE zZW`p?O@rLKX^?w24RY_MLGIl&$i15exp&hbSLqn!DjkDdrDKq*bPRqmz%K;IRXStM zN5{*nM66IL`~7>w+7_|eN$HaiqVJAxb!+pL7H&AeJRAy8LZ$&WcCZJM#>wuOQVqyE zcqGOZeD^G&hUeQLQA%sPs2djt(HE$r)MbPIMocTQw0tw%^WoQ57HDW%dWLS>nc|@sE`6HqAi7j_Nrfk& zMd}psp?cbe`k0{U6Q$eIGu?$1n?;eDlax}qnGITXm9&xt5{!cK?OFnw)|o2Z7UvAu zxhj@iNY5lU!)~8=qIz5UvgDTAZkj5ORzIGPzWS?ZAoB94V}H==nA%ZMJ2+9)+Ofjg z!C}}sV^rQDHLK|@spnf#8P@(8w!Zb+ucMOGgPG!YrSw%FFpu`j&eTqI8)6Nm^j-Kt)nw=S&MQi3To!Mi%lxhqWuM)SUuCh03-l~rbU zQ=O!KSkHWAosB9NI-K&3L&Yp1Co3&Ey{1X@j2#kb|Wy&B4+JIat~t2TPANf3J%AB1WLm zsfpz`x?^`>=fEG*(hSlRj>gl{N&Q=U(McBwH+ERB)hDfPRsYn*arq@gjlHOwNd)9U zGREkQJ00=CeqltZqtc9kw~_^LqhSivQ_WFI0a#XXZGPVhHBr7=!|~sz^t(OBbY0Ng zO+V~>O~a`1t1x~#1)TD25@`I;+F;3>7glU6*>q(X99x!K*{aZzD)VesnK!0bWIbP`H_VGfs_I9J z#)o2+RgcWPC(ja|Xe$iN3_+i0URLkS1)ybOVHUag8aUVa~wZ`UH3JOEgFuBV|B~jEyLo`3OX|%#* z1=w>@fngH1<>)74kg+-<{_CN)TB+z^)xOb)RFd%=F+fUIfetYl{M3V&#aX6-QR^x=%IH4MAvBp}g zv6jBJP-89BIHB?q%6lH4O=vZ_@|>v(mP^*Do|Q+jW**g4MI%O#1^30@WRXyu=QF5rN0ZC@P$yYVH$x15Tem#`^3Sx+7!GhpdP`UXP(8aG$W?!7~U+phrNoq2pM+!by6Y%|E0-X);eF1U| zn@uc^VKc}vYz8@o&EUHOD4ohRq;HFc{fnfj z!wwEPIOyPjgR31}xGPxnv{i;f* z%&Z8yaAjddxuoXq@(*@8n0K(l!4(cl0BHS*Qv0CbHv{}efL{;rp91{H0RJJtuLbzk z0RKL~zYFjy0sd`(e-q$e2l#k^Uk>m~0sd8hUkvaI0e(KfzYOrP06!PtX9N69fS(TV zF9Q7Y06!%NhC-6=PloPKHosm$<3iduhDdwohDV3U$%*+&!sGTWGOygt*!=(5dlx9V zuCvbfoKsc(s_O32!sY&`OKk)B3kHo|j;4@`5F z8*I9($9T}kkr|pzF8d@b*b>%@OLft#xhAZ2RwOSG&D&5Dit~q*ib@61ek@(*DMivr zYDdA4hzJeQ4P-r7@l$Y}2_j))7n+>H0lBcQ6$qCo9#ktkh1Uz~r;hVDeeWP0>`c=`>gaCOP`19hp+sx@ZHUWK66dXoVO429 zsJB82eMs9colc5LsZz!Zq6WrP+U-$en!Vtdw)$f_sc~h*QPK^J>126Kr4E2kW1!G! zgfW#2DapL)V=6oDFMs*!!wl04xLn zOf`Qv6`SqNAD+(MbP3MGQyFj0n#!8Sn$8n68=WzZ8qJWJ%dX08hNs7bTy2J#9cc4} z4DzkDquQ)F41%)yf}kt}L0JfbvJeDiAqdJs5R`==C<{SQ7G6^LLhbeC`~OROecetJ z<6mLjs=Xfz_5ITj{z(Ww8p1zTXb9JWBke;@Pc1m?PlpJ;bA9@fb0%!v0s6g|mP8f! zFheJgycUJPbwW;8Xu-76h!N~zGZ@a!xLwrQN%4e(I{+^@cpUJZ4z2@ykAqj{cQjGL zzK5X}Qyuuq?)93<&ElOz?;<)dncXcO{j)^xCOUAO-K`$|6w!N#4(w-ln@3+D`Uau{ zFWPN;^bL+6_-Fwb;E{FGqU2% z;?V)R(hRJ4QxX}+%|th#DvjIgM_-_95f0^SAM0!vg$Z9NG5p^#@Rh*uvlYjChc?-el|rF8fBl(ZLw)x%=>!sS?D;EHZPA&x;%E=<;7zIJ7t&m zIu5~hLZYn8n&}BTr>j1!-R1~dqV1h$rqf1@2Ad0mr>3duPP)8BFhLYS9bJd?OrC;T zOeq$yvua6b*ygiuyr-8Ht(ZT1J*59AW=~I>&aB>pCVEiIAk|@(U4hfL6d(9^AEbnY z{S`^Cbky47_a5c)W!h+IuA29K6Dgg%B%n|_P$*q$7f%HWsX+a2znGd?^Su;0B9sCY zN&)J%pm^e4Q~KmN^n`+?G}b*t+r1r9Ru#`bCS{8zQvV5`oW%psui{hiDA2Q;3Yoao zZs|_Up_)IJug?LPV)^y?mV9fz4ORFY91GL5FCe1LVLa$KndeFUeAT_(IoHpg6wEeP z+W!4IUxEYk?`S_R7ph_guHX|`!LA0Nj8}Bid+puTC-d~)lQ5#ZDgV{6icWlx=5=2} zD2+{o#V*?>JNi*P-Q0g7`zv}+>YHyIcsf4tv}fQc&u_}FP-n7UpH3D#*ASv2-azN9 zQRl1&z`4&HWRXT3ud@P*G+%eJvoT*ygF7d9y7FY_NUzXNzb&2H`>`+SgGC=)=!0L| z2VdF;zeeM65;xKpE3@M-8CmW{Vo8}TwSEcJ6GW|DSv6F!w_mxbh=?azzVNs zCUmaL^ZfAf&h`0K}qnO1j=KZ>`Js^8nW6`eAwaVh4{pm9CH_^&=b zCpLM9vB@j*TlH|<9-uxRI+KggP=eYO1r(ooAgo>cG6n z*{fflzeK?+^4onFLC<@^z-hB{410zSsNo1(jr>s*2A(R4GhtM(JFB8nW;I29O}`_s-prG%-Kuzm<1i4E|o>za0VP`%g0~ZZ6i75X@kb$(=(r@UDL6~#kto|z*g%(aeTHZ z*X*|1f6Xbse4AlOHjVSClh^~nJL>46nvBuxT5-WTiD@wGh@9Un;oPPs=QhqjUM&Wa zyN>gYmDHl7X-aD4R}Yn>3rk+Gq})pqfvBHcMBSJ$C>$F+KBtYL^~{0U5Pc=lS1P)m z-`Ny)tamo$HMR}Y&b3US`Fx_Y84HelJ4utw-tp5qi22lGQ)XGzWy%i3u)msLhg}WL z-kI;pcjtTZ8}hyRzV?TqPWetyT)s;`yY;h2KR4)SuYUIN1A_Z+Y?fS43HeZ?wX$BY z(TBa!vlrTNh=PqWPEwhd9Dm$FF4saL2 z4u>U{NFAEKgawsI+B0T?hbAQ8tNuo{t*(lCeXljBO;2$wE`s%uAkb8|~TVa81)s9h%{TBxICDU1v@JZN{77IjoAtg1s z6v}ml={V3c5XG)yYJ^nN3acfJ;G3yy4Wo9w+Ig9m*{G^2Zm!Z1W1VT0)gmWZi=1Sw zc+&uLEb|B1Tv>(F{AKJQdR1ksQGkI@-Y4jEm)$ShahpKYE++0h)8RmHk({7`nWl!B zY4ODrbvez>YIJQUrM)zcD}@&G`oSa#EzPe`TXVMcy#1NlZ#ow!z^M0YFXnw5wB(m* zo!yvkR&XHSq~Ksaui#LAt%4?-TABxtny(_a1jK_b86NQ9Mi2ITu+M|N9^Bx;9uIbV zu#4cYYiT1|aO5R%GB;@w<&IgOxZuZJk)TH)!Hz(J9DxKk0tspa63h(mwZDMjuk{7Ql9W`~$WF#8|g4)tSJ{H>Au4uWFhO?tR5+%9Lb#Q!J62-)S4{ zWuS_B*uP1`{>^mX_HR$OG0OHYi_0U6%Oe}wERrFmmWSE;`JNk8TOX+%XRn=ApWc3& zr75FD9@VGj;@aFF07 zYA@&nUGZ#__R5e%?UhXc^+)O{p83Tq{g?K>ZR4rpJ->4C=X&kU46)>?)t?U?@S<<@ zV7~|ZJlN~O4Ib?AV7CXmJlIL_&*fe)>sQHmX;n#PDM|7AnN!6x?|9?Yi$&9V+>)&m zMr-C=k*JSpxFZ4>Oyk&+yg4L zeF4dtaPW4$I9}Y&~Km=}#!2SsAi@@Fp+z^31 z5!h|Ozt(CFooQW(hVRu~+Jjc9_$HV{t31nDiosLeq`2Z$h3dBxMh6}TVS=CIbEn!* zp$N%S=~cHBXHW0Vwg?UH&E~m@oZ9b-U)>pj9TC_bfo&1k8i6elxIO~cMPRc5KbW~O zSfvert!T-_#@I2J2V_k$+Z6va>R+DD%(k%4$|h=)b?z0KZZ@W)<`>&=WLL@Qt_l8o zdoI!rr%aj!Bd;SIbpj4?j1h2*W1IkMoSLRC=0;*V>2r+oXx&d|j6ou{RtDEHn5nhD zo3Vn$x3!bR-a67g7FSaM4#${75jYru0};3}0{bJd&w&3tkxib<9=N8~kqO&Uqr}KB zH3BE!UP#cuzA@|tv}GClau$iiGK_kxrq6OU0w-L)z85uCEJ^h9DM!*dUncAiX#pv< z{q~gKW2}&|EeWDPax6FYoTs$-l|%-sfLZZ=2aB3^4)KoNNox!_EYpNsP|0$O^(CX% zFV$`bq+jz4^)afC{MZ~4L<;NFk;Uw|d^CX&Ag9Guw}C7g8Wj)&CoK?Gnc~Wj@m;tg zKt_NM@W^s!-}bHFjfp*L{Rh)^+Uf65odWTYKgi_&u1fvrV5N@ygQ(O`mMW#isd4-l z-3C2L{~>E=T*Oo`E^=JmP`8uiUv}$cVf6A;<5%zHL*_#_o7Y3We--jEri1yIAt3W! zzE@hlnl20Iy-uMzkfo7l?IZ4}O#dWNbwt2MN16+U)l#(G#Ne`OU9_y27f+R1%e?qF zik^P}6XWLwYPBUfYpZoj@<6vn`+Y`#%JN`*{ABz67(?b`Ta$C$TJf0ZMac4tF$?la z@yv(9@gZ9SSWo(5X0r(7uuix@O`nCd7k58GCq8UhcS(F0gk1*AIh}d!^o>w>P|{{N4mfk z;U&UxLg^nl>>!)#ec#HY^ zDke_DguLUE|MjoGjXBrJAO?*%r&L4@^?GsB*HRfaLs%I{^mp4FC^D}J5o$liW@Pcq zo1w}{HW= ztWxFTjvUj~1_MYgiPF8#V*ZrmaQT|`QjWBXzoBJQXcCHl%?d5GZjO_Sz0c5R;e#EI zTbOA7J57*K3-+%y!#KwfJM2flot*>~Yh5&4G%Iz2wR-eq`-gF!;57#A*VzYvLqzx1 ztt}+`SjZMYB=pqwV66wa2lF26@L<2U*b7mk8^R50=KHBntFoD@3(erWo0Ft7L*FIs z52xKk)hP}$d^3-?zbk!mA%8fZS;!x;hlduv^Jky<)N@aN-xJ?)?#?+8Ma`)8N7Edg zDTQe+QjS^X@6BEfM8}{W(DGt7e~Ux+8;^3oKkR^0gM-4$FPiCWb2Tx7* zqxjg-ldu*-2$`+oH>KiTos!8M%4QSUMBq?}1_CGMLn{MLM4Hrk9ID@D2Iw4V^-u|S zssn$BT(XI%%++LrXrlcnL|Y#j3t!5og*~>!Reya1u8Y9t2+T*|+6Zilz{Ut95jfJm z6?W;_EE|K(F@#lQVqJ=V?F{j1X)TVkAUG7+k428q4r6BO5j!u`kfFVC9?TOzNzp(7 zUt_|cf_JQ{<64}N(YYzJ6{Wm)|IQ!%$+xl!8|oM~t!4aVCw3Z(E0TnT|9>7c4YD@4 zCQeVgLa6BnrQyUDs6;BW*EMc`lr4n*L_2<(r*z6k7% zzzqicT6z48^^D`kNUg^1?4O2*xs-mz;n@?rb$0}IMPO$Hc0^!%1hz$BYXr7L;Q9z$ z7lF+Yn2*4<5!e)gjS)y9aHRdxDAfeuu*JNgj!+BHABX5Kb3-s*u$LW(ys#g0v;Ce` z!iGj)5S?^@72{z^BFF=9X4%n9t0%d&n@MmGhRy5k-+>=+;Y$%Z9VH?U$R3W+GH1VH zo?vyv+Ca<@zsYJuoKA{Ae!f)*tG*`{bp~asl=hnhj~8!WvaQhZ;%$G6*%`;?ir<1; zfLY<690ml-E>_i8EblF!A1Dv@rB`09_}&Mtyjm=;R{Zurd104<@-kISYZSa58<`ap z4zF5{v!2LeE2%_?c$)qcmoy$|f!IFVc1(ga?)6>o0jtq*q1cZ;B3!46P<<(P4k@S3 zcEQwmCleu!Zu@!RBB%j*fguqB=^>FGKA)#TFo)tqIT(Qh5x6k|`y;R~0(&EHLj?9j zV0Q#|MPO$Hc0^!%1hz$BYXr7L;Q9z$7lF+NTpUX$HG{>rE}Ox~BRa94wm-=+M0Im$ zZdyF|rB?foEGjKN*MmioANkXtf8Do1m6%X(dv*wzv7-l_?(F^ewNM# zsk2gG2*+&&WRl;R|5AMsxW{a9RwCZ-{i2r%#n9#xqh*d+$h%fmG#>>T6wCZKWY!@y z%PjJbX-oTUlHeDmu@T?kYfc<1b$QEwFe@_Dv*JtGt><;#_@EeH*dF4=M{|H$6iZGTaRJ511hm1 zJm6}(mrSGmkoa6TLaeuuDJX|7#K@fvm6`*b^|rMA>2#gCg=wHhXAJKzFlEHt4wkEt zQ#o*rIio`Vko9-SDmG4h;iCAoar;redhtyrF$*6^q_if$fNsu`eUiexFfl!nv|u>o zy`aG;QB5B8g*rS=swqYTn?BVvS8dtrLs;gs>XYVXQ>W7T#gE#_9157vf^Jn+8_=!J z$JKXj1U5w=iNKNe@knd}a5%;sion4L95CPy#xRX%70VsY(UW}-BZytdo>_4S_Q+dB zAE219oyjsyFtHoUDaWQ+@#gHKkcoP7!+hwZe^oj=bo%R3p|t(}AH9 zvRAR9OraKgf`YyHS&<`6%Rrav#m@}XA|3{%QN3E!U+i0|1?Y_-w01K|09c7yd%pp< zVrmAGm~)m#NvaL~Cqy7r^ow6;K@ymN_@R*sTSd-?B5A~MktW^pkv%U^eN#2^zX z0Q5|kd1Za6dwpN&y_FO@iXQ{pS$&kt^g>$ws^Ngv*9f5b2q!k93X8iCTf zX=-aQgD5k6N1)8dg^!Ig^YWg7Xq6_l>jX_k#jnyaqLn6&XU2yBhOmIz!Q zf$Ji$IRf($xHbZtBCs(68zPWI;7I#rvHt>aIK~``z`+O{h`@~z*dKv?2K?XZNQUg~ zQp?F;!!~1xI1eKsI_8w0j%}TSabSKGYh7;y+!#5!e%f-4WOoft?Z95rORy*cO4U27GK1WTDE&e`=MKMWC+Y;`qs#Um35}|LMQK zOAlm!mzVz+yqo?n_{Kkd;(uQcBy2G+{ccuV`d#gFn&5-)mM)5kTJgI{@o_LdItpz> zKl6K8@zn3XU@rEl&;LQjn;-EViel-5diq_LEgYE@EfWJAk<@wWrjiKiA|!3_Tt+3d zuV5^Z2(b7a#gox>^cEnwxsKj~wf>ZQFz*2@ld|lGzcP8yJ}I^bMy>rl={m>wTO!K4 zJ_6T8Ac??{_HB_o1mJLtITV3|5jbGL|7DgGRNn|_R!kIdc~TnHWhqf#6e-nXW3K(W z%$!1!QTmMf8OdOCdlLwOHXbG9pxuB)Oti0qAP)9#5JdrGGKS#B`0f1>*cXAl5x5}& zdm^wq0=puxGXgsdmd=mLZtogh|44>;21fS6)#iooFr9E!lf2povOjS<)% zfqfC!8-W`luqOh$Bd{w1J0q~efIKYax5zGwr7S)kWFt|_4n(P*+v6+SBCs_ATOx3M z1g?v~<_OG3;MxdmionJQBoR2$etGPi0341nhazw=0tX^+V+8g`U|$6GM&O1B?1{kc z2<(c$&Is&?!1f4ii@??hBoR2${`y$w0341nhazw=0tX^+V+8g`U|$6GM&O1B?1{kc z2qY0W(*Ec1>j5|%V-7{&U<3|CATdBlByDHBFC@}~aL60taLF4Wobm?ffApZw_aI#J zhE$yM2Iy~k5Dt1n94>kTgp=L?;ifl0IO+`$u6hH6v)%yVt~Wq9>9O9luBlL5lT zWPoro8K95!ARJAGI9yEz=ns1k-U&k-{s{wwhr$5iqcA{tDHL>b5HlambczeD`9xoj z$&LW*&YL|Ytada#>>iu+zBIYGVvJLelbR4XI}8Qm?l3?&JPZ&n4+Hdp9)ttD5QhuA z0O15LKu`A|9N{VME#ukvxv^*=xa_2l`Jj_4x(O`XRqb{gW5C&kbN6>=_SKT?Xomb- zoIBB-lJb0EX~KNnG`J+8b+$XbkmUT`Jx9)5h)wZ^*e8&)2#u7M9|F=Uzrp@nPxQ%h2Dm;lCoEzMC87CSi-E(4SsFhdrNNOrL!C zeksf+i*vW;%`@oJODShDP(agIF6~Y%hi4Yjhw~Oc-PYY~o}icCT*CyU1sj*ha4er) z`11dA|5t1i8Tz$Uxw8uoPN=|iVX57ju4(H~C3m@(;cT}>5Aip$hsZEkn$?oVJlvhW z8{Y+J{yWpORE-^{1LTG6ob;$x`IZe2BU95basBl|dVd^>v4tT!7>jLS@^RxhL2ejOQ?2Q>J1vr7_3h0pdzrPIP-*2iV)3|U*adG05lwd6+0eyUvd zos45k)+J-=KXyF{zFu0@yrougeb!xQEvGweB%)^Ht7vn#+@3ob`q3Ytk7wv{>`G_& zPJ^jIXHOKr|L3M?pD3RHecJ$@DE?$cS>5k05j9Fw5A`U;WO+lY7hFA9(1t>;e{{c!w+A8@WdzR!?RiE+=MVdliiP{ zdf7&}uI-Pebn>$VX#3ePV)wC&`IRc!6k1rB*A33cJ?g_XPL8`YXaP>CT^h6iU2$o; z+}XW`)=w9CasH#)wt92Aj)j(ID#>DhpG!g%t6J>Padi_tTRP;gErk8Wm!A#WU1Q~9 zZ6~iyhMpzAN)!rem*@RdY2LGQ2p*$0gHwOnP|~bwX(*{y`V1#t%TJDym_2t>Pn=E| zN*ZH!Q$`OZ;Wp#eyd{)WN&zKdV8_l}skl4&Bqu-@w46!Fvu_{*Pf|1l#Mc&b+GR&X zcj3!FZ)!=D>&ELDZK1_nz==`cmoDqFO(X+!Wkp@QQh|0Dt&rA*S+kDCLjn@G485@m z@=saD-Ii;&eM$~4w5?lHjatQ{e`a&P73Y4dc;m|Q+}CELjwa$%hn>|8gwL?IIYam~ z;d;W0gc}L*8q~Rx5Pv|OO@w&*>0Cv4p72^i9XGz3@KM5fLd--v>j-7oc?IDm!kkcs zotp_|*x4bJV~*8l<(NM;z)soz?AR!lwa*d zS}>7Y(Dq<$<$&X(!xz$KFE#g7YO$1>d#P9C4J`(4r`}iN<}o?BXcMf~#Z6jK=l`t5 z!S6R{$6ihAj^90<7$I4K$MG=pxO-k+ggH)=*Y96QU(Z==`<5_w=rL`%Cj6=G!P;CGlwTIcY~IK0YM%)f%a~p5V|KY0V!=diLE8ga z!1fz*XIGf&@=)ZpUL*%?HQ*LYkym+F^=m^R8@-VAj_NIzLe_gBGx<&xJ(F+I44uih?yKpVFb>S? z_N~jce>sz{!LbX$TKT($tK5enj==Wkn%IBA#GcW_o|Tzn zp54X#tvA4q8aI6q+^3)ccdN@$$f7xEs1|hH;YtcFYSNO>B$YYF_&2~TFj@0)BzMl( zfK8kEy5fV55!XeGxUP8f07hJA7?HI?wc5pnKX2vosu8h01#WXBy`3_57+T&2w4EyK zV3OfxN$V1>gOhA%DHG1ItJ;(Kj(mHb7_%+c0hzc5yzFL$iI(`;4G^Ao1N5#Qgty%g zhritb{d^C?=Wd9@>u!MXyDRAV@oe^7Bgzk#%7*(0X!H_mvW^p))UEacgNi@_GM2+@ zbf)yJIgD%g+_3BMZVD!Yso={n2JO0}zaXF(w8$>zSTR&Q} zvoPje^f4~@lQsw2?)H~55n!e!=CnX-PhoS5LkcKS?;+`|7NX6L>S~a?nVqX+nvO8u zsp;xnWC7Mh-bEIywX;s0dI=dYb6y}nw5g9bUIycgv6^-1N_8HSv$IMwbT(h5$z_T3 zY+%Nw^VN#wdL7wmX>mOWA2zKHu`Zwk2_M6-)0T<#!2_q&2douiLW-Yw*4PHfud~d} z;->~!=IC>;;anMaNuT1FgfJ`@?8Ju&2zGdop)ht+-a!^j_!EaXeGXk-YOoO6L}>5| zpF?04waH>>>5R{zsr)j<5^%uuYFCn133W5tz=;rd~Q>aAiQn|2*29_!t-{3@Vy-%yl)5SLJz_NcZkCWcYuDP2R+e) z@WdTb@x>jWAL~JH??HIv4ypgX2Vp7~;?DOVJaa4V?G26|nFd5>QQj6 z+ByOgnR;cdO47K<@CJ8=K{L|9n%De4jcdH@oEEqVFRU_6;NZ<;HPDJ|8Ejxv_|gXy z4KA8u(s0$RFbzVRtaUggQ(S!Lu+IIWblRM?_kr4|!{%&W5aKC#qy3X9JpPQmjORaQ zLy_Hk0p@5XpS^ny?j18reHJ4xXM_155qwZbEyD+4-}FJ)Q2*ctN}ecxFxLlH#1B$> z>n;#Z>+Aycd-)kzu%?=K@mrjfkO`_zx_}I(gbeIscvc2Pn?h2H+DW~W=|vb&tE48a z7KWV!4c^7l+vqx58)nc!SMvh4y0?*81A~n%Ue~l_>vu_ggkDJ5+cL12xN!Gr-p*X{ zkQDR9Z$S?GuZX3xzl_jibv^0$PCS>+2W#t*qj#(^JjiFh+VCMCAiT&22tV=x!jpV}{#_4xa}Rn`5Bh-~^!+{P zu^#k&J?MLT&>MTuqdn+*deC?GpzrEIh<>3i|F#ExXAk<09`r~LdVLRixCgz?A=|-G zaR$7~fg|ms4%`%h!x1&XU2yBhOmIz!Qf$Ji$ zIRf($xHbZtBCs(6i2*FBFDLE0XgmP=aqP!TU?_z7o8*1m94C_mtq>C3sf}-dTcol;G_pcv}hHT7tKf;Ok59 zbtQOn37#*(*OuT-C3s^APD=2R_RXdK?8Apk@rO$A!4iC+1m9SK_ec1zQa|&g6C=xR zvxEqs$CFB!vlM@99CAH!$ixuQw;_+#+h(YP9z`Mw!Um*J9IHVSVpk19*$n@v)V2F+ z$WwyyeYM=7d5O;!w?h)NLHqaB_CrRGo`e`4Jy|aG_`cflJdri>9r~t1D%>zrAtP9+ z+selnP0M|;`M`Ti@C_w+PYK>#f_IhRoh5ij3Ep0Uw?%j_JL~ARt1qB}ZGLXND-+pb z>6gQuQ@TgWR?*g21l8SAg0C;Z*OlPSC3wCBUt5AVmEesfIEnDAR`S7{wUYH;ljoa; zo(~T_9~yc-IP`pA==sK>=lw&^`-YzP4n5y6^t@;2dH2xsuA%3hL(e;gp0^J@ZyS2v zI`q6{==u7g=j(=^HxE6}4?SNy^t@^4dE?OYhN0(V==n(drlIj1d_FvserV|V;L!7d zq30Wip7#$u?;CpFJM?_R(DR<5=iNikyM~^34n6M}dfq(KL-q37#|p068v z-aPa?KlFU<(DSCD=Z!OCpgU^SD(hm(i9~^os;~J`41+Y zBpeAvThKpEc78$%QGAP{^wc4~B|;pLbg&f(dr6!@s2$CY(!uqU#h1sA+buIl1RP+J zUXYYzOOkZcnN4Hqi}){*ioss!P84@67L&J|j-bJ*Mbr(oPJ%}=APT^z|G| z6|XTSg@O)PuP#3H2RfRHt`bG;+c?c(oyG;u6FMf3Q#Vd>$&ffjf?~enSk|=jlYFBv zKV3-^9dH&7ZbJ8)fA9BI{@3@F@2mVxduspfILf$iUnR?jdpz>N1;s@NLouithhk=z z#h^17$}_zz1_j1Yo~VTEFK2v84CTREsT}jAG;83g2gM5qd@9^pQe?PR*@BJ-qbxDXR(ZF`Xq@Du9B(y;7is&vy|4lOlO+(Gm=nsAMc3e%A+`_2 zj4g{{bq(byS$hU#YK_)(?V;Cf*<0zd7<5PFlCfbgp=l}k)KvC|rgEJWo^CgrWa;!@ z8kMDl$VX)xN%eyl7xS+Gz%j^|1 z-&e%b_msO|mMEPRkMN|!(*E>bp5(2{pPu0f5!Rk`4n%LtZxe@mMRCy7+Ux9_#3-2x zsf?+96ezt=K_C<5>Pi>~8$u+BkRn^BpUv5~HeeDeWz~^)0F}bCRY=dZTZEDlwsy@2 zqaCG{NuTzL-vG_CZO7hOW09~&wSy)s7q-%};wPwjUs2$P%~2Jx>`PRkvUkZ+A`_#s zl<3B&EG0rRDocs7jLK3%wWG3>aPO!rC1gA*O9?xV%2Gntm0A8U)ur?hhEsTA+3_ma zDXt6VgsI&!$DRz2={?1Bzn$65d5u$@3^q)2iP*pD$JWS+QiY4snZa8V_I+e&z~z)R z_I`>wHyjl8*W7cOJelR0AP=CYP2R_iP~5n4<^YjwfRe_Wll}$;S@NVO^Sbsp_>#`Y z!&%9T9v&v(!Kf2+x!7d>zL^pwx>VV8vXltbs4OXU4s>%=mgFmBx#|UITf5aHxihK+ zPtIRBc_cmaw@1=4Paa9fJb5Gy^W>5A%acdaE>9jww>)_y&GO`t^vaV*(kf3LNvAw{ zB#k2ZTg_0u{Z?EZ2D4b9PVkGO5CwFmSw{qSEQ{Gg%*WyW^;^!#2=M*a8DkIzdd;*?)K!7c-xal;%rYI ziLX6*B(C=4k$BpZN8)Ht9*M_1c_a?=$-#DC=9zc=GkRtYZUGazv({9DxVDZX>XuCyu~@o;U&ndg2KD=ZPb*pC^t$ zK%O`P{dnRCFNzo^}=_fQI^A@WS$gwl| zas!6TR3%bUFboXk(_?gk`hNt5^m>iJkDfRJJ9^>>+~|o^fJ&I&qRiQO;t0G*;<^!7 zu|1=tPF10vREZHisS+Q0QYAL@q)J@qNtKw;lPd9`CskrWPpZUFo>YmSJgE{pc~T{A zBI((BIvw{vISbKOL~~<^SS+R>Y*Jcq)gu~ViI9d7#v~WZ#?PEP$PfzqSIN~V`ed(* zk(BJ!BqeOoNsv@VY~~ai_cI6;CX1?cWM0D`=7S7SO18Xow84A4NEP_%A!Zu7?4B347x~H z)y>ik<6(VQlK*pj*(874RM+U3Gi@CX(m-IljNVc^@b(${URSGN#%v!&{U9^Ex;Z@J z6L0;`L1FMd0rXq(QK~SkFc4B@Oujj_AzmmGsZ&W+nCW zq)OW7NtKk(lPc++Csk5CPpTwJo>WPaJgJf(c~T`gBB>=-#;NC=keE7g8D{h%D(R9Z zRZ=BSs-#JtR7sIMsgfRfQYF3cq)KYxNtLw1lPW0%Nk3jUM+dC5;@KaW^4ndC3*l1j zkG5i&=`)o z!D~B=yDUET7vT&COrp)A>a-#Ux$kJA@aLGe7`CzEOYdkEfAbF9nc-v=dw+FKqj>n8 z?o3E*N+yET&5UwiK40Z-W30$~qZve2}1n1oT;(P~Qo^y3b zf7gb||CynyPYYE^{@UHQNb?rU$NhG8nM5(wejRUf9jaYkDtwfux_!%{bqk(v2R!-D zAfElqqeZl~lJZ`IaG4gjpcxX9Dv+y<7D*N8H6~Rc*qBs-Vq;PT8jML5h%hEqpu(6` zfed3(1v-pL6$mjVRiMO}RDl#@QUzL!Nfn4OCRJd(m{fuDVp0Xxi%AuD&yqeekwrt~EsIb+ESnm-tvKOQ$C%{THOXoUk(1-$#k@{wnhSjS zzDFuuMSxVgnm`BtIj6^Mb2`cIH#@B%`~c5#HZMm2R}gaiQ;uj5TiFsr{6(^r=-6G? zp{d0~tWBm(@d)91=5B_oKh6?SJ?&A*?_ZW3)xTQrR}ig8I31p6CyUw%9KM(%3vzR< z^W;fy-Pm!~A+4L{Bq??+h-@|8^it#H2GUYXV_6ev&9V={-*!9I`yr=t%fyrc&{ zWhwT+O?Z}~Y~8Wq(VsU2SR{ORJjW92!b0tVh5EV2yJPWwDf4&8xh^ZW{rb&dL31Oo z`yDiv=29bXD!I}A!b(o|<8$7VUOEk#;g*9B{d_B5twWUd^f*uEX1iAm_brwREmE*; z)|{!QlgZSitjGKh^B+}0y(LvaqnI?QyZHRiw~Fze-e8sAyFONoFBT7ipjQQHUL(-d zjBM$EIp=hBz#M-wI$%CQaD}cim@FRVm6l$qA7>y?X1s#-&bZEFruY=sS8-v$e0E$v zFVW8(`gwVA=+vV9eQNyF;srUe$Y;!zz9?FQr>je6LpkL6CmH^q+TTZyXr2`JFBU)e zj#m56@y;!e1W9*V(?GYXa;T5;U(vY|{Rb{@Xawg2+ae5RoseHCuF!5RXynshH|;kH zU}vXEl>4oRll@DfzEAh&nL>dAY^oFqwRw-RQvUoS5VqVekutA7K8cDAin2RB@~bpE zud-obNVsqhFs$<|U#I%4v{j;BhD;Q1qf1x%X-LvIGZ+)zN5TqANQ+A!%-Y{chjS7R zDpA2yMTAtrR>h5O!I zBkol_XPpTS{&Ca1fmufy5>891MF zi~Nk^_*EPcE*Ivy+yW;=krLHSx4;s8DLtL1Ta!ty23I&$Ox$zk%q{siB%D-4?;^ zVV1>w2$A+&?R0U;?iFk*y=j_62po|(`Kld*+EE5u=5#{d(g(DW#stxl&F#X~@nRD9 z1lRWk04qjm04yP2URc`_DwtGHs9;e^_}MyF(AA^9z7CjJmwK{Mz z&O?EC6p!ZJTA!V|FmRD@gPW7z4qa*Vss)58G1Ud|YH{U3s1}#p*%#r}igz`1j$4bX zF;G+SetAPxqkyR{s(GtlK7R57yjZ^h`PA8k3)utrs|AZsp1a9RQmm%XLtTf8jP_(c zWqCL!XEak+mGAFP>YyF#i4TECxpQ2{=x|KIHGRs+(4uOex4}0hM1@%6^Q=Os@q`MI z#uF+88c(PYXFQ=onDK-PQN|N01Q}1L5Mw-{LWm*Z2gk}6zFumUcBd{iZFkB$keO76 z3As4YevDqnRg@+qV?yP9Ogs16dA;UJ| zr~8VlPj{i*=pCVL3b){tBtg6|o6uvr6IhYFtVkTQQGsWge&g2jhy>s0d5A?Uu9W-gM3}*ld$VU!51%H~KF!7O{9c9a zz1at7%mS!hS9Bw872>E_H#NBlpvX^zB5}zOa&>3UKAv+WuCi(u3i)b2dpd=kPfm1o zYZa?6rG%;C`HP9D8{Rj&vPzYnF*{0XLaHuw;{)$a?)+<%`GJb)|TK6L0KxA6&hidCGkc68wkO)e6?fHhtc2>-B<)&r^ z5kS^E2utFL5LaaA02XOKwM`ppdf!z#fESrP4755_atjuc3A4rQc_E&h*JNvf-Zaa} zrHhFfQikqUhxV&F0cRfy$j6k;NVJQ>;&35k72>_GrV8QS6DmY|PpA;=Jpox4L^VK| zJ)uIV_k`(DZ!jp;MOEur$%e{(5`lTpAwCveP`4z)V$($0=J8rOK zp%7fW*n&Wg{_nN8O^{>Idrmw8rA`z(1l39yKp#z%io&mp@1mC}-9Cp8t_#^YdEpbe zAm9LrVHGWho12$cs9)PF72O$bsYk221M|+KmoZ!(y^P)R=w)Qnqn8m)k6uPHJ$f0z z^yp>e(xaCVOOIYgDm{7`q4elwWYVLT5lN3;h6X%(84~d5WhlU-mmvV6Kd~XbR$`-E zzCKkZzE2GhUrxpKh%dxev#OI52mQlWj_JC2+F$(X1;100hx1L2PZ)W~glx-Xx&s%K z7PUo@4x`oCaqwrlEva=;Lfk9%3l)o)FtLo2mb(#hPl}8iQJ4IX7GoiPN+_84G3d48 z$3wi4ed5Q_kSKn_;yb94#0TI5$oK&Ix6B6!t-}Z4uT_{m@Bto)Qz51;zB1<#7Z(uERf#+W(V5?*{XfE21TyqWe|$9# zyl52(_i*>IlVkA@Z@_S5+}RXc$3}wk`qxc|Yv6gwP{cQeV!5BJ_>{S;>W-VyOj3Nt z9?hLp0!>n>D2&ETVFU}Fl*%3F!b=kg>(r_)%BXd(TD@AudG(0zs35PLF$(#l@l{q^ z-D_{%QF?j=!PBW{J}%-%nc|rWCWA3_+meaSH8y5bHfGl}iywL5G))OJME>%9hTzaD zR3;m$PV6ltbe*fIYSkD`h_%+)pn4atJ7U;q8;u$(HHyiDu;f0<^Y$_M?p4<#%DS^C zl#@IUw39dFs%tT48mNhKe|rgT(X=b2ae+^w?!9r5Hb!5T#+PxKwsDazRxJo0Z6LDa z>hlGF{QP>OJs8 zF<*TDlR^DT-_}t#Sk<3rg5&+tCOC8WBjnL7@eJGuEOuAqnwn@P zvy*njRkg8~i?#O@Yws-@CugpJdRP9JFxjP*#_ntUHtMZfQ%x=!vIxrbh!whQx}LAl z#s~GLTDH>ayt0z~)99EMy^lH?9>a!osHs=|{2cO{V0<5REW_xNO1%9#4ay zz{fM>2jpwX2aL7x@I~!wX)R}mRBaU9wg{(-FL(u{oS0__z%-skmp|FiGCdJD@{}s; zEN;-olU)(Aez8mG*}TECGU60oW{XD%R}d}{%7OE9Od)w<{uH4cJAat)a`guoDqK2c zvw#86Foqk8*<%$S;>dty?Wy;4GCrBuV)AuPMQLam8H_~~*N_@3<`P>2lA=J^BhI>C zX#iVCa}4{h{p9!mX8joZLhL3z@^k;GaSRXDsZCS1YJ7U|NuAPXM@sUE!~u;GHk2oY zrVS~msL=2N$Hr@-!**qrN?C?|wgq%AF( zUP#7M>7gXAOCT z01caGj0uzdo_y9mgRbj59x+9y0H3Jk({yjt9ibD2DrvsH;9GC0m9a{ z)VTgXed(S2B{PjA&1&^Vvv}{{>I#A4mk7AS?Og<1()JWV)+~OEz^unKcP{%Q_Zv0m>jW@M}8`zA`xHr zsxMNJgSRVW2l0uT)~~A0I6Zuh1NZ9p;=9sYjU&j{`$1MMLC65|2}7;}`MxG$!RcxB zGkvJj_lZwjp|-?FqtI>9mc5f`EcK#>c`cJ$3sJ*}sf31cmgMEb*m@DeIJImTtKMQ5 zXUoHAZ}o=}zpsCP!+4nw<7KiY#uc~^qiC*%@iK-{bI!4e51mGh)5DTu16S#zWo#v* zg$G`ZmO2d6ViY-=EbDF1j_L5Q%A>ED+M1KagG*!LBSOAZ&zb|geKDvu7&@lKMd2uo zNoO9%@O&9>@tRTfd|uS?@gENk;)D38^$QJPz)N3buifr(AE*V5Q(>SJ`S6A$`4gK| zGD9bTQ(rh|3e;lr-s}*OsB3LQkV7W93Z#j9coQVFAFs*>xIxffoY&#OQghL;geM4a zG_#{Od_CF>o5@m9=Y;)#_M=7ml464&>ZU8X450le-*Hnsg2!scUQdyioYLTg<_oVF zo15rL0jr}n|Iw?6vm&s`E%pk9k{Zm-A8IhNk$NF3?fgcMYXeb94uRHtT#9JJ6^1}w z#A6+N2!vgxYoX_vH(JiT!h+J95{<1KR;!m|9iDiH)Ao`gK{~u!Si02xlyj&;8`ctV z>{r6Ji74P##I`{O=waIze5;3T%Ww6UDI3Lqf6EjxTK&Uy2bz#8)M+?*4$D*<(u|B||7?wf#93YK(7k zKLvyF>Tavg?MyM>Q#xL!GbAYDj9`{;`hph|lD8taGb<$9%XPKpXRA1JJCT$}F|!mC zlO_Ai27I13u)EgHCKT;d62k>^wr?#9pVb>JyWtn zE+`l*HeG%d*z()Y8Mb^;FOZ3$T-!ARU2oXx&@jcD!r0I;L&@|BtshYb30E{gOLSVq z4)?$=<)lm{w`)Naja3FH2M5f7OQLNNKX1;tphT~)74EO+nPO(R~s-syhRk@cbmc0<>Usdj9N@dTzOr`A6BE-WL{Eb$+LYlM| znzUu^NTN0uQ3Z3e;(h3TbRAA6cB-rylN`w2RbL;50PIu05vP7f{Aphc*4x@z(PZ6H z{woOL_Lgx3{p~GUBej;cc=~EBkL*n15=d5bc+Qs0%`TDxkeJBVJj>QLs;vG`PcHi5 zse18QwwGpQ#Z?z&d9^ylq<(0esdCukqK$YimHfo!uIZU+K_dwB5`emBreiDnIvu8= zVFJSr^!BzSGxbjvv-X4<-7sb?lGaESM6_gLb&bZ&h{r;9)_V9YdflXX_Km64lopbd zl)MZ=)thj!{{;qAs8>i!ie6q{PmkLhEbR3<@nuV&qyQZ%=D~+r!jxosrXGKR(rJC* zFUI=(#hCaDp}}q~@)uyJfJp*>kr;n5re)>5MvwOR3;&eXzc7Hcc@^qN>S_o?EnXEd zfL+EAicpjN%VNhI1&F7I7tyOmz~Dr@AcR8|WC5bLvjydUl8}05ni~ElHMjC?hUMkAW6fPZt6{8p&HGgkZM3TAEhCuxHm?rm z`=81>Ded4NRg|)Osj;|%{bdNM5HoEaCXtMIRWx*6=PEqdCsv9Sa%rAyO|Xo%4|lcLrMc5VH1##K zU%Wt2ibJb~(`H0Yei`+IuHzx~X*w4c{x%s-s>;r;s`?aHJE;#q)@9OC~4yDwmlT-rB*-PL!IF=eLH8H`EK`+QoaD_NtMkMkAwa26a)duY6 zAmku-^~Y+;E8fcVVIi4$a;^ADo}bAVMO9wyc4;% z1i_Q;_b>}(+1`sEn(!X~H|w*tep+Y}itt?d5;<-mM@k22<6u?? zWnn4Y0w$l_0A1B7a&bf%|Fn&@zNl$`A1DtdT`cgQm82neDXltZEu^iv**J#AfSzqX znBnNjfhYCQdaK;UXYkfY*tIEbqNk4rL3UIK~;RlkdiPFE2A z0rA{zSA2x+q-jDxZ#_1=$Er5ipcse5uI!@M`vhAQ^Xn zw{^dAs1;HSogwu9IcP{OHN{4`+J(Fk(zB zdPYXm4`yeIzpBA5TAOOcd(NGlxj9V|{{L$K^H;))Df8Ua@JuW1cp-IazoiwlBT6tUKTE%F#U#zvJ)ck_+-$FoEzF{-FHDSzu z!*tP2?LSTGwH!(e^I?98%+Cn@DqR+Dg{dV}lWNA{lSOp+D@-!mYa`Fr$;+sTeKe@ku$A^7aq!*30*_txNIFRe2i zoxpbc_Wly%TO^gc`!7B+RWmjH{yC^9u!23Mhj`Q3d!Edv#lFs*esbZ;haXbjZ>-My zj{W8<(Y!JCz4A?k%4 ztfSO;$gMEP97MQ}HQ79koHluS(O5yaXY%|CXO>OzVytqU2(r@A?zE0H3lvkE6icc3 z%Z1!hzGk()RhsIWVH4<-R~~~qPfqAqB+MP~5;K{f+vd8?qhhKrgr?2=+C7?B2q3VN zn82V5lQkLqx(WOyk%G!6vJ=Up&A4Vcd^W!;t3 znj*EmP(zqi>=!cj)a|gO$pZJ8k5~#jeGdiFS8QwR!ywM%u+6-wl2Nqs>T^=%jCc#} z#Im=b9Ao*)Gi?2%F{|C8B0iN_Z_r@-Fl(j%nyRTjQf2PT$LKfk5VwOX?|hPQ3Itg7 zyz)MbIMh?l*ypfFx6`L;MLDcG>2(3kAp6 z@E*fq{8(N)KBqn$Ti$z*)a+0QAMdpmixCyXuGQ^&x8Fa#ws4e7l@lE;e|HQmB7b~w zCVo+uDwoHL3)OF-${2ibez!B#$e4uuV`zMcpVf$zUKl8UO6__>4Sg3rvtqjtS$$0apd%ViJ62Og>ojQ+qo9O{gP zY9QA!ZcPkfIJ~CoziskApSAy{UdFBX!eUroFvFGl?vn9kI-A5wk`{GBWXJZ0pl2sh z@FLaa34Nr#<;nn79m6%(EWg1_VYcdM4iLuwYL1OOvxVuP9!~tddI{ajx;bK`D@*Zr ziXq9b)JYv%ThHT?lB|^a+04%!K~w1<<~$y-jHgh&b(*+#FBKu<79&PR&?dkHc;phF zB@-t00R=TXurtMF$0()_8lrT1OLneXz(W||XsLZ0_|GbUlfWG&AyaanCnz4ggw@$N z=Nb7g(E&p`fIfs#NM!QO{F5d$JE|Cnxf^~12g7f&x7_yIw1B(?{vx~o)3LJkGqofW z)dJo?%grEQwT-^4LsV|NJMLY>m9^{99uU>)%(AXQcmdflj&(8#FwPU2P{>p=qJlVq%_#kv@FmozO6MCN&df~?kS0ku ztB+QPhzG z@zD&e72loCg)^s-S!Bm5PL~DFC^-=h{G?;5T&(`hyzOs7tuM9^=k&CN)y=XQTa*+N zzpU(5Yg#X{Z_L<%7AvYJq0x>+a`2F@r6;EjsatySLmHP}{E*V67eAzT>BSGJUV8CE z+LvDZkOHO`Kcs`{#Sf`rdhtV=m|pylGNut&v52<8&@fy`sYt8p?d-1Ii@yyW5 z{KEZJ<%q;p#fwT+#SiIedi5Dn)%4A%#sZen@B2iyuMupm5Y zU@dsmz%uZtffe9U1C!sQ2Ijp-4NQ5D8kp@KH89aVYG95N^-&PMpYhh+ofRHcGpLGm zRW0eNCN6Zx7S7#&f8N+!%k!}Z7xIS}^4E7K&T<%9cX#8y<-xP}Ya2kwXTb-hMhWY*)(O(ZP_MW65hvkuOt)p!fO$ zIMep?=G%YGM23uOw`)FZ*I7P$8x>00elzG?*FAA#h2;{$#orZC-yp(_KK{I}U#i^& zG3F$;m;`+pbWiI#;@TdXI;ZXxf!=nc91yMhdrVZ?(H8(PuPsn(J@nZ8@M7ai|=KL6fuI=L* zU6##Gr|x4d3K?w*T*pf}!jS*FOIPmi7!+{n(fXSFn<86x`z-ImE0gM)+-Rk!g*$zMnKO)V<0gOuGUP^3GHk%8fMLW9&;Eb z`5Y*BVYDxR6Y8s-<(842H*-%$aYJ$Sy>1nMTHXljuuSNs2NRm=q53;M8qV7izAnShg0K)D^4U*i? zNxJ_=@!b27j+tzdFIasbNu&)N;7u$FA9VoVV7~CAbNMEu_D=hQnV~{b))w#i$rgk0 z1~I(FMR@>&yDpv*AdUMI?h~w0oELyicJXEbC?ASP1)$k19uY7H@VqL5(zUqwD*$Lp zi;pU4O+K?A49Nj~?GapLJ+(lYtSC7xV0NXxgoUuJ`Z-&v+*Ejx<#STb+^Ma07$#O6Wk_ zrih>8Zq!rL6RQAux}K-U=Oh}ey(7D%= z%IaMnFNR0B?-N}bSfsBxgSBiHF25X;5;L60p#>t*9%VMD{m0@1X*jl1$9W}`n+X;=>dsJ9f#wi1>BRT3ue)KwYlIT+gqJ=4^J#WvqA)3(rhhZ=tn)LpJ(F_004V zhHPHM2t&3_JwrCOL-fv)9W3C@YC|?VJrFF}Vl}VIFEi>%VAZ@TR#T@q=!xeqzNl)7 z08@cVd%J7@4%K8xI+B5t3+JGB>!=X5#OI8LW`FTN==3X8&qRa84iWcZu7-utR@$s- zcV~-3-0E@h^Z%_SH}6>I^-q@|doN+wEcV8f14+IHmqo4~kcTMNj?QgDcclVyyvM5J zAnF=nrRi-+I?A4t6~ReWkP-VJHM|f75Z@gE8uCM=obKEQj+%F-z!cM46LbyMcF^Yt z$49B~WNR^BsqW`Mx{xM|3{{k!E5@&n@txziG8%t!A$|Cv;O0k}L8IC;a83Q@+C;aT zPl}zs=4`jKklby@`)np(ov+TX5!<^u@9wKj(TRh|yf)DoGX4bmkbRD&%? zq2#)A>>9d})t4{cs^y`{GR_;WQ^F-;4_$nNM{9qd zW>%sN_Tr(v>Pz0IB>1HPaj?&K42XpN=mD{?A3Y!%_M->H!+!LDh}e&wrq*;Mld8@j z^|;spVWl6fHdf>w5L!a+KN?F{%W_VaUp_TfVwNC};^n17p9Foss)Mep_^tGW{VohWbe2I0=0H>5^EDOvAL!5MVvIGW??H4Uf z_Wzi6e7IwXopr~ghEFC_my?KOFlwDK_G}(Pso|Jr#4m6*1u6NW8iY97XI~~1=k;fh ztLr~DTz`+C{$myO59|*0U!nTjx@`D~A=RIg*2DFem2E}+$3p$vsy_#hsQ(94f9(wP zSf2^SdHpF@^*>7A_xqn7#ky{&|2=~Gv#|^29qj+WDpCJcsz0Pa)+wvx&r0>50Cx@b z|H^*-t@rhHxQKC11+h*GV|t_oSivJ362=2*T3{!TQeqO?i3dS(RJ^Smn*9KT)3S=u zyyp+a@KnwuWb$zl<_WBP;kKqu<;_>o2V*DD?N1iJw!$`0a6m{|f0Qgr&LaAAvv5CB zZg|4H;_G1b_p$9Oj3bAI8Q;%>qe5PuUlaxzPzv-H=zwCNA3aV*E7t9Rf}o$9HB*&) zKvB@oJs^SiqX(q$el-18Rkj9kxPld?yKAaUcP%m>ETC4oTu3IV8Y(zNmjdiP3QeF0ZXub4lwGs zagQ7#;vP9f!ioHWX4XEJNzE|M%&E}aGGHx8Ci~3TpfC@n37AYX1WbonO$Jz7?KzFp z+YRu^xGu&*zBUs+xZQTfL~)g@LReEUD)w^c7WtlRys@#8kPmP77A#ur>EC4?`s zgqPZ(#0SqeNM@%oXs5kHs7I}M5F4tur}f4^r2mq%Uz;p~HT*HWHnu~~8SvVw7Ry1y zTmUhWdom4h)-1lgmtB2`$qEB-t9G7?H*&6&PJ4I>H!kWIb+SelPRbqhYTR}1&YYa; zVc}a$jkM0jwN?DskF|<=``@PwZ3}`7yipqP8P3w zbc`=%@r$oK&0ymBmz3`~UoT$2R4x2DGK0u5jy zB{PbNGjpBE&;}n@UjG(OrldH(iN@W1 zr|25s;@9a<)8$GGw&P(eLkYSli4lJ}2`8oq`k=Uafpcue)fSY5>u=5{7O)q1B`URx zH*vw6lr~tAT?8{L`7^47tXp*-I5lQ3mk$VX;XwCV#%X`mNvxO@oM{tPFU<_EQ<0WQxmq2;)lkPdh7kl|(!9u`nKpPpTRv zU8;^Ir%z6(wDi**=?~2~ZYp0nK%KZDFJCnf(Kk;Lnpoh|gy1{x0o6d>S z3<*|_!H2{ukDSgE8qpJ~JaR~+^2i~9$|HxwDUTdt_&jom-SfyHX3rysSUn?xFH`Qawf8B-waO=wM#989F9;{Xdq2>}E>GCDgDvFllg4@w%#QjGD!c>51=#`BwW zE2s9r5Tf^)X4<0^E_s+s=YPji$4Dj7=7O_A>tx?dRyks`yc&if?$nz%#G88L5NGO< zLwu=6rd0z5l^Pnw_P{Q8do3Oai%vh6N8|$$Zy8T7v)!}_Y1&y+rYT@9u#~z85p4)E zz1m4?bPG~NcXlfjZ3Ue*aZfir1KmcCg%91aD%I(!?TtlVdXQf#7_FPPkVbQHd zrb1Fq;q#L-D*j`h;ew$sll?&=UChJm3Pe0A~`ORLq%H-ZGRx|T1F$zs>?6>Cp;37mMk;=_EhmjPb(Lx&)w?& z^^{d486HxfxD}WAfGY9UGbrNeB0MQe&PW$^Td1}K;la3gL2TtzRMF?0CFG2Q>GNU9 zCQs2?-0d^P_Y~_O$j}Hmxt@d4v`)~v+KDsd$WEL=mX&@)`v7E`S(L0Scl|J(yei-P z*$L$-t|*w+Rt?!+QABbpg(bJXMo2^&w~2ylcyK^?9M&Ljo{_Fb(XC>seL`=#5G@p= za=jiZ?;gyssE5{XNk;VbTaphwq9hx7L`g36h>}d`5hZ!hBT7<=N0cNKk0?ne9#N7^ zi1>focp)E?Tp)?^(!lPciIgA|yJkfj6p8$NLLIgFsC|6A4{Yd8J&C?XF4+vjwx30X zjv5%#Sm;{VmXsM|`z&gq*}Q%CTw@_=c2-DOotLtsULb%<-(%P8`V~f+Bl0|+*FjXA zz+76&Pj^yZt{K~e&nmZ-v*w?Et;$dnL3cj_M5U!N)6T)zj;1f91A`?&e3pj zs5K_&+EeUOLiJ$`jGgGL(9~^Wt70w4SI`Xeq^`29eH8Xt3X=m1%O~^msRh);e2~Ap z=JISIxr;M25??d5xBUw#a~Z+W?o_8``pPz6T6*REUEbCEch8x)?lO_o zNbIV1v&U(S3ZKTuIhe{8G1D!34Km7w?y9q$)fuQ9>q9P(>14%!88_@d4l0x)3g`aa zmG^fcuIQDO(K3r7A_1YLlDUm`sEP+98-cV~D|L8sF8K+ONIbH!z}6l7va}YyckMCi zu>^RFg_m@>+EVV3OXqGob4Jm+af6>@T0+_ov8y^5obS(M9qmzU{j*~QO*=;b1cAAehmJMf@Q=sk;Xf;I`k!($Co5a?0sm{Cl49x;j#xZKR`MEn-g zJbkje0?Os~nk-1pUzRDDC^@fec#=H%>;n)x)?)(Mg_=&ZKaFz0KbQouKrbfnI&l=Pz>QPPciL`g5|5hb0dN0juT9#N9H zJ)$IUd&G3CB5G?B$VzfH5%*;&hOov4ft%FPeZkebo#ttC9P!{RmkBI!PKcko<{mEq z>kCWi-R#HI?mj(-YJ%OI^f=?46z~4{pMUXep3F&Cfx2N!aTfo~TR@0zSkhDnl|*~5 zSV^q+h>}R}5hZcnBTAyYN0h{Pk0?pQ9?=`J*dHY+*mIO5U?P5Lb+*#&+O$*4Y4HAD z#WV3ld&@YqH(;&m&pivNf z23^krdkCBlMsk87So+C78IuKvhD0Z6_SIfN?~@`^HAG$bj^eTNA54k_N6_zaH<|6f zTIowiUQu2StHlaII)t+oTc?sFKV}FxvVhBqHxsf##J_Ta8jVLssR%I~2r3>Sk=}O0 zy;|{FDt)u2y=+@*vQOX}93x4LN@h~b+ZWp3o5CY?;oanT8&k_WFn1t$g`e&Rx`)0) zaM7V(3pV&i7$zzxE}Ui3pOr7KKd=C!I}mra*;!RwL=%d$7MLc>u5a7}YbG0|r@kns zDf8Jk>-qm9@7?1pE6RKCwbtI($*oJ7NT4T+lI1rPC<1QZigG$fdaF^2Q~ zJx{G#t9S2Flk>iRy$!SLvTD_;%Tv#-o_eaaTc(DlW{aPAbB-MO51;&>pJ;DKS7z;p z0sG>+KVp~6#78^vG6gVuz7mGBtckoYK9<2v719|A=*3Xx(cQ3aKKn_Pl)wRxTWq5% zV5#*lVmD_Uo3!~HKV;3p3RAefmj_mhkC4QGyTOhH*ilTr*kt7`-sX;Vk<4l9P*TqzEiFlXVKPiXr6YqNmtKBm!=5dryu|LbI-Y zedM|*IGG@G=^3EZ^>D4eV}kUN)ssd)m85O&r)}~%qxQnxNy0{-lecKOX80{RU`9;B z8B#K;m?b*CSO_QQOVs~RMijUW=9iPnysEK6_Rs1Y~X&2ly-9Svig zFs@9SV0rOD_647jN08yja#G*dn>lG$=gs-j{H@oIYlpB+i}rc5wcA63G08y{rc;^)HbLE5aN@atJ+1DL7ohFLEGi@W$sH_@h7-V3-d-$4&~p}UH~dj zY2Az6i->BEyWp0t#Nf6^?PEL+t)2VBIxa%H9~mp4etrO4GOeA=SzSea6)1zbxjezy z9tX3_mqXbY(C%O+T*sGm$bbMNw!AB}IPKmLqfWzNr?PEldF>sm1rg>{$Ub9;o#77~=8taPX9rp<|Lk4Y z;xxVjs#}1#Dly+S{1U(TX2#*@&`1Q}5kWDC77!jSY+{Y$E7+Uv4{PSCZ>g9uG`4K< zSru39IX;?a4v!`arW#HkMp4cqo zyjV2cJS$lHRvTEeEmVw<>=0q0y;D&OlpUfSXhNWbHQEM2qrv1~TM+Aes{*-+dXK$T zUej4v!ruEZleBvvEdG=`JHC-W8<;qlq5P4IzLw~-gNmTGw|73 zV3_M@(!qmeC^sRKmyfd8j0LxD`rr>Xpu8yyp!CSS`=EF`U8#(A3r?L?B?F^)?XdL1 zS8kt~M9M`el5(XAu?L*n9U8wQFI!#@Kmb3`x`e~aV|dsHShUMcr*%nAVAB?IB7|cG zW|(4n>wD#m?~Hma*~dwC(5tWQEbOm@i;q*lT%c72fcYB%O>O5zn>ygMA|@4!WlJMz z+mH-kA`JZr-HRk?>D<_Y$zc^lseuqI2B(_`O0jl9ZO&n4%Q7}B+co)PR@r#(&@Q?C zx>zGOjLdDQX&Yr5y4pr=Lt)#J9P;7Hfo_Xvn$e@8! za6vxcT1?!QOg`S2K!!%S^1=u{vgZW=h>tlC1b{(d%vjDcTjjVD&*-;W+bD(dbWLvCba#V}cu97$WnTfAk(Ql%WH2qWFNL-kg3zvP3MrI#VGHFVgnwwtCs`gC z31hF%xpiiTt+z0~ojK&{_3hevrX+x>i(Is^zyrUq1`OANL&nt7fUm%IjZVsF^=SZ_ zTtq3Y0b!GwirJtNF;;=6u4W-jmMz_Vr2@1^1!O6V+vuv)p(ynkrrzyi8ob^5`bKU;N^ayfMCC?qLtbv=HiYIX_pLeS#sFIh zY@_yVXR!)kfU9-Nd>qa&VI$)Q_5?5x_&5-~ySNYqVu_ii=sRex_xdp~H+&xy(Z;GS z(tb{}UVtp;{z}0UsGzMeZ%Fi2Ysqbh^^M$yY~RRj2>6X$XwQgQYl!-dva!`dM~&Qu z^xep9h~SM}2*vQ%-rg=czFRJ2vBG_JYkpb>M}R%RQ=`iQumG7&Dc$vHwyLZWlY(X2 zCVGU^=eNUFN*ja)KT7iHJ)!lYR22sa5L%t7up6%x4IRTmC?2+Ah~aZt{r(2?n)mA8 z*8HwLO!#=hRGDOn@i8H$`hBMG2UNhp8pg9+2Lc46w1KAG{WiW8_$%zUT}l;j+;&|( zbSzu5Z9q_8f<%I>!noXsYTtB#Y$8>#9lHfI%E#!xEG~TTz-`5q>LQiG>f^XYdp-=F z(p-WXCYN9$CrS0rniHSTXFJC54l;&w^6WXFyj=Xp-1fgjg9wpW(ctH$Ebt4;_{4FoW@j!hvv%1bH zWEhwz+tAxI$|7NpDBBvD+fd^)YRE^HWoU-$UDcqPR+fI2up|-Qp{-8GKls8bGjZxuO>>4Wkszc5k|Fo4_z<5E-$IH9y!m!Em zNS)XmFZYsMLwFwg03ClI=cXeaaS~_NyR(J* z;VS!9zaM58+zc^70bG=Vo(HqY7VX~mG`w--GVO(jO=8Ho4n=6*eEd&`zRnl@5lu25 z|5jRhXW+A%TEP+76sYE; z=puVDCr$RmX^b8K21~0s(5e3N-Y*%F#?jp(hds^^d@_;zS9UJr-a(EoPsq{Da?q)NM>v zakZr@W^%$sE-|R9b&1r%;85w{px4qOx7>5{GzHm8DUbZQC4m!Dv?a^Pn>E!6Y^kYM z0GrA33r}Fb()(L(gB$qZGvovL18bFk_V7KgVJ2XarB&XFg{G#(5+_;WBvt~jS>E%| z{Wlv|Hd%g)>Sk1()vy7WQA>xXG6>M;FRs)p5g;M%;fUTpOF`m5XP*jOFE6}tq$%i) z9LMUkzDl(HVhUfor~~3TI(Op{94aaZsj!7s&qdyth(F{gi^{77bQC&Y)C(7BaUG>q zaN}Zh6oqgNI6fo4gEcCalV5aCy~~-$cgwsDtS^P%k?g` zQGKs6ZcP~{&;e-#%s8uBes|}0zo)s-cG>IA91U8vV4L~OBl+YszEnkNMMNC}kw+f5 z{_EV#4q8T)M(Z)%l472pC+)_2L+^V!KWF6)(P;5iP$A1;tgFTKBZ!&lZ+yrr8yFm5 ztr`_7FFQL|O;*NrLQiAmKYjSGuP%fsBkse#K}N^+k@8#L{NODUD<5{H`Dlq)s$9sbU2n5Lm>jVOEBQ9Xf1;O(ph+F*dJXMXjHw-WS>^?_wg@zcSN9NPeO%`20Ce zB?Td{PC`P-{Kf;HzIj4oA&k`K)>b1}ik)g2s{q5^`yL0o?G3}EQqq2u z(GbQXdJoZ)5?E?0uTy^O3)jEXF958`_Hp63eS`LXc9+a|GJ`5KMIC^C@AbGmbd7Bb zUY=*i&G*g|T*HZ#53p|;*MK&9P`b2HxZ8pS>w;=%ZOS^-pn=_#O)Dnxj>o5mHiJrCN}L%cNO+BWpL(8ekDu?D{v3OJj+%Nz zY^q%LS?wFkZ+`d>e#hKh^M$p1VQGHto^afYX+`UV?63jrr}E9~_xsAS)aUs)fcvn8 zC7nxV>(wqcFmHBpIL#GG^+1$IEHHBNh|H>m#2QVk$k|6gqcDXcXFy%Na{!7XbtfnCfpO5!eiLmF(&VrE>i3wY@N=_$19$VqQrv7VkBej=H}d9`5PZu71lNi zGNLF?Fj3VS5LYh>PnPV&9me5fKgD#|EsAHAq>q1}RI{AZ5uKq%2v3lqGABvSbZXmaIX_k~K(KvIZ$j)*yw}Dyd$2xRpsjD9QQJbj;U#6@k_h5oA3P0oD@{Ts;wi)e{j^JrM!b z6A?^35rLG%8(ROl(X(-yt;XpOM~%~n0WSAzXaI*sG{2jbEX?wdpOEVm z@Sqen58P=wfiBzNq2O^*u8WUJ?Jf`8RXwI%JVx6XACuZ$-ta%G$82qKwgcNhDMmRl zB~I&f5iPOHh6&CgpldM9)r?0}>@yJ&u_q!L_C!R&o`@*e69818*(6pc^!vwPttTnn z_lGGRn(4>o5cB(DPWZ9Q8eaz-0-gC$cT60Yw7$7yvsmq0ozl>m#sxnHP%yFjyUKjU;o*I z&5f^{0cxdcZkSi8J^*N~#r?c#YjJpPSgHR3)V_Ei14lANLx|S%S0Z4~Ur7r*efB&8!M@$?5d?70i)>7w(enGk+t2GaCKejueIOOVo$D@f^yA#jSkL3$p^ zRZ2&SmC})DrF5iQp8ooHF;jyVo07Fj{-Sn0i*1ENgl~C{nTmS^LUaCt(}W#y7=oX@ zpL3Lk8YA==A#A(b`_JXk4A+A)JR&?oZoiS2k3I4Z*TF^5dnd0}X4x`3>5tI}CsAnF z6SF~GyD<%vn+N~E{&Uf3YPzb5AARV9pEc!PtoXsI;?$=2N@%>Yye;2pywcL?RN1Sr z4J9+G)DkJsqxA)c=#{Ga9P7uHQ}5Z%XnLI^5Nz(M#cV8(6P&72c&sLOqN>~`pk03X zqkrIgmF@B?U%KxT<1$aM4~cg3J=IRYIcP@Zs-HW{l7K0GG=EO#-%HFR%Ay2B!x-1J zUK(tI?cr91CK!wl;;J*E#?tE#39ByaH@ zPT$-3(;Qf?zU(4${z+F_eQ1Ve8hgPNw6o<+)G4bJbY}pZsV#Kxs?5qWI8Ft)hF8$@ z0PnwOG_(^cGRRrrUio$EFpyzpJLS8kblLRn$bvVqSFb`c5vfs?HjFeBW*>tOH1(20 z!0IKv)=rhNKVS(h=Jf=838QKa1olm06gh($Te`aH3`f6b%Z~sr>I}f|#Vj-qyL(Qp zl+mJQC%B=MF&c|fCN6hrO5xzM(=+>f7Q2Q`-AqTAC8v@mp)pic5gv3m1Ah+Jcf@jK zk|o3Pr;+=r3fIacD_pCAELp38j_Cg5e~@SOp&P}qHn}2ktb0HIeYhgG4A=6|f51D7 zGGE1h4*NxAft{=zL=c!8U9EqX82BbJPQOLv%NQpZrdy{L%4rG0#;GpjV;O0^YLlwL ztTkUYAhqVplC|c`l9AJ_#$l+F=1Xd&D}CEA#z1gQzuf%l~SukvqP3+kL;tAWW3^ zpw(f=%Rrd3U=-~2-Z26fvIZoGtjCD}_)HUw{YBoh2_~UEah-;2EHxr6H zD7Kn?eQqC9DfYJq9ZF4HKD^34D0(Da6ar_V7IMn|9lFsU>^%x6zN3wqi$G^pv7|3Wc4L?u!Y`I&6S zKcId9(%OC=@qwG~=OmX1RpSHeK_c(UL$RH?iXXU#Vv`k2R=Sl6beF+r!u5`zYn8Bp zO=RpUpo)B5m5gj%m5f|nmCTnTciP5~z-sWJsYn=lM|MB{A5_$8fziofRfBj#14zNy z-_!e~W~cztfXrCK)PJfH%W@b%Bw(dlgO{uZR^t%FRM?_M#_%`#^o_zzd`y@6>LFbs z8tSMKHP1DI=20VN9yLPdQN!pSHEixt!{i<{EKc;k@qAiKc%&)+Sji3RSc-~R2p+T$ zqLH*&i_>j#mK#ZH#YNp13y(3>IA*=ia0h~VulMYbt5yixzv7&A%>t{3YZJ@EWf(Z7 zMYKwD%+N%bXD_{A?Ce)VJ?NDG{=^eczlv*2uiF}R5wu%<@HKlQp4nfQBluRLIP^Gb$@>sLl1qTMSo#k)(G* z0=A1jdB%(uF5c4lqju{kb)tA~GyZo!F>&^sYR5U89?3+R*(9JwP69G$OosJ0$Z2~A z#@YJK#<+J>{I&Ab*G#$3$Nhym2U@acOaee?cj-9$3b!owRp(mwt{>0|+9%)Ay{~Ut zJ_q16Bm#P+MLrOT$*a$cUuWIJw{vYP=b65?X&~tz%SWc%jKeGiCxJ^IEya82Mr|rpTkl5P8&?A&(j(-NCMt@%6qv0F^vc`5z*Mau6k6Aq5^6!~J=Q#`5~so<%zi%FU^mK|HoS7Y(o8CH3E?s z?Dfm8Ph!{vOorhY$w?vAS)J3Irr(lBS&OoQ`ZvkXg3VRkWZBUxKgJ~6aXpQ6Rpm1N zL~GFaUSBK5^Lmt(T9H@dbv@VkT#p)$>rvxsJZc<`M~$2DsBtnx-#V7Bs(9g*D-hJr za^q*q!pIfJ9@kbe%8eEG?|;2w#Zf@UJrT~|^EW?W#fcqd#c5?Z_q%MtNna(khW6LC z3}&hYXUYW@T+vu?MOtvhs0Fw0Z$~UR7;3uHSa5gK+=}6BEVyryEe2Bve|b}E!P&xM z{=r#r?yj#o4c&?Bhz2YUP62JndZOHICw}nlM*Og%j>ON~09FcG+4j={hCHM#P2{P>Xo0v#VtwvBj*vYp6*jhfy z0Hl3gvFirMCfY6K@QDp%Y?dK zq9Ik#5AAb&4AclC6M&Q9UJNHYhbU)VRN~#z2~q9fhSmbO=(`;2V)~%|Li5suns1YY zhi&dP(Q$g;_JFU4$njx(2@e7kT60i!N*z(yO@X}wu&_G%<;at6x;J=;g&N{}y-XRR zfKL#DfJYDmJc1D55kvrwAOLs-KE)$&DIS4G@dz9Wk+&B4#K9+;S@;cgcc`N zP_uaVMInJ7^p%e?qyiX?GD>GRqUH;1ne$<+3(jCNId=nyq4CvQa3c(%oWH8+@UF)4 zi}WzZ=v1Wzy^C7K+3*X12@WmPB7tx7k%DXU2t1od;MhFEdiDt1nn$2Y9)Tu#M7*Od zHs}$NJ38=lt?JIa6`GYR(Wj#@m5ZM>rt&bi^00WQrv(sWsP>VMVw~F}tA(gB_`xC^ zGs5b@fhBGQaaI>Ub;bM)yCGUQ(y1Bg0MxY$03nH6w8M`{OLEs^P#7)`)$+!*`?N>yjURC>9SD8 zPhsC04W_7E2)*6=s~G+sC$neH}PN)HitB2~1m(Zkraak|FCMrjNMyk9eb zk7}(u)mql6_@M3-r?r}$g2vQeIaqI?Z^*cE3^~**hS2EdL36({w#4rlw(WKyh)_Zy7@+{94K{eBMNlR}2NameMw@4775suj zxF9M6!$TBA&?1t@jOXI}%d>CJ9u8InonP zWIClaRX(cQ#duQ~TJ!~6-YW05YI$z>o?}6h{?(XiS%*W9TvE57n=lY3-$GA}Jv%|0 z%8&A8Av6uqYP2YC;zeViI~syX{Yc&{x+mj%4q80YBY6%^`TLG-1C)z*iyM4f9&igD zGNCZoUPnDJy&jpUA~3w31H0=Hm|c(XvPWPjJfg1{3d=0AH^+h8!S(m1lW*GwD=Qil zk4%8$GB&B^dpMDU1C!cZw`nkXvtsTD%^7a1{LX{iW6^Vu=;VF?@kjHLl}Pm;fWLCD zPt1ilp}e~W-iC*0@yi3fg*6+q?qN}BC@e2!J)|Eoi{b3+Q9tN~k&nW`AHf_Q>@8E) zjjk~5M6GN_+Lc=QC~eoQe3Z6sh92FNn{z@n5fC(@QNC^wZ7+Hb#tsJ%2By+n&bp#5 zX6dfQWO-+llp?+IIJrf!B6^P-k59;sW>G}*1`e5Fp2iM|Zd~MRCuGMCR@y$;nM#d# z+F%-LG>_6|)5=F_<7wrivt@Va6mhA`adp0*w_iX3vLn`4&vc}+{M$cM3+N6LISX5?fRPoE7?N#}IeUSXen)&-5 z_wo!SgR^`e-zqdRP?W#&<@mjpc5Y<|TQ$TVTvg`ycQ08@%?fiL zeDg|BBj<^=SS_7iQU01w19MnxYw<7GLU}(*M~3(0;{Ca2+@T(|d$%ASoLne@h1poj|;|1Ack|(K(T@sejglWIDbR>Z&th8M=6e^MnnIdik!S)EsmNtcl zkPdH|qHOeA2q_1vkhUM}ktxAkzm)FaPfRuk+ZEtUL-m!9>i{J%G8hAZ z4U^55f5|d%^J5-x-mxn==6_+&{NvE%3_nC^bqaj!eiQBsk^IbX=JVqwy>o(89929_DFE>d`Zl(&{DlP> zkANJ6Ah=11K8#>8y$>T;On)$f!Sn|s*h_yfg1PhuBUnp+FoJ#a2P2p_e=ve|^9Lgs zHy*tBpi>dYy=R&UMs~&2)Vc{9ULnS@`8|7jj~veNC`NPyJLoML!3_F?5v-s;7{Lho zgAr_?KN!IT`hyWT+#ig<;Qn9){`LnWus07*%nl|j8k*{rzw{NMGSGmok2*&qH3HZB z7e-)ue=q{i`-2f!-XDy>@%~^0hW7^}5RyL_fsXva2xR0BMxY`d{DQlT`wtnRv3}VP z7&<3$7qADG*w_1Bs}gNZJ_TwcX?QTp2n0x5$3cI+qZIT#2p$~i z!4V!j$%DfQUTreEW3NgW7k+|>tw!u5Uv1T`o$0wVP&1J~YQw z(DqLNT{3p|rn7ED>U)<#VA_}HSix>O&uOzZS6G#6E|WhLM21Va<%X;1Fm+rSbWUmQ zV8{G_<$Z)ibzk-v7fIDFKL@50uQ<|_k#&Ew$UD{M!5yuJMgAQvISVbyy9$j?Q7#fn z0elDH1mW$3;#v+6LSW0cwPZVxm9IT8)%(31hKdnkxXbtc31=sy(V8fK{lgePd(H$o zb>1tmW`F){-~u|z1K->`qMXj+Bl$=VDlt0o-J?8t?~esZt8s;^UvNrZMp4! zwYtlgD5~jYHc0cBMFwB5T8o0({m>w61D`JN9>G3FGZ1HEgwvHa_5 zLhqmCJxzOGlU*%|H4fT64_14y%7YmXrakC-Fy+Cd2OWYxac!G}HR!~3IKKD<*9{#G z6ONnJ-ggU=j$ICq4uqEEv}*b?{2TR|T$|!nId&OdJeC-l$;-+K&K%+-@RwQ(C+6AG zHCq2W7<@pr8a>~Ik@R+}n(RL5cfpY2|mdD`a+Pi+?23bf6ay)8!!6W*I~55_!b zd(iTr@F4dfBUnv6uGw3)u%?rBk=zC>CFZ>M-n@Hr0h}Cchf+w_kDI!j9R(}nAR1@@ zm2?~~Hx8qiwiqQ1Fp{e@CI+?!Oof0+Kud~4BqgJv9YO+KQv!Ctz)}HbM!L-bF4E8l zgI9J{6YG$5Yq$Ao^=TCjG7foO1OTy(yL*YzY)*iN-wrfjf6rhePH3>L(lppwB+6p# za3LgssE%r&`t?AO3d>TF(bORFEOM7I6LemI|dEA0^ykhWIx`OEb&y~}I* zW&}-HYn0sIfLSF((>f2ju*D*AS0koHmX$~Q%Hf#bt;NZi!Lgsh`|^k1`$jv3H@Oe$ zD7Qm>Y!EFTI@b`7Uz!e`Q!=x{)K?JcQEQs^Q#St-^E=!RsXoX!Y0E&&5RL*N$Ho>_ zj(9i{Zn9WoR4H67rO16p2#PFsOhvvqrXsT(Q;|cCsmK<`ROE$YDl)(^6}jG+ima|u zpWIj+b5-X`b6D{tm?N%msn5V2&>6V!q%NDgfXptaY{p?N)DRkT0TH%ykHRI$NGD9y zP|F6_T{s{-oKTKCxh|=EIFqB#sqz8BIYOQCI+Rdnz^I_ShY-(oIt#`{4mu0AfnckA zcuwiu*&zf$HolnkiOlo$)B7{PpqinDFe~f(xK!L+qqPmB33i+|vp{zB+F{0QNL;Uh zU9B6}OnPT_m?fFE{r5}LoiA+X^{en(i;k3+Z)^c0d`w2aUIB@F^T8|=Tx@IEr^_p! z8^F}&L7S(aqbPN7tD+n#!4u>CkQOQ@jFY$C+Br@;$IDH-Xy?GZDp@1#8{^@y=fy^@ zp^>qab`!@j;M1MZrnW^*Gab~9P{0_WgVOZ{copS(!L@LD((PiiB-e}W@}qwTr^m9W z+_j>fK1LSH8UM*$t29l$oDD9qQ2n*CV2w3tVOK_Be8!YU9kgAV09>c8a$OS6TSd^0 zkcYrW{w|s$b(RKO!~uq-J@aOREw{@Jc;QwV`g;jJh*j%;yAJb2vbcRl+O#**9xl0? zHdN?SP)G%zfhTMdp6C2I<1JEZ<2{XO!&Pz!JK^Kq)*PsujlNRrDLlcrqvMiIlum9i z32iR*=?yj;G6sooGlCSwe1%QJf=$D!!$*cg!e*`dBfHqTUj6soa0nw;a^TN2w5hJn zVAD`tn{>6w(e9c5 z?fc$ypHyZBd*GlCQRq-UQoctILVIVQEr^bglz>e4t+9Z)b78W)3BxN}%z>*0W_QVi z-^>?PP6PzIJnqYej+Gd}KoNAYD}cKR*&)5=wze}>^?D7%U)_$*h3xDViIT7zzq5BE zl+4}&((K|!Zw0o^0G+%X6UuQdcJFG-*C}q_!V#dE>vl{invuxdR&D=$x@p0F4@4|8-?tom#h##V{H3YM&8*DG%5^aIpp}c{Ya%FV;$A)#W zByxxu?6k1LyD?EUZ>bI|Q_`M*wur z67ccE30OlR94E^0J%(U4LjVqIFAbg&)`P@kr0%?;c*!hmAa8K|6=BuVV6%KMZsdDF zfgYM_X#?Yayj}_$fphaQ$P&>dsqiuKx82_qo*bS6WMawTuw-!a`dah zxxxbr-GM0;YzS?PMS8WMq2B5-Yp%0=F>83d5W_?v1~8~hT+G#yZS9N;)}AXBSh6Ho z=pA3^D9*^Xg%0+t7qN-zqZaXIYOpr(erp@UVa>+u&47kAuVJ$}Z?Wx!;s`(~Y?gh- z;>*}jGH@)|(=m=(n`~_0eI~+MaTRNAlZiH&(^i#)634HI^Why);`k-;J@6a-7ENl2 zjOo4=Va#bUXPPPAU0d-zb_%pAMhgRGibmJvu~&#M(6-pz3AvFbDHKChv_sp-_kFD! z4i_v5$5;DPnE>&8kQD^d)^6Ce#|hsg7k-9KKP9G5P#UzmDh8ESa_~n0KTf5;4r`ND zm1>7Zm79=^+#Pb)CLozc6>;RdL3@p7S)J-;rD-90zt31lK|98SO2xPd*)eV+c8r^V zt@tN$Guq+CLO9qzzxjQCrz0noED7_Dn|+&@d;!hoH&EyZX~M#39}zVIQi8_pj?O}3 z8E6GD@Q`d;!t>o|F|?X?)2xagL~bwF??Mk@cv*wAJPp6T?77r(&GHC9%hH_xW7M%brx7M`F#7TePEQf zZLLC*T*TajdlRWI0ci7d!syuLhvxegPyn4}ahZr~2LyVi^A;xDKU}EBA%r{{&#!ZxraT6pJKh-8R`XrS3OARhV zdO&31IK2mQZ?MUqu|ktRW87rV7&pl?#!c>waa$)bZmT55ZH>e@P2-C+5^oQ-K0s)# z-uv?In|{1_$yMv5XVGmHw{BdhW!76aN@f)t_wJ8MeYtWKmj<^35i0MUl3md%O-_0e zR!Nrtn6tTRia8FDh@LQ2>LkI@@N4&S8Ub<^<$a5FDtUjkE@qYy6A!1x4;TEQ6mC)T5f~}?vi^XJEL-Zvurz)rOoh)UU zi}Al#;Z^ZS)*2Lgp8@(R4OstNJfjI3XRd1dSLrc|m0Pu93M7WPP?bs=} zf_xR1M)_+` zR?6-bgB_=|E{AWp;FQ)PHth3R*l~q_X-+zaZXYgLQ<^@`kcjPWm#>xL^8);6OG`O! z=GzxMOICB;aEYlaE{HG}-(Vbc)Hd0ZgWix&&$)put48B4ljvz!_LBXVJA$n!&m9?fKa()VY#?Ga)wpHuZI7YC|5@hu+gz2vbl%t+iaQxYh-Fh>IAb2Ot5F{4rqg{h^mV^1F??^3v6PyYhuadM}K z1G-VjgsxB2$O51_9N9EdU-i{95rWxz%fgx6^6k_%)B6*191%62XQBNv06I&U`Y$LT zbr+CUz5iTT(0*WTw`?YN2X2*9l6hJ6I_J2gdfd-_9*qIudcai7~;VyfK zELGZpHFBP5ubEE1ezDshfC72?$$bA6bd}gk%v}Nd%cdYpP#y9!gwR?B*~n)rz#4;J z1LKzrj6U4hO0d0w_wwjbgQ>S0*8>51GY-nAzhp6VoPn{k>F5eJ@j2ewV5X{&2R*0N zrYA$cU2M}5ao7!fPtE=bsIe&+HlWI&tl`XDJ1YkOM1E6{N zJv0LOkMm(Fl#XsKkj=ld=lES4+UAc!*cifKjigwhs(_GW3XVGM9@Fpuq7s7Y0RERo z0s5uZskM3*8*i8IX?;?l2y0?e-FKiHtalQiO^*|N_WQFM1O82f3;Gulw)rd-ezMBeMz_f3eb433q=<^n@6WLO zsFVv|!9Y}Bt+8{$GrW#-RL8G;qZ^)4*P$A0z_+sHST%)O3OL#c10tXRx;M$7%R;`_ z@3yY=ZvcOWv-Q0T&lnsU*WpD2U0zO}EP4FIE#(IbjFXrel*k%CHd7ciE>ASyEh_%Z z!Fng;lft_v05L#M@czyj@TqBF3{17!b2vKNMH>&<#m?g<)OvOZW zdw+ciTJr_7Mgz_bwJfq;SU)Ff5)cZ+xpfod*Qll0o!Fn8%0La<5G$m>3G z=MU_-Ja6ofLeS0__j|x1bIli?Ggvd%UvI!b5w_3py)BPWq8t&1(Aq4JrGEEJN7tYd zP?1PSpjS>SIEp9O3ojR~s1imis>FKHiYkHLYIj)Eq!m9N`iWL>shnsA#F_f{1{r{uI=O zA!5OcsxtL_ewG8Y016zAR<{w5Ft&YwgPu4)b6T#np|><(>Fr_Z?+C9DDSR31bC}u> zJ>)Zk3&MrxUD}74g?3yxf7R>ugt0lktwe6|3j*M!Z_g+IkE#i4)r9845(WZwv6|Ky zq5uUKyfXn>Zo}Ai*#+iNxBvulA=X>A2C>JY$RtI&eNGXZ_|Y4zm*b-u7UmQSa|64^ zcqT#DI2qRTg%MoHhopX(`8tXb0W;aGz}%+0CxVx zI(09AS1*tgcFeb4PxBX1$xA>Hw1T6qs|1l7L?tMX`h4IZF*pi9)s8l~(}QUVPltrn zIO_y#5A%S`u+-lbp5#=KsPp6k3$~W(w0#^lwgxBo7c3Kg3!ep|xfTQu&hg;+1kmZDV~ggml02j) zu@eIELA6{B#I2zdy2!N}P} zcy%9{t^W%4qYaxz(zT<10fY<}GkS?p8Av2>J$C<<>UC#;GYm{YoI8Y`sTi{~DQT|% zGgTX35RTRG8_#iU_-U>2W5X-O4;~wSMw=@yP}_g+AK6c#?ct{Z=l)Lv*FU2*&^{x) za{j6p*d3Z-5RL*b?ow?P4g{Ku^2p1Kv*z-8!IX{fJ?I2p>Fv2<@X|1lbbDcVDQk%3 zrn_Zc*&SR6emsJGjl+8X+IF;%2-Z)AEve00yv)XRrk*gPf1lh#jARXS9Pwc`p7?Z!&6k%5e|;afRjaZR5*f>8rE?Ta8GkzNoK5Ew8mFrHFU)JsuiKnBR(6pjW|jRhSTa@-A92!{cm$u3%0 z>wG2$ec0=i#K6iF8_75EAkz&O?qhSuAiT;$4~geVFJ;Uov#)`n={0&`crG-owzC_~ z>y}6CE|2(mq}y#w?!@{2M%JagZ_zz%Ns>@gG8{op6yY5=>5%)l(!+J!Zml~-9vaXy@ zJ)7Z*r$(RF9i&gp??L;7nrV5Tj6wN6ed_jKmPpi#!jFjc$Ow!rd68iC-QVhl9}%ny ztaPjo_VChLS@B|9t8{0p1N~M(dndeDuine6TlH!+fqtW#aq@!f-k0+M%m)yGdUlk*G8)j>8W|KVUgscfPO1b0AcI{{qi1Y;5KGLDeM3ke4q(!5|FI^KxK)XbE~miiY-ksY~- zZv!sR7P#15oH6s(f9{57c_#B-7@`!L^nw{oQ(y#Hwfp+GG+`hH7u5K;Z`5CC(FO1+ zLzV**zy-od0FPKwiY5LrwYr2j3gFT*8(UN3MI1|-;-$iqq{Rm>$BBjRtao~Ws-rIJ0?pIBB#)w`3j|;RiWkpw*?iC`ouc%*= zoSipbLdy2}dJX)*HuO&R^nzF=lexM4$H#0@Z?5e5HkY3{v}w<`nYM|1ZmLRds!DDe zD!GZ0U2bXzInabx_kUJwrcsITsw)PJ*eKnBM4GKy-MV~6@E6n8YO;Y-+{;- z=RvfBvz)5;9=2k$FwpkwA^H(135SdE>3JYGpth=kj8j@SuyUlrw`GY?f>V;8gR zIR-Mz(pbtYONXKKrlIuKq4cRZgxR)pSrx-gICJQg=MSaNA4=~SO2bSotN-Gm^yNco zK#BoA-%mp^WSa&vKIZLmPAh1gIPUW!7-2>t9u<&*Z|Y;QrpnTX4-S7x*oG~WSW-X(j{sC?PV7Z3-iKqCmNd6dKx}X%VgI=BzXQKPo z+Z^uSCUQPGmF!ik|Q#!;QLmtdqk+!^=$@2 z>rf|Q`yL85?~wk^r>CX_(C$F&RJMJ2l3~`k zmP#eIWfbQF?~+A9g(P0$h2Q{@?HCMuh13Z&I&Y*d>SI=G?b2#K(zUKf3h8!8Rd1D> zp!(CzjA=4@WPs7v69781;U$uRKKPw(I5Hwa^%@d+YllW;vLL6SRh5J83He3H0cNh0 zGS|>Prrt7V$`gCn>iv8H2A47RlTzBMqn^p$J0w6eK#UTws*!GC@`zSuOO}-<3Z&U3 z*^XXA8bYSQpbNrDY05Ds6RuxvOWBKxq|j^$!1R`B&kheW>|2zt=|~TVuPOF!b;&M! z!_iHNe8c8cSLOzco$@XJ(xrHBZ$T-+1G-##g!wdkT?___7ij%LEMom&jP|lM5>C>7 zdKP}vgVo5NPYoxr0rC}O!SJN;w7}Lo33@(5|FqEr=pDfz@EHy!o(+#p#*>CKo;sZI zwBZcN%)dqp^!gE0P{p4bp62mz60;Y6l%MSY^i^H6;;rE9zlT$-XKMR@7m>dCU%KIx zIREN0-DL=G`gT`W)NA>l*1K2zZ6l@I;4pyF2y}eb805pZ!rVIwBYM2q?hCRYGnBO3ckLAudn~1 z@%_x>U5bGygbU5m0E0f$zpXOOWu&kJx+-D{ynu906A}Pwqh!;Tf@y z<^#5T0yDE62rrlfQqK&S*-C^x=ALgsNIK zGO&2?Gxxo>C4_6yo9pPCQuJeQYVG7$iFqZY{Ku9R(h~`2mal}_pIBwTUDr@Y@4MM5 zi?95)C2Y@@3K|XZ2eH(9y;LlA-)qc&W?p`1|GVX5F*e-`rA96*)M(^uCYCqy+E^K% zucLgT@yfOSiZ|x3K9XLz&mW|GtJs$g2ZZt6E-f0afH1GhR!0Rvw-27I*klt@ZNiy| zmh>~QX>2=|Q@ijcX`pbiW_6b^aZ9lIh*7t&s&t>wt8_p~OyerZS&SSW!)-hL!AGkH z?A9vBYv!H6+XrNn3cRrWiX%`^^B3gNa=LV1!8^6jf$C79jS6PGEuCE?S2$L zKgDi_vwvo8t$mLA{FDs1?F1DFM&BOSx5q=bvLcSJ=!nv^6#L9QIslx6LEq$tisnEx z{Q%P4sGj7@x1%Kf(Vve6VEq?yixQNO(W;`>)|U>+W>Dx=Il{YRamUzXWn(SY&m zQq%a+)IPX?GoHy!z!*>ErgZY75`j0K%uUae*Od6&jAI*%EBQ!?&y#DEm^MS%MtL)q ztat_LYc zAHoh&0yo%3V6M~QJ;&-XwH_WYW5Fz_kQNRUZz{^FvV)OPJn5`zoED6W2W+^S?R({Q z1SXZap3$eOu_Zk{l-BxcJ~u<;M)`QEHO;-*6*r!nZE+)Q_Qj2~*%&v{OkMrGZ%nnO zuIgS{>^Z7sp2s2YwYBgaxvYf?(9)pg`y&=`)WVep7NB{M92yFnOsRtFVk^#N zPlH0q=N>|Xh#G}fQ_Mb}Uu4ne(6NeQ$cqYctF9Q#w+p%2#Ov~@yYs_*{*^FqVLJ5w zW)Ogfhsjm>vU2Lot%w%m{zCe_MKVJ4+EB-V86kUiBQ9q6EDnFkNdS+dXT7|NgQWJv zxS73s5wm=+qI)&R-aJrJ6}=(1JUXjKee-@%_J00km^(8NQ1l+{bWQDN-vn4bQ0yP{ zuADz&?>=_=I44Ke`^j2!<$RB-|lu z=`PY6(rensx7Y3=dt>9ZJ4ml?y!HXohosj45A8%;ldHwCsiYT4uL`l9aJbW)`wCSX zO<2{}V(V4~Z-!W5d_8O`_R#C#OPqDZo=%ExALD$d(O`St7s@mYpLC7ChyJXFOE z)*v53?+lsOS*v^yQw^L_mW)@AWvY!im!_>6Os}RIy7az|Yf&Ymn_dJ!aMYfLv+*K> zmtI6^r573B^rDuQM#1dwZ8xBU6PZcwYPmFY-6AD}9wP$iCWZF)OTbx+{1G#GV61!_ z?k~;B@kDvFHqWUs3&}}`IR=0cERYPy)~BG1!ZGAcpTc)7&kRZ|Z}t?1!198cCI`*E z&yEddKiDv*y1LSHJ^n;?K5KCN^h|$?mu>S1(J-5$7tV#*cRU@0TFBn|eNgT3-c78? zw)mkxBw3W^s1!uY(WvKuw{bPCO)cvi--k+*V&F1FABO7A-opjf!bA~*`0ZK7q4g)T z3-v6yU%&>|GDPbR!>ph1VcrA zwX6k>by>^(gRG_xpgJQ5@NuDu?(KL7_@Ls8^P%UOlxF$*sK@(_&+Vt@o(@Clny>cf zHDB%Nny)7PhOx?1zC3h=1}z981ua;ZftgI$a7QP(cBfFJ)D*$U5Po+U_rv*2!!^{r zv?Fa$u`#w@70MyURiRY$n+aIZR^t<(KCrx1Z1}S0?%~ikZj+787@y`NC$Cs zh<@lcAr4N!1-nYJ*j8+VML|z$N03w}dT;q6U>5zJ3S)8Yx{3)b&A39yc5mVyo79Zp zAMVz1vn4~^*Z>HBPw7-3&d{k0lP5QQwVm@Bcn11ZGoajBtFGc@LtTXrJ+*u^_6H;| zv4r{3)cz~?;2r`)w>{VeVK*pSrZIG?s5-D&iY7SCzH1V+pcy+g5Nie3$qA;mWh5!C z<;JYM<=+5yaouW6b)pcvwo?!_X^s!ZU=DI8ehiXL*+KFUeeNEjyRI zUP`h59ic>9=(=DK%>IjX)!Yxs7JI zi&r`H^_9@s#Z5KH6|Ku?AX*A2;FQMENMcnC4Kirvt56n+0`_Q1TV(O$zw$jlUn313 zHjJ$9%P*nIC%(&R>azx|IqdWb2BU=a!77x&*Qx*M66N7eR<7BAv1Opt8V#1oOYQP7 zzJ&st*-K|4wck%mwF#4D=GP84R=Y#*vOZhIbezv%Un)DvjQtI~d`PWF_jDc?ZNS-c zfQ#)*@>m;edchP89obh)UH*f=h8MfgIw=p-W7V>fS$CjHp1!#!Ogpv30>mEzIJoi*cwQqBjhwxzg7zv@g?>V z$NYd?oZJskr5&diFjNRjaUDfdXi6TTqgu*#bWls#p01^APs7XwC*7W|rEE{bMlO3^ zONRcumJB^zONO4VB}39*joz6@5pIA^o%PFV?9jN;XQZ$N!4pHLM?>hy(MBR!V(V>w z@zQ*1`8N!j(`Ca+Qd?aptnx@cLyw~&hoU+#`iO0^$7>G9r8_h_!%B-&@EEoEl|Z@% z6Bm)DoUDdk(;xzGtNkKy7MIs7U+t0ZH6TK*iiBAtEv_3Qxp76b-E*@6#zn(0aqYj0 zx?yZOM8^_ks)cZ$idqQwbS;E?dTeN_Ya!g9*Ic2eYp&4KprU1<0`%7DZgoKZ5AyDB zcKmj!Q65$+FhHt~BD&29Hzy8rYm6Bhnery=g+!pVpephriMY(AWRXe2dhoG$EKHQrLoTlVBN)f0;BoB;=E@uQ+G4?K&pnD)1C9Wymtxrp~Y z_U1g7H+Rmka;g^=zsGd!!urR?&W3I0s%NyO#-{YwZd;JYNM@<}#|zbIVr@eC;8@73n*B(_aV=B+gLT?h+0@<-#_R(RMU{;7FlC{Q#jlM4z}Th`$RIT(QOkcr0%mxZ-~{QFL9YJORJF z;zrLRt{v15@p5}&%iO|?KB3*O*=6G3qW04K^p*2%v~OS|dA*uwpc=4pMfRd-iJVi3 zmjAGbrLhLd2;zh>vv7A?tGn}R-t)TGOuI;<`=%=16FyMq* zSWxN~V^S>^#@#BS;MMVXmOwOLI@qQDDqD4k3bK{3<7_Q)0_qP&{)#?NW|(8cPp@1^ z1q{|$E|PHA^XOlRp#fwGsn6i@vd;F(y62Y$%@raFuco*t+ylSyFQ>`re zHj^f4fVD1{1nPJ7O`dj!pQ3WnJ!u>;?ZLkwU7|y^3H1PY% z^M|gD0B0K89vccX!J74si5gUKW7T86vFR~xd}E9o&luyzFUGj>iZO0{qT;_=*rwFfU26_FG?zwpnwp2Pg|n)@}>mJrhA{ z>>%8?Aimhv;K3^_hX##$MzG*xcIejxxu~;xrbD7ui9n4$Xg*lq`_&{+v|6P{29Y9Q z#yH2pGNw7k^TuRARDELBH9Y08xW;;an0LwR>$z00jXWcaLwQCZhw_p-wefCJsaAQn zcZxN&=i?Q`&w2(@=7>P4Ye@0>C~DR}gjRFg2~O7C~-+F;Ph)y;G)}&{{E@(E@@cMJ&5s zT@w?T$>v_}RC6zvXCl$kL_wGfc@dt^uZcB zc8)t3g97@E&F|Hf(S^=P7usF!EQF2N&5OUI-%DYGy0)&n6xQ#dzuW$?2hl6@wyMg!pVNn2P(EQ$juKzuZ(X17`dfW` zYejvNu|DLyg#l>O@S1wTdba)BIOyc)KEMG?mRJNvwEP>EuldTeBHbM;j8AaT`kygA z=?xp7aQ=qD5xPrS^$I+v~u7WxlJtJoFj?eX|fZXVv?ZOFFbhUecpA@{C6ssxRr&8s(Bst&x|H z=wEDk%?_aYt#@7T%)1+g`*w(WMyY;PTaQwt!%#Xg5b=3p9%4E%4l$ipYD}k98q;Zo z#&lYpF`ZVX(pR^O&Q*mwvzKGQ;oV)xv)GNkwlcMoG_lO!rVsqq7B@?lG@F}FbWLpc zib_5E)^>4_PcZqvTSpLYic$XnDc!T^6Cnw8sQo1}Wjk*vNz%V>;o*m`*q` zrV~Dl>4fuQI^nyRPPi_n6P}CdgyWRHeX3Y{RZ9*&Wv|R`X>GFiKqfm4Np)h7MAq;l zErCGWkO&00-H|{54U#}0`48n3KA{RbYNiAKmFjXN=5A+)BzRrHPB+K-0UWqIrmfEznssvDDXIfQ`nf~k` zCG2*O?^|M3qYjOYw4Z5nd(;piFPd1Vv0nQB`yh!>X;m%xx&wr&^*9Qgv2iz}0VEl% zbUCfjVvS49;JjBp0G!KbA4^Y1_S%kD<07~YbfCR;YA}o$zox5?Hps;|()KB>=U0?^ z9fvi!>ITG3ZiWyHss7cy6=kQe4jeFrx`DuP`a!Teg7YMZeZ9zC;shfmHS#HLF{Z&} zbgfSFl{&qq!TG^p+?999=~pFEPFRtXIK5OR@p>sIaeJQg@f;OganS3rMB@hW+Nnt9 zifyfJg;v=Ia}=GX665ezOPr7HmSoK#pMYcinyImF`S3mO{nd%>tka44X<3GKbRmmG zZoOq(%>3nsPVJH@c2#tszm>?S#Y9FmVGNRPaRRf6hK_TcwnZ|HP~uxtUlZq=auV;F zauWBNauWZVauV~BauWNJauNfRauN%ZauO5cIltQ~CVlKBPp)7*3K<`o`2o-Yv2b0P z**%(Fr}{3LlEaosrbNi(njMq{j57>q`ECH&?BeuBwI^4I?urh)B}d=D!PKNAgKKpq z0SxOO@M=r?9=#g%J-j1&!b^BF;}b>;WIUg&;+LQ%LVDbyU5LtS|G?OSY3I26snUE9Hj9Q4Wq)jCF# zNm&#jIKN$fh(jtX>GUA9S4%I|D!=rXP+gGDulrTtGR=28T3{@(ooP-JzQ&A z^OEH_&r4yMd#d*$o8O%x+-0W_APB zHM1M|u9@9HdMW#PwNx~GL9go=FCT@bZ2$~O0~Xr8p%lYrgVsQ#=_`z71DiIp8z{Az z-N38O>;`geW;a%BGrO^Do7s)E+stk(;AVDX6{qYkx2tn(GSTHOy;@AV*Tf`ePb@BalSq=2AEQOmWA|IU z+b$pboBRCWGWXhj=1sq2XPBwyOV?ao?34ki?S5jYg9=jup_Qp0NE9@i@5jD&?bUV| zIo4PgQRijC*)G3)|MjViic>~aS~hVblUQ!S!8LUzwW`9HoT>R)xy+rK|259Bbi}7L zw}#jR7l$~t4}$zN<_*&HI@+$Vaj715FD}r z5U`^wTwCRzEKcKT1DLWkcxqBLqE^vP09r+Pi1{sG$(52)SY5|~>U+qcasiXEW_<>= zdiFUzTk8F(Gud*ucsW=jeL1m=7{8h_v;2i2;MeKp3ixHq?kX-$j0o;|7;?!2tqAt% zyRXFzs)%i>ipt1?85kmdKCVNg&ohSzpJxt{JdY(B%@;q~hLV4y8ee%p9>g1V2 zw290&P3KRq?ytVL)uaY?cRC}oSKngs9s}pEbe%V zaID>>0E#U;y>|(~*>^uR#$+?%c`feNQq15llwShs<$tuImdD}IrgeN~`bRFi3+2^! zuEJ?fU0@Tgbtqu;c2ia0NsR)V1E*|`&x|N+t_tXiv+5I14mcz}KC^ZD&zZ3>uw`je^x(s@=j{3z$UD8Thm zxFf0xNLf@BIGK}R6j-eSCszfeFscfi!buPcn7f=)sscIyQWZFrGqn_0qZ&@F3d}SL zJRRE(3anLur&k4J_g2+#8e3EpSf>J~RRzqJFv94kZe0_O<^{J^x6Ik{Ujf{s$Sh^g zC}_T}D9tj)o_ET3zhRp5Z9Km)KEDwmT)NBn{C=LxkGemHu@I%4gwgm78833XuSYt) z>%|r>e~N2~p<+{wVx6jzsVY+FDX5>8((d5tRcLpUwVQ`Qh8u*VGTQ>o&1#A8TQ@ysDX#WRP*6we$IQap1=MDffa z-qACMI7iPM;u}44h-)PCwME{lHqcgziqc&%HZrkh8Y(p++B|8m8pnZz>}AYTXir7O zqQXj+D8)9@(hRb4@!wmQl)c^fD}avRca5?f9MIgORWyxaX?MNwioKQ@+|2GSXMbJ? zB35N>{_=LaP}pjBOBn~1E#55U1hgD8m{bdNZX;ulxL4lGl*%@d4Ft|-a1Pd_mu)+( zg!f3ZI>a~oXm!Fe?$a}ecxKNW;+Q>ih+p>1A#T|-X)iF%ieo9GEAh-BPT4c_Q6;k# znV-&mR!3U92-saC=_dpaS6s6&Ml?R(@hgOjuc9hzVXQ64Jr?uphk zyS@1p?DtBM!8N6|BI8jhG76_EjkCtg*L68Ev{Vl$X|ZQoar9WqVKycO8);*b!*I6l z2WzxL!&&SON4D3`v*Jw6Jja3U@%>lIiqK)MyenSGBs&QJ-QX##v0Ve!>UV%DGqb4W zcf1kn%y;Njxacx}UT}*!QG0v*3l^>0z zW$~Y(jxlRxb5d}oPDF5T(>~aDHO-Ko+9Do)tb8C7Pd=tCCwN?GdSHFW*d<53kk(W@ zA;1{Q!V5#O^7Yq8vCeeU&kbwlJ6wF{h!IUZyD9A!h)~BoAe+`$P%B2G`0J8--a0F* zN-m|4_FOqSMPfOm-<;oddS-u*KI^tW9IQQ+^K2Z&pWn4-ppmWE7M$mUp%E5XGttbU zqf_=BGS>d_(=lQ(Cs^;GwPs#x7Y_91uhhx@;n~BD9u0sb(@lA~U4I^aFIrqBvU)np zx|w!}zF(i%SZ#L7ec9~);d-@ud9QF0>Ajjrz2d4LRmFA6)+=+BpkCS89hDyZkiD8- z-YYh|#Q8xD;~X;vnq%`-AVB2u6h32|U=6?&VmM%$&opgQbw-%FvT{ha9a_f}7?N{W z78sIwR~8tOe^(Y5l7&|m7?O)u78qiPRu&jyj#d^JVw6@E7-E`+3cPQ+nDe7zIu|p}g4Q$)lReoJ>%bV=MG&OIf%#!*m2Z8=ch{cn49-=1=BKa1D}88TXdUC-o6Z8zu zTvb_?F&KMBeou?q!|dC5+r>b3#%P}L^~t`BQDY#9Ij)3 z#YkDP{+MxXczIdun9h<<%kEnuk2IHYc9E9wgOP|LhgGv_4$sP}!c>QCpn`+2dJ{6` zigH|3LI=j^nPp=o)JB{uPm@5`E>C1;L`)$f&|q^-U-fAYHGy7HcjnZA&(Q&?3A8mp zJ9pAX9othIg?FuuB1c+mrr?-FTB+NJ>8C)4vj=C+NaH#!?&JSZ_b%XeR@J@tds%C* zwfEYWl@K5jgm*1b5+N9^3SP`i+}M9MiQBpZknuML9A zt-1-&5KY>6M+FI9YLJWZdaxoyMVkWFRPCqM3*YZQ#(dwk*4|O8^?Xmiy_5aUcfRvF z=9puSG3J#}OD3JC!E<#@uBvUPL0c_`9!z%zKuzGpp3Z2LB{}2bB{<-0Xsr4Oyzv(#>2Laz zpmsPU*eh)`uFb8pg8R{e`#r#2`Wy2^EbX=$w@cH6`(f=xe{AezhbKCVk`VohO0auA zYsHgQ(1R2t9Sa&kPLt|DKM$dFaSWQ|D*-aQ{NiphPJz>RiRDgG;o^)EJB2H!2!sw` zkK+Bs1x+&OewU^lcScYjhQzkYml`k7U7Xz7Gs^a?u5+aBIjaf@=1Ac46O8>Tabk{S zKEDLm0H9Dwe)AK|k=W-am?OE)PcTP{ou6QiL_0sh9O-sWf_aNovhx&XH>^k$bhD zGm-72XY|1&=PT)4=PM0~L?fDhBLTgfF2~bt_kMG2Z}U}ZBJo1GSRE}}OSOfOJFA0O zCmsi;S~8cp9YI9vWc(i%S=4$N9kLk@rJZ=Qt{ob%DbhhblQI#()CYV?of5A9ODvdd zIgzV1Ex+8t2$6@yNiVS7lZUys+KAW4=_-tgwN0*6B~v@HidPn4(J29+B6St%3#gobljTtNLWO# zDTd(J2r2d=Ev6GtVH``*5Hwy~`g*|q6NO8ZKsJ^*r8CdaY;03#7on}F>4f;bvda=v zfTW2{EN`YjlkR45_&SXe@y7=eBgv6Syf^AIL|T3vjo3rGx+ux4CX zcehOU8uyvd(JQw`PDDxYZpg@50E{0{yg0@Ws9HQ~K)K>k1L_oy8c?8k)PTywqXwie zj~bA-JZeC~@~8osim2Ds(pI@oIM=Zor~&%Z*}i>Zn_nCYlusRo&(vFhf|vn|K;~k# zqpWfFq=lBVJiK%3C@TMlr9#ca&DBeZW^5h$DvT}N;;;j-SEht4gW6bRdP%(iOQ{u> z2U3V0)m`q|b!^I7+E#O6q*j0NfWjYVb-G|bJ|(~o`vwX!vxL$2Q=>cb>2GN>+{SE3 zRTIaQ8y8}461j#k^mwor>3ZWFRKlZ_Ufx~Xsjg3ZT<^puwRIwX(rv+E>xau+fLla>W1Zq^sbY#l|HRPv_+UUukSH{_th&&)rJHiZz&>l4)G<(#5nCwvlg0V*ph{7HQJh zVSuaju^!+fJ!*h+^r!(|(W3^qLysEZ2R&+l6Z5D6-piu~xGj$w;ID{!S7xUU(OrwN z!5pEdyT*8+)LmaKWp&g&wvTgF_S?8Hj2RaG33-Eh0L-G#*jRjp$pCJw@MY>=Auyu}Ac+ z#6;{!v;3Fe3J|XY=-*oOqt^XqMBlpL5q+xy5%XlN&zk`?9q3ysJY(NN;Sqhygh%u(5+2dFM0iBs z0^t#TgvBHJ$cjhw5fzWa}YSgP+2O>;kxmM8x}Iw1wO4Xq|*8`mveULG}|&;WKn-}lFe zN@wF>wH9Wfz$;`a;AxMPiD^1%>PjOlv=EA7dWwwDhA|dNnxP2oTW4v)R%hm(D$k@u z5?z2$;2;1+C1}Bm=>6y^EmI&UI%CmPcqi!W`I;oI*NfH59^YMYR02B3b@g5iEbL$d$iV#L8c*`R}jQ?DyAd z?)z&s^LhPHWi+n!YA*YqMLcIiHM*&@t<^pPXK2pZA6!_#41vHQdj*+2RfURttusRkd9BYqePTYqeDPYqe1LYqd=HYqc8qYqb{mYqb*iYqbvW z`d=U-kw=G9VvH|f{5MYVXKxKXPqnCG&2u~M-=UsRq>yssiZB$LWk>)ZLQ<4)b?^T+ zKX&MNv0#QCz4Etp(5E(6CphXlL4aB%#0rS^t`SRCl@$%Pd>GIc#l=^E$ zNd2`UqyAbEQC^n=8)o<~g&9EKi7_`oq7N0p^|C5*>#u2HO93;=s33)F9@y(>MQGbk zZ}HOcZ~jvBzeHl`Um~gG1;e45bQy;f01-SY9{^Igl~>=OG+3Ew&euT^1Z>~ukh6*F zg+syySXd^%DgO}vJ%uz0vMb#61+;6r!9zqS=4Engeq&%F%u=eqB9-0qQLdYYfT;=X za}W^fW+wA44*`Zq`@OS~^7~7q`~DKCzQ078?=O+!`%9d*{t_pxzr-o)FLA>1a%%si zk}N49_}9P)dJw0(mmDX%zr?BTFL9##OPuEZ5+}L8#5v+GafbLyoFD!YX9q9e%hKUr zXeDS2RI{}F6Wg6eZroU+dgY?K)b_~drRh!07t7^$$Hk$apHD=7p)Yco3Ks-1(dHhn zOA9->qqJs~BMq8fRIROr>?C!vY-KKtRQ;VH69_q`CF35cIeAVTLEB;^9Y}Rlw*x z9OQ|0dN{xnGxo5bC-&~)0iGDf2hLV>u%Ndy5;7y$!#hU%c1A)T?Q}*0D}Os9A+xku z-ep>~pR)*ZL7}q}lC^b4LJZLiPi?a5jD*yRIwPTWZbkX1)ff&-`wRzZCOZt>vG6!2 zWVjDoV@xY~8MhY^wNi1Ehi~q`<(sBB%EOMY-f@$iio=ZJ(z~~r>uO>@@t&(<>;u=` z^{?{iZ6$!8o@{#jj0ExLxABu=?Rx!>xFAP*fgn?iaMPQ|s#lH^q0fllU|Vv|^u6{C z{f$FI)t5x+!^5B=D8Dm3T{l!%ZZf8?9<2+QR=~VmSKf!GhpHaKh8_QK_w})+9rt`# zLG)-2oO#*b_2w~^ZRzHHeBEw5s+Wbci;;&%K677Hv}zg5f??`Ee`ZdOZ{2^3MoKNP z%=2;xe3#sh<}MGGc3y%LNboQB$)N>cW~$TL8}Hs`zRvUT^)KJDt;UwM#+fhniuFKE zFEhIOys~TFb-zkbVR8c=w%MzX9qsN7mi2STKYZ?bWL$&WJy#;*4h$CQe{her*wW4W zxcevV9u%y_duH!`G`9Hf-ckjvAMWUr3X4cu4Ir=f$jkcKXEI-jHXlZ~?7 zDh!SI_~$-a;{L;T`N>%b&7*ghukAfgQ*DQnrG3J3FmHXrCCY=$=9JMdva*?_3b^Kxijz1;z6Y3C(SM{g=8wN4qc zEpW?MhnUF(ANl-!Uo8jmAMY-MmSC_Tx_#fhy=iT;WruRiOLm~I3$feK({ILFtir)O zbo)*t?2jncyT8qOXU1}!Y z8RqGmtXSGNcP+5F0;?ELonJuifGxYMrs?`WC9I~*=LO-Br2XZ5x@&x7Eb04{q}@g@ z$utX-sVS6Yv4oOi6o<4W``W1_nP7H|cs|B0@n_Hz43+?ydGAY-Wai|nKiWCTs803z zjQ-coa^#$6=t9Gx;-u&0(4Vk34IiOEzt?a%g(S%zf}A78a%`FtPjEL0M%uH0sZrQ* zHp_M&u?=F2Ch82baI3{RRpLU>s~SF?zPbPIo6HRW_ON^3dVLJ;_=m4uMbPH(-M5rM%QlDw za5n#XudjAWH}B)?KtAIkzVfZI6f1jv!rj)g9ZEOvdC5Lt)Z!$Y(xS2eYR9KPP(o*iDjduMh532kOsTaZqhYx!Mq{X- z(deg^WPfBJdmp3WB<15Des}ES!N0rD8WL-;Q7dcsyYc=S?*43#@1*aK^zmF&IG2_A zoEJ-1t%iC1ySs1YakzitOKON=hBD8~abH{_m2TcgxZvJ6S|4}Z{n~qCA0PY7w>}z+ z{*HP+FE?aKxMb<(ef;~lVDu>Rj!)lJ7Hzc*W`Tz9?xXwOn1BA(7s}2l^Sm4Y*RWaX z=6z(o^*U!{bH{h@E;mMYeEN>ZB01mjwbxd`$L=nd853Xz%VhZ8)W?__qrXEr<|X^i zz$hm^$3LuEY@k%(ygYy9-2L|-BHg@?-{@a7;+n{;se1ES3tHjo*kFDk_Gf(BE8V=0 zuo*o-8Q_2L$gZ+zt7R|?L-lc+o6eDYj>kW&9BP4Oo|i*QGYh*w@dKrumq3N>vToXt z{^K1#iQ~gES~lkU4_VOqsj(a^gz?$+>9zx#bn`wwFaShPXXXv!W2}~WS+47+K~;`< z$sX?mM~@-=^o^IrsdVuE*OtK@>eyfbj1SVAL?)Xo#u-_TdC6`YnEp-@KYMpov??6T z!%)4YuWdf7zV+5Ol(R~i=jHfnBpFIK@8cyEX9V?Pg2}sSvbu9Djn735{nzwK;zv3s zB1y1VUL-#;tBVuuG*_u=Vp;#IG(7TgbGb8Y{0k@G&f(%H6FSh1!xXSf&He`}i@5iA zzPZga`;;LWrCilmJyt90)sw*-n;xG?(!B2{gN*?@iR{#GHc21Uv}vEppR)rKah6i$W#|lA#21^$^0H@*#d)YGi`uE>@ z;Nae?ZhhV6b=-fWLseM&uLv`KZ#ymE&>l`Y;~_N*nJ-=oakdLRu)Z!nIp_9Xg$j9s zv(QrA8f&2yC+90Xbjr#3DL{PXG`!Ht>HbpJoSb6_63-f3EtGk z%FEo{n61U(?$5Rg`JxEOqgIN=x5JMZEIF|-mWpe;ikjQG@wtE^@mPuzzs>Xt&<_FP zu4yZEe-S4O!Cy9$&8)35%Rdh94yMFhuG)NPhLY=HcY3}RXk>zXJC4xt$SJaaAILd2F)lG z)Ox8CWK3jMi_i=#dn6)guIm03^gk)@%KH3-X3~7FvY_|5_Qm#nBei}02|E%mgGJq) z%x`FNBkq#0=dQ-o@&xmB42lAVaZ9E`{m(E(8aj_%e#W*J zT9%WjYLk`SxGSdX#0~pe z#p1b*Sc)qaOM*9uWo*cOHHv>i~7wf#>I+E$?l zZKKeGwoT|k+a&a$Z4r9VHV8dv+k+mo%|Q>^)}RM%W6*=Pt>;18)bpTi>3PsL^gL+W zc^$pQl-_?L0*)_7 zGpXY(%f9bO;o9E6q}J6LMp10$w$8Yr!SR!%*iVmeejg7!smjFj4hiH#KnyF0+G~u?VjV#llD?cn1TvJai_6`%CR)Dco53oXrK{Z--Cx1ZbN|0lbWQIK|%0 zta~IiyrBb2X=k@)T{{O9N!A%lr_60gu=-H&6((Hmj4gtlbE@0o7?)6Uy!Bt^8T$NY z*HVc|*m~`k=$!h8sT(M67VedCRBtX;22#DK%1EjgRT)b4qAFvlUQ}f;)r*SO6aqj= zf-1wQUX+pJL3(3kc`(Yz^I%kEiPS5rvPSAfRTfFTsLCp-7gbp%^`a{4q+V3C4e0Ms zv=HczGBV%S)LRbA4)?o6bT9Aze%~^Fmq;T#fPWOcjYy6YLYTjl37+@_p zH(q`5$?CS{%*x`(SIB9J_zAha8SNsLZB6C!P!?=gAc2A2%=oN$lI8`nCDWcSHZO3H zX!D}3d9nDMVsSYyI2}~Z3xd6Q;nm7#p9sQYn93u$&4@x1&9FA~C3{T=69%%gMR8=Y z_~P!7+ZmZ7b$`hc2rTw=ZHVU5?Ac+37$Z9ei5f*p0xJ}b?aCBuin5BAn;r^E1MN>J zKV5&iXD?RCyTfMjR5h$IU=E=RlFvAKxFXzpm7hEm?`ma3>u8&#d}!dBF_ww24?8~y zpf(d=Hj#?jug#2v%HQL@6x+b2--T|na@}fzbA2~O%R3-sf_~h_-fJyz&$)WT`{TYz zE3H9IG6x>G&F+y>7YI5b)A`9%Rh}4XK>9>itJD9b-4UI!A@ow+|3sV4=2bAs zFMz?O3p;^0@%N@XB?ZgT4sUBkt+^+6Z7*R`EK*N}Ai}JdN|qvlG4bTMf^G^7SKBr} z0oH5oe>-mq62}LoL(4Je$Um^QfR54JgDlZn~4*%mN;Wx3?~y4<0~lEO_K$?wx7oQ)_Ns$#anEGP199AFVcx0cTRJV?iI;4D_#^`{ZOIX=sRzn|H_VQ>Q5Zb4@$4ITe58{reDlG#Ua!qa8!sv5h;8bb zg*_mqrY}^%-j_;)XKECSh`3dx-mv!TmZ7ph)Pc1%HHNQzXp2MvDRmJ%YJxv~JB?sY zLD5f(!XBruh1EfAhG2R7t9AJ*;=|F}j$pu&4n6H8f;;$76Lr_kRt#6~h0|$MMRL{{ z6iOwLK^{n13nzr*bP<}kZ1E>CB6W$<|z z&pkXB@w|;Et`&j|JrC!3E6*c%&hk8xrwltW5f3vwxk14UJLP##hMjm|2y%X{MPnaN zoHYbFyOsuc4^OSDa(2x!Bev4G%Qh3B9=`X`9XDa{HOm?;G4Iw)=%C{uvspJCUyvq) zKPkA6y3I){{)I&Z+TrrIjiPRQBWMBGUj_K7K;Q7RA!Ia6(S3JZT{Fauc6B?NBX zi=EOEI=VyWIw@&Q^I!)`y72K3I+1R5iFuiq7mJUIbej-A!L*I7>=cT+4T?jYE!vc& zkxav1Y&B!-(Xc{mE~&20MS8TxjtXD3Xn+|uCVbtRcXj5UIyu#2>>5J=l-Dc~zjiF2 zSZ)@;hQo5oB3`G2KK6D$!ro^^*f|y-9U?1b`jqT8)`dbZrw{t9^AqysZe{9xRrZ>& zX-X^pSh0{pgzQyykLshOjQ2uyPrqdWzJ;^E4_1UHE}o8lciH3U*{6DA7MdHB;;8oC zWm+n%fmPgh>$YVmM=97)HD9A`4g&l|ufO31NkWU@LIAAxJuKNmS4pE3A`|VvNr`=s zmy;A5tfOSQ1F+d-U?Bryn0YHB7>v%NQYz^%+A+nkWRd0N7#d(WqH?HS#!g%An2eZZ zgDSNBAuyK%btq|_quh)f8;pzL<5qY^nrPkgAsvLicrg3e5L+XlBM-TnebhE5XJCQMUV7WvGj=M+#*vSSo=wXB~NtCy`}m%ULcyUl(G1i2RW zn_e+A)_(=xI%E#lAJ zsoLIXhZltBnH1z zjO2y_aR7;mF4}A;Ge{*lj_!&hjYA1R2GjSL`$k9`G!2%qGeSyjuxd!yF*XG#gmu*t zR@KPB=t^^~dn4M`O4gV*aHLAipa4mA0mVSlzCAVCqP=$O7RXbJ<3wkSYG$@q)HN(D zSQtP$)*-dW5Ky&(A=Z4gAvWJORM;sO*e^ zuyu%5vvz7KbOA3dg`TsV6r6$su$n2li$%!S>yRbyaNJzW1AQwYUrwS5^5rZ!UyHAf zgv3Sk$x`-2(HkFmi^G>5^PNOSgvGL{5ZZXPtZYqxPL&SFD zyjLjLc1BCwiB@}O_M0{c z*HY|dx3AWOC>QBbW*lj_2GIQftMIbzDjwiiKR8vSRs0CCWwK|T$-=vsUD{J+Z6V@A z*Nm#{D>6=>8V^CShE%RO~r%haBi>$3BZAQ);!#5^a;tw?bl=&dl z8RyG9xxVJ%3;*LhK>g#5>`p2X>1X)4=+)ua*D#3qOG?jLqCIc9y$4jik0ZRmfjGht*7dheuaZaTa z&_V*syENNKeOKL|tfB5o(j8FwAuxx%G*I`ZfM^u+xTaR7ruJw87%$<+nCZ0>M&=-O zEv%7L$@!;?{KOg70hKkPLOs!d965|bdE)WWpRnw93&(Bl!WlMPKemtemP~hkH{01g zX7glo^D9`*$O&Hzn=zSRzNsiSvwm0fcZfrSlDM&m(yYPXp-(cQ(X_z# zxSGk;*Z6?wYbi9azoj*6DKi!&bU6=yy|$9~SGV;rZ!4Do^|w_TS!*i|eSf(eWTK|P zl0hEAr=~iwTf`?)Ux^~3$W@G0pW(2(2cmcoh86oC-K4+=N|e*g0Mp1q50uk|t~1jk zS&KwIi6jlG&4{*tfGa{1ZbVIn!VOWuWlk@+@c|4vuKl-B0D==V9kde84kqLvaTq;h z!kY&Za!C@oZ?z@mkm+|0rUw_;@Hk}3-GeE)c8QYT{|id4kWK55@J)19s!+swoO!Sc zwRfPdU7GD<5(d-yN#v9!hR83nh{^%_+78@9RB|CSWJ3JnnE#{!ln{}je*+t|q%rRx z)jGapvrXkB?MvCQjTQFZ;^rO-0=I%N`QNP|ENGkOt}AdW2#a+q2n)IugazFS!h&uE zVL`Wou%KH(EN|W1;)30pE;p7>??YWo(!`HbQ=&%c&%3#+(`N-FjFp3-M8+@QKJYC! zDJA>iWl^2SsatyHjfl=>jb32pVKoKb#l8MJJoUl7*LloJN;WGrPf-zOY%IXdkDOhi6g9oT!KG;zuRva?6kikj5}Pi&@0V z*Tj&Nqc$7laZPvqbn#Z=_M@Fq(u|Zgq{ZkKw%|ymMi@|5p=+R2u}zQe|N3Paszc8C z@b%ICcVEJ_m3h5<PJ8Q|V?#N^lb5Q1x7Mt=HDTEs( zbt8i?EGscg`q>J@vL1#Jj2Nalo%OIQrV+sFB4&fwmG!VI>tR={f;`GGfL-{XE3qr) zjj1Z^5-uoPg9r$Q_{`9g^$V#T(A zSW-H~4S<5B&D|FBq#3@mPj|cf+bB%pTR&2htOQd(2|G7Z zw9av+2kv}vxbfQPZcxNlT4p)aPFt)AW<254-)+^5jGM89$GWYW#hP)1$Bq_2#e=lD z436}I!@ZyxJ$PC(cJLq~d6^A$NEt*tFN27YWe`n58BBY@BnF#F=(60M)FRL+14S7? z|Lvd9etQ7jw+GOCdw_+}11yUkU{Uk{OQHu@5Iw+h=m8c(53m$^fQ8TlEQ1~ZydD6! z9ssl+0I(hatR4WU9?)8D-2tE;0Gu8Gm>vL>9srOY0E`|0h#mlh9*`==3Iu!}0C)t( z40J_`4*VG()En^Ydjp7lZ_%zVri>A>LIWb<#Wh&1gLA8Zls*fjL8Axw<-jVF)yohJ|b z){}>Q@5#f?oqE{WQx7|T>S1S4J?tE+hn+?Bu=A)Mb|%%s&ZTV9j1-l}9tw}TuzG*LT z;0zYMBo;J!@{WlFZTAdOrH&OE97D}ELQzqKo7n&z%4JpBYmZJ@mn|wdIYtM8MteV{ zwJ)RVa0XS3nhz^Hw?uegN!Omu#4nzYoNW9OQ5}!E1z}=p%b&fJ ztDn7;i{CR_o48}rXF57r@IvFqmOX#LQz0PHph;rdim>PXDLmLMncxGyWQHI)3X1k* zrX9C3LRVKyHEEeU;BF?QfM5wJ`brT1%B9yDR<6AEQZBsqQm(u9QZBppQm(r8QZBmo zQm(o7QZBjnQm(kqY+akVvpjjmI+TjStxU7Y&DKAGsy#5VGl9#t&`ev%OiBcqrQnuG zV`lSL)36t%qjFob_Dmhf*nCXJbgT@K0fszrOF5o+H8wZ@HZG7MfXJ8t{||9^Np_Ak z1Aj6VZf&`Brz$M{sG(nqW}e!*7va%lR^q(0_Jjh7l)IUy%m$#MLRF*?X{9tcB`;z? zD_IeHDLD~)DH#!aDftk4DcKNvDY+1PDVY#^(LAiysgebGW^3Q8@|U4OGS_7(1GKx} zb=hunUBok$JM^9JcZ-c*?oi3wX+@S%>FAp2zV#!1IMX z_w#%zPdPPv5l`8;yqG6T5w**}P!uYBn#+c*^GG={#q7YSFxcCo?k4(BFkT zb&2Hyp7MgWgy&Y`ndef-j`Lc86|#zf#OZ;xjUH@Z>VXZ89tGEXFy!caMHgA!$HUf# zWFU2iS(dSKEVlhX%vF-^y2(^(NW#s@W(>6_YcW)G&z{T`=D}oPlMFRzt)ue`>(mH( zAT4%nGFKy3X}|1?9|ixlo1l8kFf9Dd?a|W-2NKF4V=Ana5c};tyv|1HXhk9K2tBYR%=n^sh&wr{GCjMo}IOP zJpn7H?m4F=@#nvJ2O&nysp6bs?MJrxr$+IZ+bCE$WWK#}=| zZLmK@XA>3k{xXK}ZCPka5%Ls$*pn?o*>rZPMFL9Ix%C5$&66{G-nipqw>^|@Y;SWD z&(ZE-ktyQ2k5V1@Ti*u4B%Kq&)gCx8T;qY|;RX+!6lOi}jBv9DR)kwU@XWB&1J4S( zJ@7l>{T_IBxXlC43AcOTxnYk7P7a^+z$sy`2c8%1^}zFmuycP6VH=T810%}d((DHr zEc_B9=gL%l=^o8$&3L63GhG48Si;A%w~u#{Bpvvf^P1}Jxw81~Vq^t4_ra3KPRO}D zzBkx^R4BX$1bsNXY6A#%&K-T*cbAoXObJgNCYVoyqw2Gy)7?omi&U^4r zplMWArP|MTZi4OD*ra9o3|4sO52m_keyS@-brDCdtBi;^kOVy7>-Ih8)@8T9G?9wF zFI_i1fmvDg@V||*QBUKZM`VyR!)o8@HHV`e+Ksad4mBdM2w$X6r>jpulrL;c`!bNc zoJj}uK85tYp`}$Nv4JGp&&hTg*`yW5rvOG{A^%hMBxUrL={ic=`xmE#Ve%;IS#+H` zZ(%kmR&M+9WumLBIo$Yr*<@z*&8y=js-q7<)$79)t?B)eQ=*EHs(SsF}+)fYH(Ch1myjsgA%vt8Pqnx8+zW zsLP2NU&-tne*q%T&LN6(4FHE+e#VTtn}lk&M%)gFAJyB58Ni z_UBS{7ydX4OFPKYou+n{_Pry8qy3x?JQ7=^v@|#MJEn`_fnU-Lju?#{vLTpuY6#m~ zm=jnz`W2Kiu1VTI%llXLrZ$b(0@6;n?AqD?vSg$YbG2{{j!m>!B0l!D>Fd9wP2t%7 z774o?IO=6M`0mtb)?~VFNf&0GIZD47kP>nX?s53X5QwqlX@39<<{k@zrwwD*kE5M3 z;1HWwLm2Rm>55ZKO_UYSx5g}`+PW}|B6gvWk1D>@}vs15s>=u*O#`BEL&z6 zbxI#A`wKN3(&lJC01|dlg^u6(WkbK{|35=-Zm${9hz{Wk*WGeyCWr`4zp(RD*X4`{ zlXbJdV3>=wqQ$q+q?BvknFS{`Pfj?Yrbp8sZGS8-j@PNN_RkCz&(v|WA474DhkycT zSqBMM@!I?)tr-L0hK||1X`Yn4oCz=&=a{eyI7rHP*#xigR?Z)ZW$k}4m)<4v_7O!1 z$)ZiH2jSTDedCJ`5m?m1TW8F@ZY^A8CVq;lPvb;7>GRk0>j%kRVsRFZs^}ht|J4i| z+&;Bb=k)mDNp1d5+TVqe0?TOLfOeG~6pz>&X(t$rzeQni{F({3`LENsC5r$VNSNGx zg^L2}%#G#T?&VfFm5>+ij6C#b^p!H4ivXl&+|FYu3EKS10<)~I{sP*nCb0xW@?!bz zo*huEM-+8RVzSxCs~RnWUwzWtaVZ^Z$)}cj|JpdUd!2}2dDFZPksQ5l-iJtmE}8d1 zUL1=OoWIRB#-_Y+UX8ISSIql>yDxPY=toG$(FU|IYc#VKw$8dEbAp%bkApO`Urw(z zZ2N1|oDnWNQ!&)y4XfBm7*7N+t7!k+im*kp>4TX-mBC=LM?#@xdi%`$O!k3U*GGVb z!ev9?H#$&@QC2=Pixq2T?RV1#>loIu)8nmVsQgJ`Ap7zgzY<$O(m55ex_R*v;i@}Z z?R#YZ+r-&cXhZ8i^^OT*aJm3LU-15jy)WU!US6C~n56TrE<{sTSCS=#={OOV@TdU4 zQ!KZTSiqAk#A;tW!$K@y#R>~y%vLkE#qb;1^=HU*zsbiuc9^yDG3P zW1KOc-15RCHEu9mW3VYHLkY&=kTH8Xk#|CsQxe9zx)>8jnCKc}hl#9B9VT2E5Mfdf za+oY7G7k4bNNtOB3@nwh#W*g ztZ+G!7~ZFYGi#^;)7lc2Ov^ba*(^~q5BI_Xa=cPnI1`O*=yFVcyE&X43?0q>`U9`M zen{6jWzc4pV9XqT(n1MdN6Z$Vtoxq_-( z^3N(d1xl-g2O7O*ah9aryFT73IxOri@>LqS)5k_!3x`;DWM5r%p-ClDBSsG>3Fxe; z?#P6c^w1#o!ZzsK)-fTqwSPgl;m#Hp=)MmofT;I~7qEtJ_ptRUhOO3jw_i6zn!}`% zDh`w0>Lc5B7xroQf}Vx;o*&67@b<4Bwaiq(Ag-~5w8n^A2wfovUZLF9}5kq)IJFj6GOPuGH*od|t-BC&n*JUrbQ z(&Z%=T$YM9Gxk-k3&Yc;_pgWF<4%-Z3W|-WE{bfqh}QB%H!Z|j_v)QcxTfb zmyZ)?5if=OLwB}{l}vy08FCxzAV7X4Gqu&eA7u%JTGNY(X$1ECOl|+oZJT!QRnm== z6hufMk~C@n%Du72y3M|b#h*9P=Bj{PCgwD^I+@Y?2#=zvl&QASlK9ni6UY^ODe2uy zi>KKdsN64Yg(AFVPpf!Z6k>e3w;1PXntyP3C3(xBaSNYOH<>qkhTOG6+QqS9%UXEQN+eM`@B`f zB0v=Wa4NLV;7HQaY)03Jp1EG?LA1Nl@Uat;3_w9Vjegafi6j$011nP(H&a6tk-;o8 z0@))&1Pr+}c8JAAxkTzecTEmOf%_OR!$3iNe?5sxOm!=vhlEa@3dSv}y8*)DFqn*wa0LR|~sRolWPUq@8o>%eaOP zNbe2UM(ohth<0L~g8;(2AFT>ovy(m31C32Ws?&CM&wfR*ZnD0KT{*M+W!C7_EVng5 z0S6(olDYSB2Kj8R#9{gRZr>G*J!me=_j1Fg6yi?~_wV5%v;*a(4^?BOgWR9lh8FZH z&B0-I5Q{PP5S#QOW4o4KbYnex|Hcls2I-_Z8aFwX?3^Cbl3opMzCFN#|_J z&T>Pe!c9PiRDpH`%U3Ol-CXuZ@EbA(sg-+)x%AQME0|_vN0>tr(_QY*%#0{PXWitu zHJB!^n;hvwWT9`Kq-;@vB~YVv+uPq>NC|C=lQM-FnE_Yv#nNs@c9cpV)vB zhBob-qZ4!NdQRrT2*c#!>=)y%%H}uU)`E+@*)NdQm~Sc5(-W_Iaki#PyyjOYeyO-H zJMZojIy<+&-qZNHEMK8w)E>g8l*t&p{9JKu>$W3$>X@eR&qM7yPUxhuL9BV_GBd~; z*AYUm^x`7lqBZUYoMQ=Nt4*XubSQAD)L0oE>Jko&v8-81FIG~8Uio57jX}r0ExlKD zQ=CO7WM8E7U_XHgE?HF=s2n|~GV6hCs|SLu9!Rx%6#hV-)f>XB9!RnPNuih(Ay98? zZ8L_JRERcpVCA+-Fxr3W>y~{NGF7waYh8A6>D<%2g>5Gk?=k=#ff^ zsQjCjB1xZ8O5FcVi;+#n-;@>sF-qg{iek*pem-Ej=yO!(r!>pIfH-GVuVo4 z42&zxEsT|UYorQSeB#$ep>GU>Lg1tpYg)Ja-&qn!uGVSZmTU9U?4XV#_g)XMxd1ul zLIoO+lFtbg^nk3A7IH)s^DmE3@M9K+Q%$@`J2H|Jea8%@$l$VrPFLef9+gNZvqH)` zmgW1?0Rm=UwMf(wI19ar#*ZJKE}Z|9EEI>AO(R;uPf#r?J}RQ6G)=p9Z%W1W_a~_- zi3wP7V^2wPlGLhFV8YmDRw+EnQYa8fck`>yAZgu`Dp@>z*U~njzQQdqv5d7U*!}BD zYGuhC4m7R6%VW{pP}DXQ>4qhpG3~Td&6=?Z9;2(tST>ZkzmsYIzOOItq35Zv)9937 z9wmp}epjn_Djj7dV^+88X%Yl1&+j5}SNXfD@@K3&{$+qKQ0!HjOvo*5PzfS4L zsdS=sbHO#7yc7AZlmZJhzz73GRX77h$>M5yaOJjli5u?!c*WpHsZmQzVD=AwlDC~8jxxW4d`>T z^ZFvCN_%nkCt^0ur&%w#v~Dj(o?u8u;{H2{bQ19r>9tQx^7I$}B!gezd|=l3lOZuY z4ronsWWlw?*Tl#Ded6OI3e$%NEbfOw!z|p6CJRpl4@S{)e-tf|G9R#DDN=4{9z-|@ z02lRUI*Y2Rvz@M1o`bgLU!c>n0bx zoO-MwK@5NpzxU>r47i5+c(i0FWmNV_B!wz<8m^uH)h;mcuYYS_F};Z5?aWNuvi1}N zzgs-LSSy9-?}|~r9ZRLBgW3WJ3~WQP+&&oCRLV^4W7K66&8(rdCb>%Yglj$v!(c2j zlW90ql!Z?U@7;xivV_3Hdl=Iif!8r&$bbA^vu%N0o6yz)NL**w3_3!XT;t6g*O*%k zxpZlV4}FO=w5!t0A<8LUwDraP@kn=ye=Ae;Mg8%b;xYXT`{Ol*W1GcOQ=2qg7~nmU z;joaM z+kc(PU}LRT^EzMDX(>P#Y8xC3xWLPz;TL%*`i}xdxpl!I>2;0;20oE!j zbmfIqu?I8mbLM%#_;iqkfxyDPvldyk9qJbp+VPNJ^YYSOaAsz+3*Ygx>=}_Vuy*4bV3?r4Znj-sT=L1_vUOgL5H zXb4tj;gs``)1@&fO7q&jxW$T-U_}vt(A=|CAS^S>F}Dz#StH*}kRCc;*Kv(vt%URV zj`^A0cbwp$ELXo!{DSXD%@nQ<(Ua2q63S%>1-3q*&k3JHUQO2^R~R-#6JdsB_J- za~|QE2dhopL)p;Zy?ux59)_i{d$0#)XUbhp-o0ab-P`#|zv0Om2+6bOgTK0=P(QU3 zboD{7cNCX>gD|I+4<53W#b7IWZ54&Lvgoz)Jq$vjsi-j!5p%4QUZq4j^zRS}?Un;> zm;oJZ;BPzuL^RN6+40Glf=GTcOrA;N!JjfB#DhPUr$Y^?s!R(z_~R#ka?TH_;$jpE zfbC5@Ch#)ZX%i(~LOxcdd(6It8(2rLp)eA@JyLxFqt3|NW3l_cLvAv)ljJ33W zF4ls6EcRKgeK}^KxE`gAXgZJ_!ga6z**pHHOn{&lMZP?#?dsMhXVS}jQq?B+Bo^cj zvB{zewX0CG3e~ERna3jS)F!t4%(U zklu!*sqA?2p9I9Aao(=WHC-fSbrX8bbVL0dHX^A_?d;Yzc7|L8(?>pS#E*2klg(>E zDXO(5o9D7D3{76N5$3G^pG6Z~CtBoFI(QPA?QJ6Njo7T6=Z@u~1K|Wr`^Xpe1( z={%%6+#2h#O~ABnL_n+|Q`M(?RUzo_eB&&mypoz|dLixwEZf>e?nr7|>xY zKSK!LxD=ugGkk`~fJSThQ!71oA=*uGB?0KeVc8;q;xhzvj*8eRU9)}(XOcp4W&xVK zY<)LbuOSUjVlRW+g_*X9+o>F6VD%Xijh3GdH>mpIa0}W|LmvS@8g8*;y?H&_3xdxj zIT+~$hkL381Ax{8 z0M-M5)dK+41Ax>60MrA3(*pq01Ax*40MY}1(E|XHz{j(+x%nx1N2foxHm8o``4rj3 z@zU1n<%~W^S01a(x!j@C07JRuME+eyxx2~dM!qszX&J(AqU8o*^2f)-C)tl^kf731_e?Ay&Aq-{=+8a0rd^A1VU z8KU$dgaIWTZQo^Ft*Eb<`F@lFThanj++lT$!&J0dSLSJ*MJF($L;EbbUJ$rMXxp6x z#7>~Z9ig5%n$A12x{zxoSjNEDX}eb~{PcR9Wa861(Hc%!X~2g2qV;-mfv6^5fk1r= zNUQlIZYbj#k`7}-1*%TRX=E!yZ<#>kq(a>Sss&+sJ!xr}qBJPeVS$yuGW0*9zQR^Pn0SjZ7XtKYeUW)0a>ac1offq}42n{^4a<~9m0~Cj zG6vdq6O_G_hmd2nrZkqeiOk5*MvM-H=e-u#MFu1=HF#_lVmol|wF*I$S{bbbd~Ut7 z0jaY_87QPNw>|b>INW}NRaM9;DeR6f)}i!wY1ko4g$QZ10F8>aBFvYp<(EnV z7*q6Z{YCHW6%BD#pLsCi48FSfiyH64EZ&Y|StjP1X;Cd~g6eW8g)eh@Z38576kC^= zjvP&zT3|(3!>VQ)I)T#}H@(rX90ZUGQBIb5$uET6%{5B25=6ntnI6b&g4fLyX@6|6 ziuwf*7_A0OsObGw6~f48mU%G@lx3z2vMUliqi)dJ=^d5SJK!r~9MsPymvMTnT&c6L zC??c8#w(dEA6Kq`ALJ~CNzRO>$s*fcli6b^_CqY&iZiqons~ZO^bk z&o&u}uq#$X(TtXhXoTx4u0nNUd$^XBl~aCnlG9%{@hgQRL_pr908kM0pVOVVx>#!sCNe8o8tKC)%$$(c9)I0{X&>i5p z^qrOw<1HH#1AsJ~i~~p!RzeKn%0;-qm5V%7-r!AP!XLpTawCk(Nw^w=XG`JP=6URZ zRHzm~to?e1=eWGpNWu-Ej-J=(`N~6iDl_XSfK#dgklg0GD;tPxhU2Ed@m{LYaH3yr zNJU#!(Qp!GdA84My))0LU{if#k=)VE1#YO;%*>wTj3S>*&go`waZIdy;CQrDWTz$e zbMQ{^FWGjJRya+$B*w3O$+kO?{oMzE#z#d%XzuxQn}5o5V@#SP%*P+iA6befzc7Ui%e- zFkqhUw3om5;f4SFane1M-}AOtt@^am{lQh;tB*V5^9o+|3jKVG;4J@&p&MssTi?&q zA?)L_l|_0x{HFlgSkF3%pQE2P&VmFdw?hbGG;}ydlU^rpW`627AGa^B87BkoAA2Dk zt%qYSgrIMbPK{wx`Q%_JTtCi9uO!V{FZt@k87s+?TWAjC6C;5 zgj!O!kXnLLr_4P!f5MOFCotprV^7FW$n%SamW_cj0;mHxr_av-+voN~>jpf#Cs(SW zGuGEGeu*lo7tH6kz5(F2I*GT)VVLIvVUfI%21HO6$xBYU7cZ~B`3-#tTE{(`^!lMgJt^yWJWzT&hi#$R#Q-HN^Vzdx2Q z{PGtq)~3Oyh^-2`^erd7=To=6kAnUnebbWjhQ6(Idtd(tH+<{qOxMLP%o*+9RGM~k@wOTwJP}wNtxd< z$$-tAf7zW~jn$15p3L6VOMc^xy;73?=>D2ot^4Z#ek_X>4fo-n^-RDB!}+ zKuk}S7af>v_5&1O+5)+!~;x zbjE(72ad0Vx(yfc)4=?u7F;)(34^hw2`$7!iQNV?L_<&&xVev%i8rSmvcQ!VcDaef zAL;#6g^5CZ6vv$y&#i2P^%2z>VzjM`=$H@*DA>~SN6U-0H*C$}Pc#@IOY4nkqy_Xh zgYVs%_UkHB=_+YD(RKxkwX`N6s%CpT(cfOGdD8x=>OpL7UtdS8#2X!4H;lXWXL{#G z0B>8|G>issXT^pm#4<>gp!ut}ZV==%hK4(K9bg^4<)^?D!MlO3o)+%&X>1C<3NaL0H^#!t!499HB>JrGFh!=F2KzucMFUmjN^Z)c zPD(<}WvXX0akJ0}JSCXS{h(;pa1^Q>VnI{+c$Xwjs|wwVv;Is@0aIAfkQQqiB%`tH z^28ci9Za0iK1jn+w+o%TA>6n~5{wndi%PuHu!bPOdqYNO)vz_BrG{`jtr|il=%dsS zY0)vwkxwIMGWUBhYFQ zsUe>q>xQZIaOws;@9}vG`zMgfq!-m!sP|`ehn933QZ}M2TGGWlg=*O)qz?>7(V7;j z<%DzY9O7G!Y>p0QT6=W}QAK0AJJRZ6TCv(KItq}%up^(Q@c<+VIB{#g7tOwnk4LkW z3(hb)TyzB{jRT=X!rX*#8eo(tBnl?F0Qx`_vz1hsIR^0sH3;SFEIRk1(Et>kMdOV1 zOZ;j@pTxrelK*FQ7ohL8QG#k3{?g&NsmOq6qLcJUuaim^fog@$_zD-uBWCjqIoj6~RCz zD#E0*0*@x_tEQ`v<0bX8B6a|Vwn;TCj9(fqMytJ~^=511{2Fng<>mPuS1Jwa`ipwe zts&Z)^L|cnXHi z0P%|&x2rMy{AW`jGfsiTAc-%)q@+qMga8-IbmqZ3v^xQj)*ZJ+-$Ghw9fez%Vmk+; z22m$t8u}QB&=xB(B;JA9pqT(*HEIcZiiR-|YixIgCb!G|Xe<%zBsY{Zh9IevO*{3i zy~OjG3Qn<)V!J4lUY<6vn&z4+!j9y+FE$rYwKcV-!gi&Q=Rt6-2{qJxg#o%{& zgVKR<;fuza&^S~h%%t{g9sN(y+^Ia8Fij~pM|36^I;93^9>V|UoJ6T1U6joTS9V38DPY1LH?T7o5JlSonIX#HQ#*oo1Z z$JoKmK#wQ^*hpo_6b&1}E`plrU|WrW*N8xb^+-+EW#$RazvQihhv#i>IZii%15GNK z&H9jFHWL<5-b;1plf{FDzNLE}<$ZOW=N6uAo?Ce?5TlZGTN<_UHz!os+5-+0%)jvG zQ=u-UhlbM#JJYq>(6>hQt;k~&6JyXwN)s^n(c@3VB5Oex(*xF%9a7$YciI}PK_jW; z24!Uz(UkEpsd?)#5SE}hy|YNf^&N&o(!=UBSG@>NUDa(^N1`UonyT*A!c(Wmhw_x4 zL_~pgi499>KUoYQjA89m7%|4|MCjphqVOOKt>i;{+wqn>pMpv=0KFlDB~(ew+&E-; zt80YJOVheF>|~l9>M(L1g=u0M1bgYkVwxQYUjz=V?RJ8sI}*Ob1b{!F3uf-39Tdha zEx25T!sV0j&hq@InZ zp0J+tr9PgIYwobSm^yq9B&)hPm)3+$fu&)IOt5Y(b5EZGi7~a`kBnd?r3ytORCtcTlF(5Vp9QUDl zW6*RycT`wE&QlFa)WKgc)nTDAJ*D1gG#FF<4*aBzMq&~5Mw07$&E7JL&l`;tZgDiU zH-zsSY31lnxFp_sX@V&q%P-LB4n!h(ZaSjJ^OJGgeuHRhS_vn^Lk#!`136Gc*=n0% zEO8^OZc4m-dih8$%las7!sLVj@e=TE$U!?4e*d|}33Eh1B zzaEzU8b8Uekyc6b)JCcY71j9b7V>M=DGIh6j+p*xjettQJ{U8Fs33Zy@nM<7_5%5o zxvQ~al$cN2i$yEWfBC9*1`OW5N-E-$jvA+F^J*#_3r2jCVP3cdss!a+-NC>DSJPej zJQ(GF4HjD#40RXoSZgp>SwJ0)4&(v%b6U&nQPU@pE?Zyfr$Zc9TF@p6TwS$JNFLKV zQKN6=I-xikN>{{HFDPpCO{fMxzW|wG*YROfwCl4L94=v;K8S4`k`z#%D%#L%Te;Ou zRmG@Iva@sp4Zq49igrQ!I!=kJbJ+h$PNqu>O;R3*9AoRBoR09>B0R*BUGKou zc%n9PA>OncFoMcZKU5ZK<$<`#2THj-{ulVT)P`9zQH8F?md0bD@B)#Y>cI^zRu*CaKOe54Q8xDlVprD5 zheTTI_96zyGC)u z2Ty@xWiSciQ-yNNP!{)jfcNC)_FvaK*d89LU@nyp2NN-2&c-*2MVt;-H^+1qOMYqe zNiJ+A42rQ$eY_LhpaZT_vtj&|{2ByBh6CWpYK|`*hIw=6Fv@VMBTCcaycjNm)t|XT zsC5mHZ$7h_*f1t+vW`wL1A!x23e@0mqOjIi!AJ8)oOct67Zx0#QghaxJ-+pO&Rv_y z<9szD#g=NsJZwQ=Di}(J_e53v-0Y?Pb}kPUchm9Wwy2`^Z&SN%O$!+#na0ij!0jJM zvs88uY>j9A8{plXoynryEq`?T<=V1Y38ZFb_FYob?oDDp2TzRwrbBYmjXl+Q8NIS7 zHv`bDw_lf6@v}GGh}3QTZ}^+{-1T!Se=u#AGW*hZ1ZkSU2Dph8<)=L=*Y=6Z7`D1Q znu1Q@KYA6j5mt7bn}@i;^%ChreVvbHN7Hc5-);hEJE!f)sc8#(C+or$F6R@ zhppkwcq;1O=~hRd_=#H!6baj=4lDB1OlyzniM4U&tgCzb<1ne;d*3JD3*qPSc@6@A zKOgN56+^Sg)1Xbr{|p_NDxSG${f3Wy6vZ5S2eob8`m6%dbPdg7C_pst+d8bbOvyU? zl;x)n3bIAgy0*auvuSz3?Ea)rirb$^iW`y*3g(VOc2&j*Ps~^p{UFiYhKQGkO2{8_ zjjTPI*u=^~VZ-oI)XAq!4j>86cfZP^({=LNL&*=`>{hbX1F3XsnUP zuZ+V}zWX3s7+ZgtZ>wFYz$znc0%_9rTT?_$WFygSGn;_~L-!>y=TZj1`$AwvUy*q+ zab*4FqoVdC?Jwukt*-1(RYBN&jdBtF`IIH_ivw>z8hE?m+WwS#2HqYSc)Q}d{**g= zZ(0EEy)K2YV{I00wGihiU3_h%Z$Ss>$arwb)sXtcu;}o~X#@0_#W zG;I#(LQlJwiIxa)Kuh!XR+vEU0!o5~9uvUSG6jJWUhf57Ep=LopE^7ubWWtsO`%~0 z)B>6zFZa19_b7jCeK9g#fbTmuvW#EJJ{_gE9!#S&El9r_+mo>*1F_AzH3!bFH_61p zNb^U7;bVy9VK%U^W6)W3FAp=9T)O2Vj+N-~YR3ABpZ(;|r_6y~V%lNtnUNQjgPJI9 zLigX2lkS;8tGYSR9%t{=lCnWsm%XiOSF3eAgGx2(dbyk>Qf1kDJ8s~y{$47xB9u&r zy#E>!h;4NsFF^n&oLI|Vnv-uzeYRZTV=O;Oc-C1Q6c*e&>I}1F|Bvlf9SWh-po`!megzgZ zmsL{|j(Ux}Yn?x}Az&LN0)(oKlMCj_CkaESq{++r#6a8N_L!S`*n_%ghWjJ5yAZQU zgCr+Fy{tC+xsy~HZ|yF!X|=?d5tP!PDUE~MwMa|q_To=c>do@dq5Ex{tt~aywYsqv zjmc-rRA*v6txfOf4ppx#FlMr$HECw^Wu4({W5#rvOfT)b;eio(7 zq$^CMc5NsJ?&5R{QpGmNJ_gFwT*q}@MaD_KMp;DTva*2Y7TC_oQB}A36(*@<0$zlW zw?h{XLKwk$@uhHI)4MKbJE*8pnekSX?1zbo}v#j;f{t#-f~sDD3(@S(Y-p0JF0fr+O#9Ia@3N{{ws2@kgZ_p zMZ!NEhljZKH3{+Gk_mM|%E^5yWx^9;Ekv*fj-pHctM;$z>YBH;u&}7#-Gn#=`4}mi zx8n@?C^V7+iX%FQ*Xi^Tk~eV_5>~8+El$JF%-m&6d_1?L;z}U5;|d3(dd!6TE^Gq4 zXOoKDJM74L@S6?ePM{vloG`o!8v>vMsFBv$6)qSyEhtB92kFL^pj3=NX8EXqEH5bn za-#=idO~-`=nliK{-KA^nI>+0VDDY53w5lPS_#x*J6?Tl;WhM#Vsr@r)<>H%#fI>$ zWR>v<7&mCCgmB4RRu66A7vg2Et9Oqq2?=z69m%AJ6B~vGx}sO|$8so9d@||a*?Opx z(10Tu-(MiIi=AS2B0B0U4le-7sl{Wb|k*@dS=V2(MHRfxSk{G*0Vf4WmEiJhVPq;N+i%BuK@C%(IRTQ8*bQ|aHf zd1~i5^D-p%(@wU<#t>451cXR}9mln!Yh2W3N6PBCNae_R2yLJ+YC;}ONvhss5fJf_ zOmn_6f@rFW!?y#$5icy^+8t@7UTWK_;Fb4L-M?*{!PnE#Z;u1xINuA`vU{ufuKdtV zN|l8rVka&>Pt4>oXFB*m$_r0tmI!D=0L_@41Apn+RJd?74FC5o1{oBa(ndVViql%s z9qX@yO{+Rd%w2EM_*0?1HfC&(X$SyF&h(ixs$oNr`?D@OB+Ptt5(RZGP?$Jxx@eup zf|0NT2r@QLr^2CC>$^<^e1i@u0ZzIVyhG?HQ4`Iylq0~N1NPFp`SC!h23h`$HxNf8 zeODMR#-;`TMRm2VknXsSvV#}K2ud&nq)jqjxC&7-4q|75=8tI#j0lDeDdX}6t{Q4EO(3gd$jrR@?{2XqXBQz z#g=3{O>9wW!`b^^^TN&q&7gCg5k^qn zGJWW9<&$&|E1DMyx(f?ix5taa)`P619ulGs6{AAb5fBxE%Z!RJAddHxs~SP%*$}Pj11`|>5)q-*F9`aSXLJF9jICm^(I?&5 z$3YPPN@cgrc2M5XBG#zP+QT`p4|R{)#`UfB@EqxWbb_+T)<}&Rq)13mqQS{xNfMp| z;fiGM;HlvslOmgL@5lxOfZ|DRjceTK=F7I+*rvvt>vzS%0KQ{%InXxUl%;mf1U?buGW$#_U>^iDD-~Bl6NB8cR z)Kbg#J_iR2Frb@JjB|%Xs>YTd@MRoGNalWXCxr3L$L*FUNEZ6YAWLm9U20w*dQJgJFPPrJiB>IJ+3hsj4^YrVbP_7%GA>r%S-jeazT}m z2$m{SSoYKYluqA#o==K_)vBh?U8-a@Qfa1VI5ma|tfl zjbkM8pP*^I^fdiJoFtnaf^m*YX&n_c=_zV9w2Gb*sopKhSNck%m(gr56_;h0jdn(2 zsV1d8aM*|d5|eDUDx{Onh+3)15<~_62`vdJ+z#8>(GN!k^uzr)`H^F(eu(H5Li%C| zBA`I2IU7(ETsZt&6X&70sNOOQbF;PnIJf%%0HR#W3a4OM6&LMBpVhlTI9h0~IExJa;!60Mp6ax_Qkc%8Cjz z>zrx(h~!7v+7LfVYyDyyV}039=)NUQuOaW^Y%VX3%@{&(Owq@TRcQHU^J`Jqv~^&H zIE|5q{^XmVuP|sOACDNAc*RDmJ8Ys}8FN--P*%;UdUNdlpm!YaL zgP&K7+F0SxNr)CAM+2S_)I85|mZ%Rj8)Fvi@S_5E=sRA|xH?gt4};=mVIX zwX!u(Ahd{$x51(+UrjAa{;55aR3aP zf-^Ae7o~mK8V=8>pz*!#WFG+F1_2Zxs&uZ}S&I+a1p~PD) zo}mKVP|`}q0e8Se@1RRC6wtIfI6t`D8;zw${fbsuOdr_dSrBj@P$x7P=QD#vV92Aw zE}Q&CbN2f{fki-HysWk!n>;(p7)DN5KU>_!B4_irv$pB1K@N4 zlrEH|%cLwFN*;8Da=J?sUI4%fJfL*pG-zulkBivnyw60Jt19$PH{xg`dZ7eT&H6jo z;(gQn;`(?Zcd4GDP3|n3Vega~mXo+{#pI0vL1KdCmkrvnNuh7-hVSoeaDRJvtb_Ye z*?r^inEN~aeeE!AYK-JF{4ONyH6b{zyEfT{!q`NUoRVOyq*L8Cid5UZ8Q66!#prb# za-EH3nU@sqe_lPxp`oM`Orek|I4?i+qFu>fQg4R(iR8~kfLm@Kb1%DnjPWv6QQh*4 z`##vbSg&N02%kH{8oVVHC_$mOUM(oG#@P_N`TOFF0{=%m{=Omcx$>`0nXE&3Qwg97 z#c*bq`wN@ej?3aC{Ux>eHMVnxRu&-Oi00F!Ph?=z?VU~Z-%Z)$mhFd_b!uMRt;+sU zV>EJ4+=2Q{u-Z2=0Xz7{GI(v$T+Cb-vE~~R-O4;VJAMS0&Mc-$@)cINHN&nGX9-K} z7GxdAQxV8V#u=cK@|+hC(7-)mPGYd?SU{A@KWdLC2$$lYU2?Tu7h_UtOTU2mS+0Kv zz>1w2?dYz2v#W5Y%W2%LrejPr<+6=0cTT|IS9hf&QfI1KiFlIAMU!EJ2o~rLwd$pN zE;Tp76l>m6W}-PZ&%Udlru34})7{lSh76Hd8V!t!i*!G=fab+WN^mCCQ& zvGif~v2~e!tiHFip8A7VMrT&XK(#xa*7usoTbEAnO4sisg(y!Ch;0j_&d}vZb{Rm; zN(li_h1EdXg^U}DwA^A6c~#(ZI0FQk;9yq%t6*tFPUSW^g^@nb-Ua-d+773BZo~s@ggM1_)yBC<OZ2J@;d zhO}QJZ$D8oYd=rRZr$3CT&#J*rdn`-5#a>>WAi8qO!mIUmYB3o|FSqzhK%@Ah-t;n zq>z0F3Vv7FM9Dq|3h6gVJFk;Z@QA=SE{9QHbh)IldtR3pOEsaa zDHU6BWdN2OP}6Eba>O;B4}YLUhyfUS`qQYGl@ZUL&zBh=4ymix*e@JfU_Ydt#!Yo^ zl|qYHAUyRn?6*dU_)^HAFAe$?69~8DBj7R4bo8ETR8p@P??1h>S2D7io zgaG?$kjDb23roSmM1CD|uWZA~K-pr$n}P{YIkhk$%OvWndS$=5XWU7fB?4`*pvwe zENV{55w!{A5Q2??kk@qX``#4d>SQ77dhbqT@7OhJ?<50ofD1`R+zfj~_+@ue$pU3Q zI0WGBg?CEq&VuB_C{J?ktkALmgXzxQ%Io9h?35;1y~@mLPqk4vMAJ3rBT z?w*%E?wZ-X&tkb!0-k0MW*f<8G3+T4usom|^2635XIg(^5V)^=u7whjJ%;Xq{v+o& zb;sO+9ZDCuulf(WwM84d@Q&RYUAeDyiJowNP@zwAsdj6-cV`BgGT@V3qnW90*> z%tSXw9x=?)Au>kG+*1S+wwn>688E};RaNIg$4B>d&XZavW#(*undIbj?GrWiax&$( z86C-F#yUi`J9$Wl61^&nsDJ(+IU@X~0t|&Z-{iPOPk-0jP!<$pBEcxOt8pFJ{0C-`3Kqm-1{vfBUhY`3s;Tb$&@<|9mQyXgOG1=_96Eix3`#AbzO z88fpiCT1qW0K)Y1GZdEHN=D8!BGe!4l>=(zUk z$p2+XW5_*kdEK=V42M{2Z`6JACLBU(S$rgRA-v&K+fNc}KZ$WIJw^&ka+Hl2G$%7_ zEjKJIgimKlnDe$+qhU_2nJDT(COlKgmd)lT%#6=Z4@#G@y-n=D5dgM9g%Cjqsv2RU zxU{4LZEznwOz7vs%#2)V*Ni*CU93P;Eb}wFDlw8zyT9S(204Y&sgEjj1$>`Yk+l%* zGg`FKqdW4}-iaINUh7zKlFa-GlmZ^tCm%RZ`|8wdDT{-)v<4|=NY7#I*?UfoaKcY1 z`PgRLph{lMj$i@`>0Vy6F zF&QM+MUdIvDRlW+v@B*6qY^Yi&3Dq9Sq{P;b1Y&tc&`tg~$v8h1mGTO8i-&mM&xTYToj3`=|{pRD0 zGX1LKyp>lpQdb-VKwoiNsj`z!p??GaW;dOEF;5l@jB<;1o0$LNOH(qE4u{)O z=Kw3Yz_4-Y)l7PP5qjng^%k4>v$g#ME)xjMm!Lo8V?4HIb6eaS=x&>U2$R*)arN?A zwj@j1(5f@-Zg^WWwKJvCyi=0=y!5=;#y-aOgvECTXF2PgrwUJdE7-LByr_sv-S^2q ztwP9uo)=EWyfh6@G*T{E3Tl`(F3DVe9K8)zba!)QxxAO3I5+_)p3z$kgKbxCIv~` zkWH&(>OR%MaRw|6?*Dki;fk27Cb@F*6-Ik%aU6Wze)kcFtGW@Z z5V@yL#+`Ig2Io1~c6Yy>Z*~HG=zNXxN_#w(RQkgO<2b9auTEZLkApqI48Hqv`dT3rJFnS*ccWJF z=^k30?220+3g=i!yvO=-lwRYdU%4W&TLWdqR19DGI!y{>^39|NTk@J)DV@fpNh6tnphy=W&6S$yMfj)3yf5{?r_?5}uko*Q(ikeJM)J z2qLaESE&@$NQHN+jLB#vEWq)jxnPJBqJAKu78g6Rd-|`e2x=sWoz}ym?aE(bZJA38 z0|A%K9q^{feAI_&O|(%9x)=lHff_=r7(XeCv|7==$4*EgL`G!2LdV*&5^^clH=J4V zAP`=Bg_+HZM=0oJW*iP=NS%=toy7^optLw7qFZwj8%6~K1y)tejrDY7CuOGNgd9Vy zQP6pv!L8p0;HezuV@^?+dr}y%cth!XupaWT6ZoVRCjdt?3V*iONeTx(b;V;&*IUuY;y!JS54n) z`^;`Q`fSs#$&Dor(+gaVx1R4ro4fT(Hn2JsO^&vzFtGDw-^7Iko|%EMwkUirWX`Yj855#B;INaoG&Ra_RMLLxU-+`nD}D z4(r?gt8c=K0{bI)cH^$Y^rKi!CC@ORmV9^S#AiKi!g9!E+IRdKb~@|hQyGLHI3!b| z?J}=t^qsvbsGFqk6dcwMeuH z>-Maz7T(IRN|87(Sf{tuSD0ps#N)3!c1U$g$B!Mf`XO|(`mu)J@6}oTdc7LTi!ZEK zV?v;Q>eUPrDa?e!k9xIr;a;z%Pg^&qd;31E!{h?ZLDZ)iI#Oi+8%t5!;*tEY_<~{B zohD!Oy^Ie*-<&UE>v!X#9j;J63bvrcoGp5sT5zE56xf5L(Hu@&U75sr7}diexo_h_ z1qZ<%g}2MtgKw~hy!K&`+l)UBs**om-gs-7INR#DnZ)RciiRW>%d`>|nwTNzm#YE( z>wvUhA{)lMY%rx@n#Bl8+Ux~}y0-xt88K#~ zcVZ*5M(sHp!JDWFEDifXmC=@dv~*;xrW11zdt81rt$rU=Jt?o(2dNS=sNV-!0HzP3 zPY5NJn>CZw;w773)%UcO*2|kB{`gq+5bcaWx=G|t&6Et}mhBBhn$2~m`Zco(k9b9+ zEG3I?eN9A*zprnV-~h%!JA1q@iZiFnGE8UGgd&5pkO zNRf7rJlXo9%gB}!O&STPBDZMpY*?!-6JC|(34h+DXVF1T)uIBS4T(j|!xfVJ>i~-i zR;kmb)w#j!WP<~0T&9koK}j76I~eggeZ?W@B;-Kr!j-@e6;eo`7h^)Mj+ov-duL;b zB`|FwPmpN03|SaA)N~CvQQFDUg3yupVvSkUewG);mYy`(*G;6jjMB8=f{;myip%H` z6qywi7h?B80#jT}$=lrRjZWEYz%+(TN9hf~)?=2w^oolgmc26STYhE5g%Ao-T)te2 zMh`@$h%FUDbuWbKYGG}W9x8AzTr(T+tIk z)^yObRk{WN0c}k^pl>I}GG0IM>O@m&Ocm)uHyo3QL3yWlng*y^6h#aOb23+7#Gs3s zqKBPVBE~zD3>Ptd>?C4xG)%;_#6(`Fne>+_3e|Ll{V%wl=GYs&$Mrt9 zROkHj>Kxb0Hwac7$0yHmrdT~gMv?)UKD?YKr^xp;tWsH`Dk?)$}==AEUG6O*+9?JZkc zq@{!uFD_XbfFN%>i%y%|fSi+zM{(jF8niOe*IFUho+S~oCoqHW+Cnm61ls;Bnp zLDFcx8#u~=JTuMz2V1wXZqBF>V#^{ulI!M0nVoZ{)*A)QaM4xsiz#+8p5bJ>o(o5Z zLT)o(($fC@$$P`*KZjx6=2slLYIKdZD+!C(Rx2h2{=lHn1)U(Kzrw^73#Dxyk~&T# z#*d3x2cN3$+He=^h>Cy(huB$4u6lVp%DXvfu!Gpfwq$-}BDOyc$jttNkiFC*$sCJp z+<99n9o|Hb#R6jaldmQDR&s!|6n6bd@9FH#``U8kPXfUO$6&#@(CRDyW=c*&P-#av>rYyTp z>qhH6uYe^mhVtL7huC7os%Rp+ISTG+Ww35yHmzT3kOrGlHK zq{Haxmyyq#qYI($_IX5e@(z~Py=Hgj*Q*;Hkc z_E}gsE{`sjMkK-X^mA?MAqLo^quN;7;yw44SLsvRtDrS(bV@ocT%z=TwE}FfQa0jo zT4gFb>1msI08_MlUAA1cQ+*cg#qXw*qdllnb8U^GFX^0g#T0C%MUcR|HoknyZs&VdkMp3ZvNUob9Hr2BnFK8xNohe=pt3tX&PXpPJJ z@xJQIHWF%Ni{0xE8wbZZ2gmLm5VOz0oTBGB*e#H)D^DqCbocgK5Fo?LIX>)yOyjMdMlaFbiaX68E6={pE-GuBu%A&DWLrJK@X z7t3ebc-G7jR>_bjDu|Y^;itrTPvRs-?Qn;!oFWbuyG@Qx)_a7tm$s=6Q{LwdO_PAr z_xb@$)PlZ0ZO$He>An;fi^hQ?h<9leC2Q2+a!Q1%_|71q)!!L8uQM`ZdOg~~@f})A zt;>f+e;Z5VF;bcp{5iI@__1?iPlEMqbQe^KY?+U2kUDqK5A2&3_uHg|svl7m=pR~A zsO+5U4|&VeUi-5$@QO02FM!UdO3*}fO=PzOG*@6zebXS$Wj=b~YLgtukLn_XKx;}X z8og95SCqB-06|Ldmj-1Bf`d9uDBFJot8I?9${)aDA@Z;Z2N~Mg!T(xv3moj}cid&w z_Y{P9C5Q)Ffb0>_ZgT>vFzCc#TUF8Ucy(^fL<3ys390QMRz-z7Mm_4#@z52!cAB?e z(Lz0BZBXJOg4+HaX%fAYbnpsi7kNc@lXO5fq$MvM!sc1#ps)TSVJdAA*9nO!J6h>A zwXi0+(SA(4Ji-i@w4tLUh+*x=;T4=XSW;c+)!=UywrImkPMcNej~1Gow-l zOg<)9n?v;LMH?Nej1C*^=!q`mm)B{j8{m?~f5ETK%RQ0Sv3-)f)DtV-kdF;;TT=7i zLBP`NV&GWgU*%W*S5|8E4povVhVIxn#V}~;{79JAf3=PKr2fFs6SE0LWs5u+C@`q+ z;gX6RD`zUY4H8!vI-px+)2?6HuDZ#c?!jYbPjm4Lz>$N-x2po7^E+LM{@C-BBp;iZKzp}KlISAxGOb{z?t!G zU`+^C6LpH=9kTje=d8$W<*D-1QWMfqIVNz?zV8REtyEtKY^=_(gnq%8rv5@zsSgdJ zwLPy%q;<{l81OEL{sVrYQb5qzRntuSpugw|?Sr*%ln#>6@jWyYP3gdzl$b1Nsp&DG zOV%^rq@$vJm}b#WZwaNEkjUV?=bDK1Zi_FT(g)4GkA_p9i``~TdnOqY#e0&s z1KLTJ+6shGCh5RjHg}Me13F32(@7XSrH5GW6&l=A(q>C z#&I`(mC!5_5$@*R-J5%NxB9#0Vq`(~A&!cg(Xjhv!|b_ikDsMz7a?W&6^a!|B29EXbafd~PpavzKpc@10GTE!|U# zun_(5H@;=f=0Ai{RW2%Pq86mkY~RRa)Dl}6eWVEW=!4UaVYx>7Xe3(`eTuYTmt>aD z8~xP^evlWee!b6Mq24dD$tWz?9~WisRAw6_5fyj`cm}HC+=94WG`%E-3(VYrHp zY5T3UQ8(&nZ{=qbFwfWyVG=AW=Lgv_pa`Wg&2R~eFou4VPjgwh zW11Vg<4>j9=dht(rv$PtoFAzL%)5g)jAY8$90bV?AxaeWTiB;fDvF_yTt?`Nz3OH5*(G~9 z%GA7oO#e*wf~ij9bPL~)i2*^C$#f1cDR(cWy5sj$WhIzr7($rI`HU~S`7)0_i#CIv zU1IW~UD&2jNfRo$4Vu9*fsuMI%T}lz&Ly`CS*@r@y_bbsiB!H8kmaemOWKU)gw)8g zN`=Bk0L`L-w2{(U_3%K%$w^u@kEmRn+Y3podJv8mk*ZeeRn2OqMEbz~s~I?Fp40fG z9bU{)Mj;iKo~LTegF3Sq*34$Ovd@wV44~mrmJ3!!0_L8*+9Ft)(C$S74-f%Dwjd2= zmcgWkJ~DQofRfeo$!TkT?`{qdVvFq4!4Z>mzma(o-FlqR7%XiF!mG2z5SCcR5zveE zGbUw*5Jmt`G%nadAzB5Zq1uaRL)s1os`QBFX|$I&yXIJ@SiJ&I#!Bc3B3_O}6Ff8b zuoRELR-dZL85Iv4b;WU(mUM0F$R>CT?t<&llikQ=>I;=!bc-TIciDLh#rC0B_8W^z z7s*f1gd+JXt7E@vuUs?vakSk5vU2N!iN&*Am|{czGUP{hS(*IhW#lifo&4oK`BQ&9 z1=ME;w^>;U_kc^3S*9K#F|{^=V0^W;4t5qHq#%aWOQVBC7P}IQ&1O9dvC$_(p@|v& zU|rY}p;CBF*A!uQA{+;tip%Z*9<@RCsSOr5z?X1oF7-|+)YnEWdatpM z5MpBB*@w%Io_%DAH}ouK@i%utH0gHURe%KN zrcF%E?mb9ccvgU+yl%}m7z#^=vKZ+Ik?o(%Gtd_?pi%D#jew-L6a{AOv8jiu^_Ct~ zRc#1&Uh~7^PV3ZuvQv_0NE$sps@?2gl=By@n_t_XF=mNykM*gld8#CTQ_J5>-)s&b zHkB$)6f+R#<{6rKhOPOVFn{yZ9K2A*Ff#$d5i&)B?A|UB4#W3#lP{o}+ zsH)lkcYZqxCnS=Kl9L>=ZkRoz1@1hxz?vDl>=`@--kyfpYO!PcuUgUU6 z>ZKgbd3i3AM4l!wt@5-LJ1S3`I+J>OD&vjKIoWaB3F7TY{Qx@=q7@g5oshwvs`jLy zpqfNzElp|a{w)&+du(QpY+%vXwtwud(;f~6DZLw=Ba~C_ZW=NuE-V!Ha1c?4&`ugoo(!%=ENgqgSA$^O!-lbJP8G(bBxS zsaYSV>8(7ew;KBpqFn65(S_=!iDw^7I_jpZL3nc|PrYu64avG`*0xa7?n*{r$Zby* z-$8tLoz!xfYFzVg&B(@MBYTwnk;hh+XLPR|tLznS-vngw_oG>A{Lz)#Z|v%Em2clU z*UQ}RYztA?egtS|)G|qj1G4C|i9QE?WUl0?*V)jM`}ASZT%A72sp-?NlZh`v_InCs z;w|r2r=Y;|urv9=NKBy#76XE}NG|Iyu()-DtV68aZ!)w<-|rI7K>zeZk_y6>)mOu! zczciSvkp*zodFx*`RgJ)v_jhz_4w$bZs}e$43_))9+UMed;l5z3uZ1 z+sD#SuvisJ{{Fl!vB>0`CE!l`3TX2%)~~9mA|l!4YJ{`Y;49O$O667EUd4N)wA%h6 zUuAb(QIlk?gPLLXr1g;IO}`kAXx@|`?UocwyNN8j;BWfIUQ+@gy|rgZ+8+TXVJTP z*?I|&tO1%k+ZA?v69{yh7w>MDIRVv~#{)cYxoshAK`^FlJ1y*foHbQ|Z@woUc7!&5 z8GG0dXkFe278${$w2NR_o)g=dY>oY1@*a*Qlz#zHY!yrQAks@)ud4H0>=@{|4u(R{ zpEgr0t0Xz-+x(jaSCi0^vi?vhZS!Ew2@<&z5RlwuOw*A(*+U|2`7aOf#l6`c8lJXr z&TLGqaE1f8XnJ7!*J2- z<+$kWa$NLwIWBs;92dR4cUf)p_V_ZqL-*QHXZ+ze#xTrbr0lj{I$BG8`ebpGe$$yz z`qAIh&eY%x1DWTG-cQ76S$GS;fGTEfr@5mds}^jj<^$Z1d|qn(@0oE~*c|c}9JB zIGyfHo--6ULxD3Cc=S`?(W^fA=*~k84w_#NF*xY;kAISXb5VUTlSy&yp*FboP}ADO z5cPp0b&G2cr&b?u+*wI|Smw&JRC~y*Eho2meBqY#BpGEaQ!8&gwGQppiu8IVw-u-onP9BV;$}D-rU8l>Q*sQ5+icFG28J z+!o8IAP2w73BQrMCm=3S8tcHdvb-Q;bBxR#PY05vp;CD*#3!(DJ)AL5OpTG|_t(Xf z1l=piCAIaK*xk3T;FEgaIyt4b-0^jDosC@YwR3uxgO^_!SznAlU(oMD)(U$@KndEO0fI;VwXm917xvcrj za^!bib~&BcT!7C3uLCcANjI1+Wm(UjjbAbw|2#lAd7Hh57k%R29{4YBIe7mz7QoKY zx8Ucy%^CI)CO*Nzu$aQW91P3EAD~qF^x0C!oDz2rrP-hg?XwLFl|7MX zpUAUMxc3fZS3n(w?K3P7Mm;3J>|o^I-ZAj@4&k5IvXSQB{$U$O2;50X81Pt#dPGQ6 z(b7Kl{n1ptT<$(jX@P`t56l`g}Lb9;R@=oQS~sOnI+ zJev}x@oh3IHgv>qRt?1n%>erpeO$WHlGF+VX$`SZ?xmva1wpuxu+johAWXB9!q!om z3O}JFYI_E-CKy8aJ4JYdLMvK>h)n>}WA3c3_x9T%u)mYrT9J-V@3+hHlzCf1SMWJ| zNSlr2Z8ny-*_iu>fi@e<+N`mp9q2^IBZ@q(2IMGY-x4&ScZR1K!}*aY2$?<_3Dd#+ zP&)M=Hm4%{W*&g_g!s-7pm&AXWa&^;_ExS!4A;6nP}g!0~Y?xV(3P z5k--zR}#z^tH~AoWrhB5hrX=R?7fb4ws8P0%C-RdTiy+!7f@DtX()#!Dpx42di^I{paYpmT8Fg

    &?~Xi;ZbLGhP=#sdZ)utn%UUr`DRPn0f{XfeCtO<|Mo(Ad!a;6t%sQx zi(YS!DtQCXY47b`VP2M_<;>iP(1Im!ZbgTxAbh49b|QV9}HC zSnZ7T0mNiJhs+~=#eld*+CE+-egg3o#xL8&IMB|ug^_IQ3*nX&V`0axyPDmS#s!5& zg0$?hdc#2lXjTjdPPfSR5h1}8pI6aJ_;)2iJE@aWwDS~|H}a*@L+n3wYl_!XzA~+G z5-^|2hkKQ^TA^cgq}4QZUYDWEj&hMKjSlDdpu-f(XJe&*!id%@#{%#f30Hwyv15e% zITR~Et#eZAZyg-7Q;E^jJ|8+Z97&z75vg)L%2+M=TsgVDgnsxzk~QqqFJ-!ir}Z#! zdQO&!$cJh zj&9BCn|aNVBB1E@?IO->?NW4ibZbKM>u`y=&N@Bp^;h&^Q=U=t&AKQ}j;afCxT&@NPbK zTW15+8Tf`+tIVKxvA0(9B@WHzN~3Ad-ofPUQFmjy;kMuFPJ1t}B2@1^HkaBbLx$bq z8`Dk3c|@sIAa~n0W`5^vefMbB2hmoAAP0yWom9HTK3IY!XV2)27pq1uX}CL2Z8g>Q zV@u?|?SlX)LW778(3Mg?xHM(FQp)dTDMdse5=M)2mBgXxlo5U%6kAGLJ2!3Zq_00L z(i=ewr1$5+WgdG7avd_19k7rXzC>aYXE*=5Izn_!yu2eAi&ITD=B}Yb{FwVe#vQ;622%uAr5bjBEep zcLkAYNmtmIuG$q=C;rl|ur}gbt|IZ*+!r3G#7VI)RCp%<*HY7-K zVI)ZWNI(P(KN4){jRfe9muld!W;F?A!v-V4sRXn>sRRl>pj?3e=L|z*V6^2RvruNlZ_xFGSXz5 z$fwf{hq~+2^}RR5an^(WPTXVf{q2=A@6gCSq{~<>Gp5LEne`Xyxmtf|tYzr1L~9y4 ze9E;99X@4Y=nzeiA?Sl4{$SiPl;G^gECmg@&;se%608)j_SxRk1S z1*?Jr0IOxA&e#6+j5>sRu;?u6b3gWB2V_RQVf6SzU)pZt54zh%>t=dGpYsp&x#QV; z-O}e2Fl0!d%M>;ZQv)?UGfw5&@f1x-aEH_kG zZWtB;1Ka$*IrlS{G5x!;jMY9QC-esM|q+3PX_qz29Bc`LQVqD0yFAcI>IxhM!YTvEA z(lm>em4*9)JWTZY9J+q;D|NFBgff=K{7cJe=%#nN6JN2Y*@UcJ?AB%pcX>@(n?3N0 zGqaQXi6s9^AY;kC?UPBgE`&RD_ynX<(34S4fc8l!Vy+WO=-SN7C&dWxj5fz01a8`W z{w-r1cp~&2>uL*m^?dFJGCc6+xiOU1L&zK2H(~_#<7}kCl;tgEpBBro5Qil#U#1CB zff|PM*F4C(E?W1C?>_df`Dpv0i(WMO&P)E{zwOy}DEXtjnS01ixYFk)V(@C3;r_~gHNQXN% zTrD{gvTF+3)`+%w1qxlwr8-_lF;0QoZXQ!)Ft@)K+j}8oqO8EZkfZ`h?ASs)pksH# z$NxIm>ArOTvA-hPOMEvBae@#!-*ksF);RG&8N|pyYw2KN2&L#j_XdiOQgd&8iyeuB z(MLCmc>4I_+ER_?VsR)dbxCQ>fx^5TCFM$(m(-R7a1|^d^)ngr(rXDh_H)ESE}2<>?a0%| z3r!%h^qN48%qcT!Zrgvn0PIiZn^$v!sUED`*27wR~chGWqNy{CyC?6>GDk)WKZ7T7R-)wfaNDi4Px2J`*kzF+ZFH zgGdgo+OUELv-!HMEHQx~#bBVBPV?Phfh*yuQU+6c)ZTI`vYVp06t~lSIaugQ=o!$# zq#nO(V++GRbhs&y--$80mEvLal_P1z9Hwgf>`>LvCLS2RLOa!UZxc+%Ng`? z(i@iKdCrUwRy2ycX%|cMkY#l^Rqclnb~|)+H@@Ms=$b({Fzd2k{5%+TqyllE zL%_L&(cD-V*y)}+o*>UaNZjV%Mx4Ff>l%cz^(_5=<5$U;N={L;b(v#ciZ$$f0uXmt872Mb*ZPb+CK zsmJf@(aI7(tKYv9rB7elKdN#Ml4d0;itpA=jX{{6+#g<1x@Y9Nq)MWM@>se_l7$=e^`{b0)u?Q#X^gQ61gc>6Yc)^apr9h`>;c3(yBs zdvsUsrX1nY>lE765uhX%jG2%0=RxF#R%LmSgPB%iAM#r#xo~+meIz~&BC}Er3K$G# z@Yt{1O=(D%?2##dpdB9W>%qc@V%rBjnAl^wvLy#%E|Vsw`EIblq1a^*2UD)b0;&?H z*A9~)kHn`zWQL+WSj=DskNrI>4)jk9um^;5M`tfwE=3-pZ-WR8t-+F#26Ol-eEHN> zI53w>mW3gb#o+&tk_;lda`l!KKbX5WDiFyGR$iFXKlH#M))t*PgC-Eb7g<&2#Q8Z*00o zawwE>T;R)NPiwA(Wz)#z-Ta&r|ZW~$vxA1Y-i{TuU;k! zRiQ`h>mXt))@Go*!8~i}%{5gfnp-9=Rh38J+aN+KR-#bSU=Ck}l_fnKzDyH4&3A(Z z4n;A8IGEC-HpOU&>SrNn>3H#;Uy&s3I1E zdjQTC>IOjBC-tQ4&8ALYtu{*sMwMUYN~)i{ZL=9aWg1O>n-3f;&Ucoj5j&v{8Q;t) zJ&26W(KEWSTubx<%c>FRimv=y+QCLd%j8b?;4$<0aq$b9S8<$rFHtE=R8pev`9w{@ zq6i_*?ibRV&(j6bGn(ayQa}&v&tFX5zWInlNi6Zj{GC7=To(P;{km*kJa7cx9c9I; z8zlEp4LhZWbbiaB5Vsn>G8Pd+w&T(YxG#ky?P%E@4+q+V_V!=w{Iq9?PDow0$b%`b zlGm5I-d3EJJVc74SbQL|$5fBa=BFiYa8QefI;bVDjHB(;k+bNjqA!owfA>I`y;PIR)j;AqjpaO`D!O|}=Be7x`UiTq1l%9`cRg@@APfS) zN!%w$5zDViz^`mRTaF2VyPh)|AYNC#XMwxUKXDJblSV8W$Zf;2-kuwKq6QUfqHg5E z7c8n--MtSOfW`g$(rEEOb5`pgv|`YOpK;ZDB}_3;2!L_JtPZgK&k znVOZrz5aD$%_K;UmEUvG4PSrv!S8(J&YwNhd`&s5sTt%am=?UJQh84uP#gIFRD9Ac zC%16;^ZZCHj`#~XD+|Yr*^&#Bn{YJKS57I6cC_PIPHv^-s}axi7yL=^4e2G&wta<) z>Sd*k++Bb5jlX}9HjkE*Hwlc+QZ_IZ0NoCFTy^lSL-P5g^2C2eo6wcLVkxHLzH`e+ z@_NEmVQMo-N0T>%8@XMAO&P-U3X z#F_5aj8}EcU7a3N0(Uz@&inXPH%E8FUii{nB5KHI29K}H@aAJnL0a1Zn^!v}=-^wr zr9EoN7odYU7iTwfRVxXI9QcBMskq)FU06DZr1F5srf!{bvf{ez(o%u?obuiv2#x)_ zc*9ZDSqBM}bCS0gM3dU%km51-OZoqm(>l&iT-cpUeT43$zfdhbZSogtm%; z&vw3Y@~Rl=A&Cw%mQiH8F@=hAlrrGLHh($CChqh9l$a-|yV4v+(;6+*4U<<(R&i!q zkcEg%)0h{5^5K|jq$|5C*cDq=Mu|UVOiplmxg4|9c2V=CF$09T9Y;f?dbAJZ0`PKM z5CFOhUAo)o_Mi^)qqHb_P3dk4Y~8*$Zu&zygKjK0L{929Z$+e1s_JzE2)BbS$wTNq z1PJiROq^S{AHHbU;a{)+yVo^XfP9YNF#h5W1{o7{ zA2lLGLp2DaxKyrGo9+*T7QgrDWFTnQDmUGygI1|Y)sW2Yq{4H!zm&h9+tzIUzhQ_P zAudpeK3@f~sahp`91K)?3Y<$9XHIr;S~}8=F4m^#z#UKyDwf<`*2qhRLKj`dxsF%$ zKQ#X^3L8X@VH8quoTa0X1Wy8SP%_{++?;hS(Kg|(ZnfaP8oRUSN6tBQFeeU`auLqW zAHXHp>Q>_6d$&d%dN4X1|A2lK+q#3D^J!_G3N-%fRg9v7gcg^o`@fN#+9wa(w6=3zq9Jta-QNHsNN$yvH=GbQ zpX3#g$hDG%Xkba7mO*R=v={9c02?AUe59|tz|}_dZgu|Xf;LGP zzi!IDPId!*t%FbXXj9{C1^LxcjiYIO$OlfMI+BL-X-s=k6N#t#5z$qn zg>m71qRN%s^$&6*>3cstr|;d0)VAn9(!7(yrLM$_GiPEB+C)1F+=C{K zt!JAaP|oy#=wf*8oIP@(K<%d!fNIr!At2g!mwk#5R3n@8zBJ1sC4(C5gw?L&`g|Vg zzPR&ie9*DYVD`MUq=B{OF9|QVqHiU?jOL}!S5ky+lLutV9046Clzg%FQOnU8LXf~E zx9+8pJ>hLbm&WtnAmy)csR!gQ_zX&NU!a{6UxVY5|J;pe*$NF!EogGPGZjq(cQ;I{ zay8Brmkb$IkKO62OC$OB^oHaO5L^mBeAT3p;hUDP1$R%}1Jl_V{p^=NMdv|xsN-I?zu#v#Z`<;w6Wo#1aBQHfPJFR@vmalg8 zuC#o$b{~*2_8F=B=AfmF+C!RWL{0#ij8R@-S|ejg8B0E+p_(XTn=wAmC`|-mD)7QI zFL4>Flge1hYsiiWBDn&YjOe|-idNz>RHv1(nrEz0nIfX7Gg%#%p}I*K*X0>05zV=X zsxqpM%TP^~G08JhqNrLxHLv3`RL@n$i9DlreXNnHo0V}g&q#@DrRw?0IF)ByPSw$@ zj>}NpqKqSXMx!ccl=m56jEtkh7+|Y1=6s`#?4^`RZJzM9U!Mb)jpbnKLcCE# zT;(?a6N=@-oaJjN(ecu=1O|yKE*F^b91H>H&}oa+$gvsZs?l^3Y}x|D@GYJfm{JY~ zY>2i*sdNWa9zHcQY>Lzfq4X5PUrS(Y&t=`f)N?Rk!=$K4n-*Z2%PKX_8Ru+X5}1at zX&9J>yY2H|`G*QIGE}Knkv1e<+E2uxm2{n8F!SM9X@k+sVQ?~gL`0oJjVgjMSRM9J zfkz@3Ex~9Rj8+b#t?HnQ_nW#Z7=sPeAgs@X$AbtwL?$s9?HmTxVF)PJ#qbzxohF1$ z(n;Zw2u5Nsk{kx1gYXzE*2VA`tV;`So=B$zV?r<{48}wb13XZDightO2J6y>Cr3OU zlY%j6FeY;t;K7`wSQo=%ur507zU=Xs5{xN>F_psrj|e;p?LreSZI=mnv6hagF2p@z z6SKh>$zgy;OiY1Ow~P3_j0gb+8WtP73`Qk~v2Izrl$Y}ufi1yfOfU$VvxiYfy{4AK zuy(=h((g4x+GPYTBtVW}j0(o6!5Gb9n2;W57sF$)T`F(~Voor|1Y^u#jO8$_T?!&_ z9b?k6{vttA_jrs8#<;;4&taJ8URSJ(!5HK*NfD%$@F+-;Y7PUM%8pfNm(ue7A`wzY zCIDkVgk*gmJeVC8d2C2sBtIHn3=NYXiiZjwg?0&-@)#N@oSaF-Ve-S;1-+}^_anh5 z4)Rz);EvYH@ayVBvMUckyD~uH8^dka{{@L5dW5O*w~z@<_icQg%I% zqIA6=4f0AG3TLupK&E9l!7J;jSAo95iEb@OgS9I`=gJVtmO(O{G!g0PfWj&CI1ScL zQR6bXG9cfII1SWp#A-LPymlJfD_*(`NVz^vBZIZ8SnVpyYp3CTn2gCFjSwD-$`ooR zoCq){NQ1STTtU)gkdVA=6)v`&aAIItUb`vywmL-K6meQx+sQyUOzQM;Lgo}}C!82$ zme+0+8AxO?^^<`yA%g@z$!b>U^Hr-|b$RW^OcE}aKz*DTuZx_yV%v=)4~NO23=(pA zN!tl0)Pd!-8$l`#lSW0H25Prr+es#sylfoMX^J=v)J`~|8VIMsekaLP_FCG2WGdpc zwziXeDtS3MOgKg z72D3sC({E57&qK^)lCrI`*hUlYxJXUX)m84D|kJZ~{C3(}wWA%1fNz(N3 zSiN0Vk}-WeR&SS;q)Q)<)!SvbTv_M(cr0m`A^PZWiBipBSbtefA6-e7WOyvsM-7ib zeQ8}^iVWz*84S}$(I)%)=#Y5=<0I1Fq1pzSk?l>Ml-Vp z*faZB^GeGVaXQ1DRxC>CChn5vEzb_SnI+#Wsin@@-pYE8Sy>4)jCpla_c89)FWqr7 zRWY0ES+2S#J`dr{}taaTrO@ z=^0}u(~i686@T`MDpuDN8F*HjT8!RS**){@hBS4b z{LV|>`657_#qa?z162{Iih-&KRK-A51gesQB2G`7Zt59q*HfXl-SzoT><5(eTYwp; zSfFA96$?~spkjf-oyaKAZ7AkQ114v(3rLPqK=0sp*KXoRH}>$e4ytVuXKm6Ph2II? zwk^AYnUaYt{F0@rELF==RTex3$Wm37YA=h*+C&z9$x>IAx@D;=OWm^6m8IUx(jal& zvee1aP?m;eX($WP@+hUDER8&ix1gI@dL3=>r`P@IAH|RdHxLoX$Wsz|N=BZN$V2EF zz?4KD9H~5cP;SKm;pV^$)#L8(4*&iq;d0~;XL9hbwD$H-X*MGGkO^>RzAn4lU;6!< zejU76P2!(#wzY5o$8ex6k_Av^&~CfWzW?vO@ZTN=2TX_qP?R8X0!ZTRLTG*=bRT!S>_gn4*ul&eu(GSQ0X6_$#AO5Fz-Jvz5)0F`|4$xHY zUnK|Fvc{PE_Itm3i$wS7N`ab!dSx773mr4=`+xP1FMFYJfMzyc3RERfswPmX5-3#@ zC{+oRYA#SJ3iz7I09*PPaYt@A`R85+$edU;fszPRVxSU%N(@vYP)QCd))7CM46wzJ z(0%(azxk?tU{&?q*+5MR)Rcjm5~wKyH6>6}IjE8XlAB~iQF#~~AX(Ix0kOnJY+|FY z)bIka5%IQ}s)@X*Cg-}-Hm_BNX=RwU z4AaUmZ5gJOVLHzM^Qw&XoWKOi>kQ>}LV2B`ye>nTmA8set{BP{pob6?0mcFt8$cRfw<0R+VMMLEj~sj1_X7Zm0u$-< znmK=JjHl8eJPfHsQw!{KoCv_6MViNmLi!>6Qy zOqm8UB@UnJak$EvG7g`DT_=@g(y~k{%cNzQRF=tJmJJ}MEc}vXgR*R}EE|+%gJs#E zEF1DH=sB2P)DUHBh_V`@Yz|9k2M*r_q}eS%25D z1_8Kn12-;k;|6X#12=L#@-T+7;!`+O^@n`GwoRiG_SR=kE1u=I(VVZL2jA zpQWa@ty$aF)V7=#K|wXOZ7pwGX5TuKEFx1IzX(v@XsB-#>KhI9jT!3k9Lff$*9~>l zOWg`}lu$!Gaes2t{dZ}IkbR;pU~L1|7BG$*A#FPY#xg=fz#0Y&#Z$KehF~&aQ|^nO z{?K2eEMf|Wy8$_2bXZHLg;y0Urk3$IZL3xlkC#PD zZdt~aW!$oiE6aGE1rA>a^>q3i&C#;vXsJ0`)*P*@Ik3VdYL3L3BT;iC)*MOJ924&A zulndc(vUfn4a#n0Z5n`01K1Qm&Vqx$oD`?#lZrnjfKvvLZmnCjFP-1ochY_8(0A|A z$W456fO`407IDPMT*PM2cpL^3YpHG9YTLH8ZCh>I&f9jQKUQWvf_IcQ{9Kq^cM z;G_XWQt4JyK%N;Drro`teAR*gu7{}Y)9ASC=emTz$C9m)3_Qs1$z5!Y)2>iDtx2u`7O{b_=^Ub9Tjj zs%csHB}+?LT9&1yEF9=UmXlXMibKO4e9kldc7gNK0|ukedSZP-=^6a2U#KqQrJMONgQku`LG{E^?f0C*w+Cqfw!)-p1Ucn0?w*23U)^D@jm0wWM> zSRxPB<9DqLE^bv8e%H>elw(<%Yvfi$R}rzc7`$x^-WG$mjltVu@OFX0wVFE3#Ea>X z^aV9-RV`7qmSBU4Z;5fW#JIHt1AuPT5)2d85+m;J4}FcZ=fvPLGEbn4V=9xTDu5LM ztQbJz@p^!(>GdzY<%{nZz|&=LMEJvG@O4bI8bZ2ZNH>IZ!;o&|NUt_`c-)iL4mV~^+wfj1 zZJ!Q@D+^9!{}MS|PJc|br75T>rqmQu))Z5DQ>->8I(Ew)zas_IbGSzQx&YPBQ0N99M#;qr?*<@|W{8N^Hf_r0%^X5~42oUsvOh%`EpH4zmOqe7BX zVKu$}ov(f6t7We_T^Y`Frej1J6|h+r_152ay={#pZ-_M;RzFrRrJNxW<dU|D)o^JkRh02l zn#xw!>)&wS$6h6XKROPV8DSOGYPGq;$>Z;MiC4p=r8Lm%Pia_MO|K8#OaJ!ngKVWb zZ4M{y?rC%QIC^;b;c__6wx-y4Eu}0CxojG8-`A5DXvpPULuR)QzOkm*l-I7a|jpH_N9M`;YJfAnRC!1*|4%BO%nKH+cN8&iWoOOg#t5!3bjm+3=WJa@* z8JmsFWV4Ym_wMh0=xth6mQ}(#VXrcCJ+)##>OTIB+up0$2z?KrzEW#h4(4b$8I=6G z_F4=|<61vvpAB5D1)t)CZcWBQIZ*d!ni!Hb<&a&Z?-9){9FDm;^As2-OUXFA1iP-q z@`oX~WCk04$x>4(H7lj2nI;G5QeaJ`)bdiy94_xp7PC*SFpjBh$ERwqse_ zHr*e6<}d$2QzC7?z_y2Czsl5gQ~*Z};HUtO8o<#EV9Wi^8&2NqT@d7<;jLb4@z9`c zM9!Gab(?gEga4v_l+KhQ@n7HU}#7%G)yow zBp4dGU|^{|23m^HN`}XX-O1Hdt5aK)CfxPcz4?Ak z48VOufABl_nXjT@ost+rS^T{bl78o-_kZU_>=+W8ujCG} z%3_-2_vty(vF9G8Gt*Gk;x5^cgQI#Q{CV1}t)2OO)()jOgr+$3olSXx;()J5rk<#@ zh~B_2yxm%eu6tka_SXLGV*mDd|MoNe+Xwo$ z-|OGr`2HTS+xxe7_iqolru%sIIKvc&m_Bv>)%aKCUxj~V{+0L_^G`8D3Pi(WBD4uPqb%Bu?Ip0@ZXS9lYu8 zQbL8Zs0>R@EEJ`#XQ@efD+L5@ffH6htkZTU-_xLS?z;h}$w9mi`v@U{`*YnOHQXl# zB7_84gpl@Z@XQX;H#)?#=mZM5k-Q>Q?3sCq8l1QZtff7P5h2s8w7kgKa9_720=77m zD< zHG4dGcG{XPJzMGyVZ#Vt<*T&}@-U#;DVbKPKe|%IXg@I}&9HRF;j<|bkrZHs@Kmox zMjNJXAxVDIwqPVT5G@fuPJ&L|5b7!i;W;AhgoGn$5V+Cv4b94Pv-zozNH|&BFF*g* z9S=FF#vSMciUW0PxYHf~RMkTE1qu(w0k{5Rv>iD?oWJBN6zM~U;rIpnf9BhXdafGr zW7(~sDJltUXfdKjbpDyO7yj?XGJvB1b%N;M-}h-NJGm?3CC#Ygj@t`*_&4uQ6r@p{>sct;9t-tC#o>34RFu76 z5vis+hj=7b)y1~JbszaQdY}Rksm9TE6#(%Di}3YUz@26FhGzYG=fPcwj(Na6DUIC! z@)d#EMTn9b+bEJ>o8Ku%XrIc#8!9`whsFD8N|wgHBL!~! zUqtY+B!m{q!3-vOpqiy%emgwHmvb1{?}n#nWFR=UX=nnELUj)A=Z`2*p8Dcq)wM+B zJlZA6j!<%=6EQ{+IH@1D65{*#ZeI`PN9uuMR`M4T-%TxPk=NX}EYMm^v_s;n&OT7Z zU0Bp16q@3|ElDT%vtgbj_OV3)MclU8&=vWUuL?o|; zwDzoaSbP;PcI(%mDAo3Nt9(jHl-BoktFzo(Lnx;i32=*L1i$NgWp;hvf#%nLGWy8_ zRWW}3F|j*QWc(Ax_;vRM(9@~q_i`QQdN)_LMrlOsbhzHZwafJ&*BP!Fvo>+17j@3! z$~cbyWu0JDbDhUGUhtGS;j&f1Favj?`}gdGov#)8|T!-5e z{oB9k-#+MXx0B!{H(J{5>}DeXqI82T?$tLo)3a%8SGQB9L6L~NV8P8M`g6rcsU==D zY{x(GdMq)Z|KL$#-6hs1h$d%&c(aqvaTQhx6(0m!H-HUT?&e_9B(^@MLrnzHK2Mf62Xc z0gY#-(*`1eeP{*nrVU9#>ou(PP<-wt=9rpE2}t=k?$MNZMNCkIJ>-r^%$!@!h5_QR zTdHCo%2?vblsnQ2;&NE2RBF|FRH{o_wJ&KmS|izAz18NL6fv7wtZ@eFq=gwCbLT@RcYp+ z@+;QqQRa$X%9NsVl|MqpQi-Wc+I3Hd&k=67=E?AqP!usLe37>mPlUhWwyZIZxIChU z*}z9#m^GT9VrryF*%5Ul zLUBp>WffNx>Oi&1IMi9F>_o!M3yy9AoIF%EK73665wX#Zl=l|jTGTvMsO+o_$|F&z zSm=zC?s};$Hhxa?bgQ0N1v1I?#MI;>4S%W2!*a*N zqjHl-qyAR(A zy1e%TMzX{Dqaym2Q9>@zV4mE{R5!0Z1=63-k+HyX(Dm~?L>O;{nt6=&zB2kNcqil< zm2BLygKc5%$(Qf;ElhJHncN}pD5AC~bI7CbUD`Lp@EkCgvhYk7pe*EbwuJ-FoDs_- zFrTMuG>g2D9{AIiKlyUl*=l#>*_X#37v$u%8s4NYWi!~V407G4{8F1~u^~2l&A#+0 z*Ld-a__sVqLsUq3Ie+q322H7sF|kay&eopA&kM==ENmwkDC%CCTa>CZ6a^pSlpXBx zQKlvPnFP=i42hr4iYJ-?QCkrfnZWE$Gm;a^XIFOv!UKcR?|&iUIoj*uU3>7zLTTd( znY@btlL+RTb&axS1l=~A-fciG`Vkm&x0BfO{x0oGwyXQGnOkvU8?KaYm_PcI_&K~G zfb32#wF{y&tuYc;WxG=#YhYN^S`+u|JKDv07m#)Me=O1F^0->5HR?^G6Dz7ZV}iy8 zmV|3Nh>%>8$Qkk$>C=#$RtjWrLvmX8$e)Jfw7NjUE&Ou;vbrE95J-*xpS|~iv+KC( zJnx_PuixuGucemMR?G2y*RtJq?2G`%5<@_`@;~_x5VC>I?glpV+00Bn-O5a)IGR9Y zt3#BG1_UUr4miXK9V234WY9Q@qr{%1F#_NU~*j2H}tjM;(fTVc68-XvKB zPrf%q*Gm|_A=+J7FWL_joz?hJuZLYl@{s5k7QYJ6-c8XAhq(!-!ww&a%> zil|`GEAnwz7{wq&r9p^FgAnC|K$-3!7&DBP7=*|VLX?A=L5MX7d2s@zL5L+F4T8H&0i}tce1;RG)f{pOoHvMZsNMpu!fw#0 zm`V&+g$ahQ`lWuYfa9=Hr4iS{dS71^yp6II!i+%N6zbr@7XJret`b1#D0>&!suvu% zpGHJ-fO$xfG=YrIa6H0AYN&_Hgam@rv>fkDm+A64oj7KG+ZhS4RWDkXI zbzRB&CkNY6(DQ>vT5f@%BV;1*P&f(y@=*%fZ89u_M21-vb-qokki70L5aggrkCUVGC1|9N2@;yMODo0^*1sVg(|eCwg~dI<*`APjPCz8Qwb$~?J# zbNIiEZJvGh1}P<0O7ju$*dT3z79$^<<`@-XMu{nRZYaNO5OTqx+d>AF_;E^fZ1G{7 zt=&q#jjNcF3R1baQ(bp|AU5iv`lQ1DhV3s|qGODe_IqI78V|{V(vk_?MBB$($tx(C z{r)sM2iWIhAtcq+3SMZ$Z(+QHTenenE^%lEAp};k|2FNGqvZtLqp-_Y#4zsM@KT|T zhG0oO8=F)sL1wnlpsDp7tCRy&LME~(1%?00=kI=LcfQ>&ODZa-9W6H8O!&oZ3;ocQ z8<>)08z*#K2Rs>7p<1qPvv_G`Ykh7<)xMq9xl444I(4@OxJny^%L(44bjJ-K*us)0 z)L`l|mm87|$%fLH{Q$a1Wd^QHyz%6^3&?cR+ZnUZxn;O~uc(*RMhF7u~}Tht2qHBN5XzMU16&Hn!q5+eN; z#u2>XMH)m@Ty+*-$u)#|ER(zx@JK|aFbxz((Y;ZB392uX3~tbWCHr(-Zo_Bq z)YM$CUH1-I2ar!8)@i>KHP|02FYXld_R7sGe+bZ5vYiv-fw{P6tAhQqr20^L!{)}$ z^gGF-%KYQCW9h$?>a2ncUY$%E6Zl-ddm`<>F2K_8x`6&-OmGeAktENAD8{3gd|0E9mvmd3ss)s*T4^LOmEl5dKa^A9SfJ=6?VzyoZ zr8>ZSk!?9kgd?@YiWbKTCzgJ^yY4ttYklCZ|;K0O7@NkwbnC{ zyOku8g}tUN3ngWYW>foH$!cLh+oEZ)W>T{}@+R`DXW!s}3}C=g=v3m1q7VPW{hxaW(N?7*Oz%!a#kiP+g_fI57#hT* z0Gp4Aw?jEluC*T=?|g?UO1?w;jS8?O#Mrq#=)VkG|Cim$CbG*FZhpClCLZx<9h+Jr z1~G)l$VEe|Die!bq%<5)KHaY^R~2B+XHBjzvin8&JQ0lv-LTR6tI%!vE_I(0A7ZMR zz(=F3B6_JC?zBtp?wAR(2wunDBq$6;2<*<4Bumc6Q`*+8Sk)s_oB^1qiyU1@)Hm z5LPT|bZc)V9MImjt^+(9lx#K52C~(N;b_oSs-_Fv%i7cJ{9-@t37t8ZEjKnw3qqONmDwb}5O`hOo9KaYAallNPBo*8LqAn&c0ZSar9ZUQbNS4bZ~A z6TsDtJE&!F2F7VnteH2l{-*xG^(Ij1syR|CYNDup8jS3X8qU~(OC#~bN$t)v5_V1D z5ChF_cfe5VfeoS_cremq)IAdS7M~@-t9q#RC*My$ ztm#2^urUF^AljkZ*wo5PFLqs?ZobNK`%+9%vVB;~&|G&X(=K|-+s^hUYpo*@cOB7J z-N3lWQpF?zHu6+iH9LN?-Tp~%0JQV>3xWa+CMb~Bk=D6Q?H9PyZ1rtO>gu%BCKMU-Epaj#;{>3e(%tKlPZG`j;tFN3r{f6qRLf7t{9b|~+)p=aO$~tRxH0I@ z8n&jjcP5C&r7=M>+P@yLmxUqO-^5W3tF>&3HG}`;;)@B(%beFFT(!lf3?0g@L!jCW zR@~h|+yWj%g%j`u-5ncc8_XISdd4WCGsRep2V|;lW71P6Z7y34yoNOw94R~X`=YVf z-H4wl;`2n*ErR()4aYxoWZ(y_@YGL#X3f;*SN-?{d@Pi?f_s73>4oSz1K>+c39msp zlUF6S_Vb1;D`W3U_6*;!TgN~jm7rqx300al>>CvJNp=|+T^5}nE@|j<_uTzGh{CFD z3bIjEgLV6eHDy=Y(EVY&b@R$(wUYf5d27lG=EPWPX=HWTmLE-Q;5vaAoq>;?Jbzu^ zD<%iyFxD0c`6c1PMDFkm%*VJIG~EB*VU~;r7fnZQqAf5hEHF#7UM#|47M4j4v&O*~ zDbZboX?@|>fw&(ZHS{8>^)AsmVckFKedf&Wrw|qF2lo4HU$nwmX4dKVY@@`0XB%R` z^=t}LoqnG8(h0j{OfNIMG&Qh#xlb2xiNpTYXWL1C`)_R57`iF0aZ_MFXE#bM?B@BQ z_I!kUwq4p7s6+O-$57wd2mW*NGTXzG^;0&*)4q=%Fph+EO(lB1o0!CaN#aVXYxCIZ96&FkO*BcF%#J(~rkcn$QACc&l3?jN9&2_it_(RfuM9EG zS0+{4g33&=puK)6KcFwM+BU_QEzz+O`NVgcEX|(N0M|h7N@^W6iOhV}x{_XZR%rn8 zj=9;YHr}_#7>fzmn73COr<>b5Hr34TtF*;$Hvv6}L;-HTS zjSX{?6=23{O&nUyOl5*mOl)tNv*D0v`6Vci^eS%kr(qb@Rhl%O#9w_9(<~EETUa58 z6Drv?YNimRi&4zp_8WMv&zIE#XgPhjca2&Lp~HEUm~U z8PgLf6Q%sb5o-GZEjN8pCAkGaWIO82FZEkEA1Wg^S6hr`qSSYorjYKyuEvD0S2}CA zkkahdUeA_jaK%ks&AeR`COySwbDqRwqILY3HTA1mvAPZjsnV(%OdRd6-pm2%_RphV z6hR{nkob^QEnLOC-z^Z3{H!?wKC_WVGR}`zO$KA2#Ge-N~LY^tBGuCm#B3_{VZpkF+O&SmI%0hCCZ+Cwr%^=K(7;LU$!?V!ba?- zinwx1yWO=Oke&WmjNL34OCT0ttwH)UYre+jjqlpL;Wc?V_>UUmZ1zYr?T@w9Gzh+x z-iWGbq||iQI@nhBzS++)<|bdOiMmpj*WNZts_eGU4&Gg)aafvY7B*1v0mFr@0YByd z*(5_Q9^bf)!8g$#J?w>`NXALAT1MA5wZSXuR^QHQwrLwiE^u~`9Jm4==DY*~gAT&D znUmIH;-Rd8Em|$q(7M$^Z7p3bG^*9Bg_89_;zHx=gK-yHw?0_sLL1fx8<-d%F+<09 zH%(%AS&^X)x?n%7%$B*}%}S@WVg?|Prk&cQIqAU|N^pCvLs&wuz9C?;DDF<(v1_3% zHv|Yr%&7kyMKLm#!;6~X1z1Z%qC=+pQ}tROfS;_BfOQ2}^DX{w$zd%>l7v+qi+I;m z74SU~v{5fG9#~AnfgE(&g_aR><4cfrI_%wu7Fx9P`C%Md1woqUgY>8_=B2zhn;D%JK^!_>-T3L z)=;S5TF~AyhD>c?TfSCUTQ6^c?_6~+@BdZ4EPK?n#ae<-OJg>IP*O{y+qS0x10SIU ztRRF3onf(7lm(7LW#W6RHbe&9Z|t9r{mP&To~l_Wk&)~)5kv`SHvFukvp}7Ss;o*^ z!xK+#x1%%Ru`R9fC24&>GO;!gozSWccv{2Psft5=M8m>hW2T3pu@=@AQ-+&oB)}lsdFOy^3;^#_9!=YgRit zM1wH3XtXMBw8%zTklc+G93mep304{_(fXFm->FBfb|X<9CqUsx&-NsR9bE2}j~5rr zYP^Kp;8>W|?y}ZP(&tiYJ|MXgP72wg9W<1~%GkoRm;!2e9n88| z!);|mlj@nyXi*81k-oTb;l=DH46W60aG93JJl1B~q4a{1M4%!j@LF&@*_Ng0r z&$ctmNx~L1snVG~Hmj-To;%r6W&gqH0dPxcD>cBX(S!$T243^}40bUjj*aw!N;{ef@U%#w~Td$W!BKlcDn@(hH`EJ z)6D*e^+NY@`X=k7b|_<;!R&)B?_i#HkOQpcyn`+;Q>Nm-2r<f;VuREi~B0z~V>ilqP&Y_JBNu)(zv`Lz) z5u@B7gEYjBiYw4ZbrKga7Gtsp+p@W6VmPz~7|~iFauXnJUjQb)E`tgZEB-`GgqvuB^=*$K0L7>vZDJy{@%FMmLK_ z(M_GlXzOSleQ((+kP%tBK}2^OG+@ma=xiWF6}6V^XZf19sMgaW5)%^h7V)~)3W3X| zj$4arZCUtMc5G|`wv=^Uf_1v`gf6{n`(Pue*Q%8` z3OU4m{I}Z}&}EPFz;y1DJZi1%V?3&@>>(bNR`vi7EaN`R0|NH}9`H}Ctpq3L!e_h?|9P9?QJLqE@rVxPmgJ0mp?oq=d!)#vn*sC4b#4i=4 zpbL0SqpX;B3s$Yoo8~P)g%&M5#$GL1ekf@#6!r&Q;nVX zZ2qd07q0^fC}x1nZ&Fm+8%`{mTrH7P%?(XF6;fFUyHqWdNX0HuELbuPiHKcDK?B`rE}mgyK1jXCsW^oPi*9o>VOp={^gx7){%Rsg-O>uPBc z#ncUuf9O+fvM3EBVbh0kg3f898c`JKK)B_Cc3#2-qi$?$L22&UG~~=Xk^-c;aa~Y* z+a!H$`Of;U_kEvC`9WQ&(*FBz;Z92Mhi)^v{B8YR=r&HYkGW{QL3`PO6D8F&VGoZ& zHK=XOC*w&TyChW#U9ejJP1CK_v%SA%1iGGm63tMTHECzOZ9)eGo817a2q$?IRd6M_ zN{VIsDr(uIJyq0v70fDaAF(0LZ}biIz`CJadfleNNb!~6CS@>vEzCnx4o?8MHs2vqTyKkv%6}gWQw9f=R>w- z!EADLK;!lk^j4q&uiCQ`teAahF;PX(zU+8uPU?)Zgh5qqW+YI4Ylc_UOJPhqOr?UB zhe;wnz7c`2J~50QFV61NuB_^3Xv7U%Cv6i%-J^oF))iIAi>vTXgNI}#RT!5l47wGv z>{f-;o!!|wR|)GE-bfygZlWpq7NZ@!rX4Jr7sc&~A*xb^!okO*y->_asTJ8!%pUW* z{Znyjd~n_^cw&k1CRtn5EC~=G^bS^6BlTj}_SfR>4^|{Y~ z>24-dMWm=dCtfOclWPdl6(NOD4~$2< z>P0F7N_-!}r;@gvmJ>5O3TH5rdW(blA{b>TVA-K4&3t4fDHX!WyRh}xBR!hynNTSe z1`AcR46-J&s_;!@#*1{o1z89!At#-U;!W8bp~E>qVN|R02;&ioAf3K5eRQH*>U+%N%+AF^b{d@4K<|{Khnj0m z(4Q^sQ{(gygQvcv!u0LKdd_C=oyND6`Ap=3QP%RZPLz#o&7OO-PYkK0g_AOM43Kxi z_^9?yPsh&CE~8>s$7e&e>})8`9iR!LEUQiP5@5<*HZxMVhG3+=hcQo*>3db*5f3(l zE&xqr9tGkfKPHVW&OQJs(23us1qL*5Q~<6nxBm+QiJv!mzOnV;h9f3R(rajvRK?M2 z6AQiWhUj$)T^+rCee`-4H-(rZTv5*5gqfHY-a{DNvG88Pnz-uwo7Tr~aOAQ4oF;tQhYu4z?88S0 zAMxR%gpd00A;O1z_%Xtd5zbCU%=_`^RAe?5)~|iEZ=Y||y@c=e;aS47K75eyK_5O$ z_^=NjC4AI}=LpaF@NvS&!)TMfbs&-fh@lz{nAL`c&`rNeo|W3qJ7tjdJE%vjk&&Ck zz<4q0yhVoYV#>CdYqvjw>87ZW%AmDir=M^8uSwhvv0}0H2Z)Knt1{94LWm+=k+z$b zjp%%UMKEtx(b1_T5xbRYPQSBXQCl=K zYMM3ZhyAQUHW##&YEW_0&$ZMho41dJ_$i~dK+Qx{M*;iw@J#t zVuP)Cv#Af>z|Kkgqq2i;|0#rDKpsi?!|KUKu7dEYZRJR?gxj>f51(t%-J)EGx+dlt zKgJzWqJ#){KYUa zv7J%k!wD*cW=50BRngmws*F^nBjv5u?W&UEdHc+Efg0>-HMn48#a%d7*xD)mB_adI z@@d_#g!Hy@cTpPwzKcg1GB`8_!!3k-FNvly*$LuJL}?Sl^@NHg%jg9G!k#sK4O!mT zp_jfH7=a~PQ_|*)!OC(_tdTU8p>M|87|_NJW0mcacoLfSuhn{G8I;xtj6&!)r}G3k ztR|A^epzZbVZ<0;tF0fS*SMXQold zmS+yf2j1xv70hrgd@^=Ms*EB-w^?UJH-Q4or&~01qYs(>K)RLo&Ye3^yGZOE`l0QR zc2x=%ldB(jT8hW2-H@$a?@%jXEAB{>TUt|@ zR@WBa&&O2Wc3qq(&d1zDGwp=4E>;$B#7gD(L?didS=`86AgM7BL$`Hou~vXdAvnNu z=~L@ZqNus6!Y2I9w61a+Tb}B^mbK#nJ)_|rmc%(!TCImVL!xVLVoBcJNy{|>1(>X@ zHC~01DhG)fN4e8SIK>(YpQ+8W{wz89biy^NkP$MK?OijLvLo!l%|ohA*YW{ z=787N4E8*goprvl_p_&smTB;{qMRxM>}Z4ZA3U|^z*e3z4!Dd%|2rD4esuaVvIszt zHpqyM7LM)d7_t9}PgK32i`yC~hiZf@(2Ng2fvRs-Z*1N^soKE~ z(IdnIHNX^B1`81>V}C|n>(vpW>`yz7 zTB9iYlh9lj+j&LHX=ocneoV9&R^XfQ~rtcHM@ zPRdXYCv19?`M0V@WY@`Dop2DXvJCP7J}#dVoP}5)kGsfq?y-djC0^^^j!?6zyotwD zaziA-$m^Z%fo4H(dweDqs%-8cUh~|nj@u7DI$6{2f-&g%fHv68>|IIxMzc71b;TJx;u`itB z3jtsF_@le8T=;>X{@B6~%)j^#90f!=IraDNe}84+2fn=M1HZTA2i~q32G5pSOk`{G zotoRC5FjB8!fB2NCWc3lMmFz~M6Y9yL|6xr-(f>h0e6T{2lQoaB@xVrhy z9~e{B30|kiq5nT}G0+_~(6zGfb%J2)7>p_`>?1ShD^f zzF6~5*}yciOBc5OBS#n3e&WT~e*Q@fJ6EkPto>b|SXle-E?N7(c5PqM+?T2~k5LS| z;b-V-?FW{#?Q1)ZVMlY_lqT)pxH=`bZ7hkMeZGR^(2=-PM>iR?9=RpAE0zKHy3(YkMTL5VMye{;;+b*Sfc#QhaNj0Y_r$K z4j0`fdLtJ$Y)AO2P!6n` z16IW5@B@QiYQ--AMgr-#+Rr~%6!}&g$Cvu^5(Hj?z>9-`*hJN_iJD^*bz>7*gNNMV zZC;;qi)xp(ezp}fzBPZMZ_RGK)T@^u@Dc=Gg1`kKAmimeNBNsZ`Lh-eHi4tf8*>Iw zTIp%Q@LvalzJH!Sm4BYyeyP_lLEt3_d<#P${GYII@i(E(5f>`ootj2UDrc*p{7^Vhu>N?b>*=3}ms!ld7Fnm$Q2c>JmvGeDe@Gpj)Aio+M`!^XIW6fmlk+4O!77BV_2nebty}xR4$=GMe{WNsJ z04GuU<%uZZUNsC-bnz4$jsbQ*=$ivM%joC9%6piHVSXTI8LN4dkB$Wm4RoJ*J#VPo zQdv9I#Dwdte^B>ddTVUJe4N?9$K6I^ytCkLsR%bv6dWm_gd~&vS8@k`Lkw zZ9*p$CY|kg8gcVHC`^J5n^D@^C_BSs40N$_PB<$}Yxz=SX2OBY_SSJqpiUgcTK`?H z@4;0$7o#d}$)L5WlQz=IJH}{q#u-P!Suz8PS=w7jxqj5ScLN}Ag}{pAo^^KKg&qRCpmus3Tl>tJXC89qCRz8 zRE)k6CsSw{Qr(0i%!aiKgF?W{ok%ALL zJMspQ`>ewJszyQFPM8}kaJ#^i27*8p19JOzFo8v7tD`wAnk3-pFbN;8x1Yc(1zux} z5X861Yn{VO9t-Hw zxs65`;B`vKxeie`7_uecZf-pO4@_A>cz@_atgx6iU=dK%?9qJTp)=P+Vr_3vokGx; z-6XvJ<}}1_mQEu;D&LCDed|53yvN6xP6NjrP@(o14{2HaX3qZLC@GQ45{rzD`NM2E zpM!5dJDqm7IZ$EX>;x11Wc7~h?8oZzI3)kLA`v4yneVv85i7mb2|o;#(o89nxx}p&S{(%enR?`o&Bi!&q#3# zlHm)FSwb{-i4@WJ(jpq~Ox8>FgbY!Up^C>5WuWDP@m)Rx_viQ;@(e;Dp9L`HM|$jd zACM6;qtEHp}fBxE9%2Z65-8nIKao7SmF(@d{8 zEtSAUsM1Y982$JczWAkg0EJ*uJZjrm>kWZFqYl->*_Eut-MLauws4utPeSKmKr{{b z1qMlr-wP;#s*88ihHr5j3jBlrNVv|)TG0BJBA5Yg6zm|ASc;vNv(rozLCl0`>hP3* z^phFRvz7{;jC9-`#!s`1?7@S@Au4tXTrkOT0Qh9})xbAXEj+G(Li(f%Kw~UZQhf7gQHC z`0M)c0;oD9w<)A~BB|F-<+)V?F<^Svm1GrPRr&wcmqG@_QIiO)u%g-H!Q|ja!vOq$ zp+ERaD1OS}BJv+45aMTXNIe=ui=3FRB)PZ58El_Uz%&z)B7C2M($IBV>ST4D2DXeI;&eqvlukqDaA^Y5;dHgG6oDRcS&3in;`MVx9&ha~bx0D;+IPsg*@LG+ zzUc-Ijl^)t(rpoLckQ%~WSwr~IGpPmr+a9M#vzq2Y@Fa+Zk%sb6Oo)TKu~md%lXFP zbypBn;~u7Q{eqbq2PMX{A;J=U;@o6m5T`A}}z_T&l=G^SAYf z6$AvxHcN;R9c0o;DXSj2ZYo_m+X zKwDZ;bd45;nrl`0j)o0P(w6AWHW)hB8|hjg#p@G3`JOl1_bho*8XDCw3U8Op4$LMF zF%ES37TgKo3ZB)&p`E(wk5P}TU24X)DI>*5OZCP$)uG}Xn`K>7_h<7DB~5vfuL~DY zgP5NST7b)PnsGBxcqzf_>1B6im%R-=g;fL>Lkz|@z?)G3B+Yv$&j==stz5op2jlsY zlc4n_xlz$1@?T=jE5Vo2(t&tqhArKb%IUAVE+%H}#1UFv1rz$P)|IsW_bZ&@RGs0# zy@=MY?w(!&psg4yr4DFuR=wG`{7{O|UK~Xx%?HpO;9;}4wv#(z9!RS_QAXXUnR|bO zByf(05Iukm6S87MrKeW(LPo8=G}u}=r)1|Bugs(%4;-wq?q$_0nz873U!S`mvP>5FTf{$tVDd1LNgzMY1m|;b?5&vkaAzQVBh^g~6RSNMCrtn+8gI?;O z-_&!Kf?k8t8;NM|&}XS4z9W^-e4-mW_%roYE-y*zW7*uV+v0<1j344L+TAp_`mAli z#JkewBrcTg8-wl}^=!F02&KTs9&B^L5_jyFV95NY?7y1W0ZO6}vRmHm_D8{@JMPVwbkM^c(58Bxuz?5`PCP;636(nEfcZin^tj({!MZ1{9Xq}RN z=gflJO;uryn?yfB6{68#wdgbpR%5SLk(61`GTh!$6F0D461Fu{+Dpxpwq{D5o15XQ zy1*H}ifeDz9(zFlHPm=gVJc`s>Q4iIv|YUJH@xmE@H(KqeHw1OSm(ptPycbP?1qB) z9Iwd>UNcd5fLp2pydIQ}2zT8(_~VAV(L3B^7{p~WuFo3`H+=1`bdcfh`9`A`uiJuE zh3=((-2;3ao_G5CBm8DlUykc?aA-LbT>?w1>daPY5I8pr;T&+$8ptR7jDf>Dn$eQ7 z8zq<%`~My zfdi&1a&#TdV}@OflBKxe*15p(SK}!7QtrqrFssXga*3w1EHNbkvABhSro)7cri*Zc zjH2lk8pvo@?$W2^_@zlTG_WA@RhtY5j-JS);(|Og8PEmglfmSmoXG3?c2msZ8JwCf zBR7*l zReD~fI|X1Dv!kTydS0jJ%31*F0zH?1#YU^m6|ZH`ISfM&5tqKYqOcLVS0kHy8DP==r!F8HTtVJm-3J zs;E9))Ubs957Gao@4uXrGd^x4xM7@CF#WGj>b7z9U-B!+CUn;*cnoLT4G4B$Zf3X! zO6Xomh8?;)A|ZLD47-ECPH1DWYm{Jz`w%4IGLfWxFBo?ki-_clm4ty^ftrk07pbjb zB9g+L2Cx&6gp4^fd$G84=q22F0l35ZdqhIBHY(+Sta4p=bs4lZWvN8DX#|kRc)yV%c!32@Y-30@bo#Vy&{Q{i!e^qICw{N-V)X%l9Jl1qpGcL}ZY!aygR-h`0 zrG$#0y-;3s8>$swda91Al2i{1c2zKh>=(tGSV)>n)|6W16gK8gOeb7NH_aL&FInZo>F~_{WHcF^W<8SUuPJ_+a~g|qkhEvSIA@@o!!sxZ zmd#90;{cTrNLD0$)2JXwyCi8%19^RAWil|G4v=?07wisAL-KuHHC?GR!|H?leX5HK ztn#`d4HUbfret~=mG7>84`GC80cc2%1~)eG=;s#hUMQl*R3-yv!vV9u!}UmuAq8kX z;M9GASg(9sy#~}V9j;G9FN4n2jHVUUK#v3BDl$FAHsLw9R8{>XdVgs^_Q@%mr-%J09O}?S*rnniaQG(K=LRJa?8Oa$_|o82@}Z(z;y4X z#I==&wMI?lqMI4?Lq76QL{o_6?j|}wLE7eFi91oNO*cOes%>Z^Xr}OPKiy>{@VFjj z^IY5KGA?5<+`Ibh!9d+@fkFPmE%Kz`KrB~i@kPoA8m?RU7nf7ffX30F!CX@wzP%wj zS#j{hJ2Gl1t=9lhAAK`7y#{KM&^o#(C~QVMGi_&v?m;ToOvb2Bym+ zoVk$0qoeXim_BZS0HS@hov(Nkm@cbJ7X9X?83i&hkMtIL|DJq8G%v`ePS6}>RE8z8 zIj5s)BUr6Ak`1-2cH=in>ug36Y`r~CQ|#mRB@MqdjHcKZeN%dKu<5>_VU`W6p674M zM=Q*tD@(4m-AxMsL^c>UQ`Q0T@S5oQnQj!0vK3Wfs`7Ya+M1qGfEl948`6RO-Mkgy z!*ut(0aYVYe~O36Yogbu!>(+DsmJ^4(&eSH{V7wVRJNV2P^OV|r5>+MSGlt76u*?$ z;70J0QrVGobx+yRbWEAnq`0!YCb~1d)Ri4gU#9mh>1Cy|Ytp2rY?5}AX>FS7aZ`G^ zE1RTi6KG$MUQsH$HodZ^?09;W3SFCG9e7Rjs`P4Cc09dC?;FyWm&#t7UQ5}|b)ar_ zYs!MlP}0D^PBV638sFp4!`A*}aAyBB^KJPw#Dyt6%yd`GXmZJPvSJ2KvI-uen3pA& zO($bB$(rQS{Yj#jwaFFJNoOWWlgsxfS1RV3H)R|A~GM=_x0|P4@a`$?+7olODQhY^= z^O^2DcbxJr2CGc87Y)5picFJtzpc=NOcz<8*UWy0Cu{8NKk;OhlKliv`CVNrZ>T}` zyS(DXH9Ns`O>4Fp*LF4Uj(0LK0;Ybp?{Hlt@x~ySg1x97A`kaO)``T7DTcs=6k`;7 z3kDnUCXNK);=5%no~H%D%fR$-4qw0lx8Q@Xgrf^sb^3DR_h>k~MbJmCeU;QP(EbbOnO+%OQg*F zU)_+1qc>fXCTM)63ypzCZ+hapcKw?V&3<{~{ZQDUN7Lc^AJOQR!D9LAkEYAId6UK2 z4qCP%&!_KCYD?92$g)9!+;_^j!bc5@Uf~f(;~Qkn+bTPG{K|uEStNekBlg_J`>`*3 zm`=~nO+VV|u!UvQ1~0Q*lJyDo(B=cQ&gRj5pJ-|V=0L+g^Zn^CZkesKD&(?f$E@fu zo|-)vtVNDHn?e8VM^$(Grmy_f-@o~tKmT{125jAGF!(><((?*@|6bP9rNnh<9-Jt3 zX~U*p^j$jn>x;T{_VKT~OXsZUMY?qOk&Acfh)ZA4rEj+`&Hmc&VHWc+JB#h#jkDQb zsi0O{W5Qdd2?wG@ixy}g|yaR#6ho>e`Qn*^J`n&b$2g*$dnMd@#>H|0{K@CD>HYBIQ3|S*Aa0^&irUJX`Zgm;cgi z-$V86F#mo1M=bxtF8^bC*=zX^=lKu+D(&IF&wotuXP+ z|Fxn$CoTUMT>jJD{PTJK)8s$f&Ht3;Kj-p4qn9bG|BTDu$o_Bg{~iCCH|p;>%fI_c z>+f^j{Act0e^1_bJy_)5trT1LCj{dpCs@8ZvGj|f57FxubY2gp8o^n z{ly}G`@XAN*DMga*QRE~XRezQgl-AkbCrqVO3-@xHBqvw?`}392ibf){M$jvxQ93A ziTBKM<~8^FRMWP|{xe6LGHOV*)Za8ArgJvhim^LVJD0lX#XOr^-g7?hKw>AL!tC(- zSu=5@s-_YwIWY4j?5ynvv)L=0W$^riT&{p9n9ckg`<-kb8QVdIMvEiEAdK53cFQ^m z@z)F7wiRq*zlqvPbV<8w#4YC=3Hy(3T@LlukaX|@(TAnPldCCOIN6w%ZM5@vIAtwE8P1$6;2H=U7^uF;>hmITu3_ERTp zXNhNE*s2Oiv5PbA%)%@QSe8xSxb_1dc-4%;+{M6pY5K;&AAa9=v&QG;TK##|^o<{S z;J)uchP^_s*WZY=g6MOlV1Kk|9VzQv3doe2-&5)7HaFN4hxOywhjv=>oH8U(D?cYETsA~O;%67 z1~iwx1`AmY7P1;FWHngGYEYl&2H;}829}+^1`AmY7P1;FWHngGY7l5xVm5^mTsMkvdvG;r%ft|N z`=yFF^B#ZMNH+K7-gj6#$;bcPpLc@;#~@F3<^g21gZ1RnG1h}H^4rqOtU6=I70>6i zr_e!oPFfPEwW5PNGuoou#(WuXJG7F`EuR=3&Ut0BT6-6&^{(tWCmxh|@$5O2n_9eq zax5J>SNTr(xMhmFf;e@=$BiiNN^zceQ*zaff4=-CR-;#u=vpK#hiOK~6QpA}0+TzEYPZX~SrZ9x!kUBPnaeylJsi{7|;6iU&AHAvDxcQLF@9dQ1$bXKv#6X(C!EpR{E4mJJ`7Q z4}K%HO?{}hwyD{#qqb!lRwJQjOiYyux){4T15Zi%WdiJrw`Oi-t3@vB+w5>(zK+)F zm~92&aC1V;+0+@%x4;{_592npE~ z>@fQRH~;oJWK8Y;_b|Ix_&C5Z#T*w=_m*){C$hY>FI=qq!DF+?> z>Zh)>sY#{ffVNsY1RhRxs7($h?3T-L`k#Hyn&^HZOg;`K4-_EdhPkdR;z71rVyiL! zXSv7_q{$BNW<4j0x9`0Klyvrk1O~9_Jj9xlZ3XERcsr=Kk)-L~4(P2(^jT-z40}?{ za$+`d_czR+V*wrZ3be5lFf{tsJRb#1_k^r4;d_n-O?{O}n5-VXX=;_4w;-DF{0Soc zqqm6KuZ}D#GWT;<#2&pxgdpnjq9U^gtcX2&iWvNU)>Z>y_O}XXKv;!!&?vGp>7c9T zkORtTv~ahkFQfNB5e+sr0qxJkFrYB|GFwt)G5}rcqIq3M)+VX2dZnVPqaKd-QD`~Q zzavQXMAH<>6zs*3eDb_O@;)AEgZZSxAPht{uXrCm;qu(8JhHvc^BgbbIaUhKmBNoH z%)*~X$_k9_Dp&te#ryCPmuH{y^efMh%X3)qK77dK*{eK5$}{Zp98|myA8>j0D9^C+ ztaN#16>ni}2<%p}x~fF>)UX~SLj6*N^t;c2a@JTyu)UU@SA<%o2)5F)bBeHLShd65 z+RrM*0BMcFa3HVsnT54Jt%&@)s`V*FbOF$CeOHUlps4Zgq3}4t#}`P%H^3;9>YD4GiMa3)I$CRfF zJ^-P3k3T0}o}v2Wo-xY!!Q$!a4B?Otv z%PvBY$CT2GAV)3p#S!F4Z-q!~OW?*+KMCBJFFbUUF;?9|OGugGefYG?b5MD#89x40 zDbLALc)k=qp)j+Jhr8bU+BJ%I5)^m#J0>GaSQH##zWu0LsTcT>bn)ZxR?0ZH}l=*4P>~N!p z64blIXRZNnX5TxEqJZ7c=9`gmss|P{$Dc&Q(UYF;T@{|!|PbtstQh2Hqeoi7C zoK9tpczC2ZuXrCm=km-ePZvIbMe!a%o^g3jC{Gzdo>sg^kf&Up3hc*jMv$Y5C?m)bMJ$ORhn2Dp?~2-xY!!P(&91B?Otx%PvBY z`;^j)Aop74izCQPZ-waomcWf;_X0QO3y&V$m{YvRjmKP`J<3zYjiaSJM@r$trSKtz znQc5AZkYWn%v|w4e8Av3jQ@jiT?%kvxyg%bE!Q7S%XP%h7TQTD5)M+RrG(#>yInd7sLt*3%1X zJ*9~JyCMW9710F%hZ^#-^Lg1G+)&d_D5V!Sj$7u7zLr3ca~}eD%oiR# z2y#~O9zmXQd5$Vi89|;d<$0f$f=uOQ7a_=VES?u2$azI+8N#yVLfqw?<&iXDe5#rZ zEP)#behIiSUk>D-@c1yRcptvc<#}3p%D8cFDbGwPyss4A>&iZ*vc_0EKI~Dv5ASw) z&M1$8#!UDTq!sVO&yh$wPb-g9S#E8|YE$tZf6lo)ruhf`X@R9s-Mva=QmEx#MFbTZ zaIfl?LNB~0qRCQ{dMy(+9x~u(4>3x{l6L!qHU{M&z=DH1#g1|RV8+?tS~AFX4x2~X zL`q&Z*6BA(Kr?_#)@1P(zoq0he^B0;+I(3u0z$L*VcSA8sHL%=TdpWh8|bkTy)_PC z_=Xv4YddO<;sF;>Jv!GaS1hnE=}qpD~G6WSv!hYo!lG?O>K}O_oh)t4ap`=+$MU z;i5+@ngiF^Dl+_?D=<`W8GKZQE%OCYjm}jIqxw7AkX$7lv9Ea8D&`GnqQaXb!!L-3p`woJcRpD;Vgh;N_@f%N1OUk#Q3{AGt}pgftg& zXalxNISMAb-LI=n*W)#vJ!w}aS0^u@!SWb$`H zx_5~Z0=MUA-4j5s=j4Wlnl{^u?Rs`b{oGiki82uFN=6mHR-R1OIV2kTE>6TeheX5Q#ffX=<44p; z*5^xp!O|}90ZY3;{g$?d%@R(T4@{=ZQRPF$s&1Qa`NMw0xo->+rx%k9AoMG_GknQ6J-19T>8vL=_^ASMf{8s1_~!i^bUs~tg%K$KGH406n} zbpiHRH775BlY}pmla~s1mS@UlmS@b$QakaSudHMnChQF5I@v!~vhfMXN=1Bi4G%oQ zaQ01}U^qc0OR=hPzs{veB^}9*!`R?}epA*$jrGhoN_~A4%f#eOVYq@ zz?DZ%Ko+Y+o01yv@rB0C*R3nZ!I?{UxMCSzP$|nVZiema8U%jcfmdDju}rAL4R!W~ z2inO9ZervPhWfKVe88;JMK$DoNkyu6h{7oGPx8bz19Q<R^Tn^H&DP`5a?_z2 zjvnLXj;2?aYP#nBi)vj0rs+)Y1q#Vg4u{IhU19~Z7Lecs>RJ)+@w{kxII@@JgJFgc zJ%d5Vun|GJ__>2^Cnya|F?=m1UAu6EEDr-)z@jQZt3$a#oL!g@h4O>O_%AW`+1L)l zx{A(PE*SYp?8^M6In5%@8DP_}Cv%>bFhy(Mhm(&wCsvYHr)twqxbX`IIWj2#n-gKR z103+Kw({1{;G*&>XTg)ETxV&Bta5n~sL5=q?&@V^fSFt#7 zjE_i~JZe-jeBqVGr{spg<~~J}i5<8r%WF_|#Y>c42AR4{)iHXi4y%=mRyXLXD;m_> zI;zH1I#ga2^|VV-D0M&dlfc}%1Ma!5)SYN(i0Dhyhs06@j0`N48%HXRn zB1cP4oX;_F)|4g=_4ZDjgo(2hfm)OET}f$$#D#od@*d=T2*>O2+9e#OWurSf9cCHs zzM!a9*8G==_I6rgMdvY1YRU@a3Q&$m%(7CPyPlH>L5pXgfc84fhF*9Tt5zFvfUqHcLnsa(?TRxu=)s*0+wqM^2kUgDELGMn?5Ow|&a5YoNW zQxnzGDO>A$alNy zyKVh8NFs4E+D=}z+QAyYAV(dN7MoDs8Yo`#P_CQ21YPds;Z13KYr-c$`+Wm)4X(v- zJ9`c!855G|5-L?}z}814s!B+9AEgP!cLex`eFw=ktCy;-maG1$Uv4L>yH#5~)&jTI zKy)`8%PvD==hI3*2acbw>YL{Ml$aa_S&FCNjOBpg;K)Ff1@gk`-&jK7CyDH9$Oknz z$8`<7tuvGqor0d8jNGY2Syo0F9tQYmCAm~0tX=4W0$fW6*6hw#K|A{p9ay0baCHOv zISKv2r2Nt*0nOzd*9DU)O9tL6TUg#F(UvhIB_rImRY8MJE2*i6Tj%FTu9QL0*=KG4#bvRW13pH6TWd`3rX4E7IT7xN7e&tDfqUGu~F z_DGk4y6c2xdJ#~^W8fmFTPHkuaGm(Ig`N2NLEqO!n1yJ9$BiB|5oce3CM+^&a9@EY zLKtM7z2Hv|u1qZOkAnCiATtT(qOAat-0agx!zyhAXlh80qEQh`XRYWQr#z{^e>KOd z&cRUY9~^8V@A1p|qynk%>80^B*ItNRXg178)&LW0hJVaAq!tS`=@Jp9^_j8h*lh!C zaqe6s0Nf+*AQoe8(d36Ff7fR?8Y(sn|24-kw6UQUPeV=e2w|0XF0<$xc+$4ks#-bQ zGT&5IKsC6k4BWo^HJg>6h#@aH0pqBpWIi7Kh%P+ZX^kTQ1V%X7%Elg~k{9_c!h;&; zhG|LK#48t`;qgAgH|rc^MFAsV2r$l*4APQx3wX;yLmFcBS+}Y-}b2^q@hjTP(i%z^Q&(S7Tu6oqpqy zVba`y*o8;%4X7nipt>%pz0bndZ{Xc-*B~^-a|=| z;)2B52kgVUq&RbFwg7lLcd+HG%$<{N?F;i-Lpkv;s28@!<`}4D{DpmRrS#) zWZ&Z(u()j8E$gZ&iW{0mSz@=Heg{lAx@Ys93C_=Q4`^%bn#0vFWO-uv+SmTWHa;m2 zXoC~O%h5m$;#%YVpHqR1&EVF&Iz?th+z?GMfC?gV>;`0=5Fp}*;w~orCJ!q>oP<8C zO0-(af%WUa+Vz=2K4|p{l8@(!0RBQ1{6?OKuQHwFa}a(ZuXk}m(NRN zq0v*wP|wA!$1A*9CyE>rh{(`iMD)9eks@NmMXV_zIPk6_Ym11rF5=oE;#wDReGzfJ zi+EKL@hTT_QxS2Ki@39hVC3|b*A@}4brG*GB3|zz-dIGu(M4=6BDT5+Zl(3`0A#9k zXA!Z}MU+6cJ9JT8^^lj^>!W76Q8Pa3zHZcgKI%X>>VS_r)QvjiqmFc=j`*m@x>1k$ zsAJuzV?OFcH|m6sI@ygn>7!0}qfYy%r@B#3`KV{QQP23ObKR(OKI*w{)N^6$M7ynj^U2f4w}2tpDN#Y5Yu) zE~&%=PUX@ssZ0JT_i+DGJ;b%$i|C2wR;3t=Hs#k3A7OA&F*3q#>x1g&0_hwn zOIoC~sGBxL?Mjr!;jq4Hb)vhF1`ROi3%I(?+S2FYKh=prZ12;UY&3iJBWyRKgV4&J z4;-zEN%IK_5$%&N7fnMyP;Cjqv`e2N!p!%A_8-5TIj8hm>#Nmhcvq-v<{OvC*}^;D zQ0HKafDShsnP8ix!Tlr5Ywoy^fkK0en~;thx``XVvuYq032@HA+0xP~4up!b^ck26 zy^$_3zi*dTHvo?e<7tc5AzGutWKGbQv~C~ciD{r;;}I*G*5}3tCny;=kf50A^qDf) zX``C{^6Ej;p{Oys@QW(&wRIPhSQf18Cteo>+o_y+jt%E9TghK~dAdBSd>{G}Rz`w# zExQMb$yzwE0~>WzS7@GfX}sBkv{_Q2P-X*F{TsP;8`d0j0`+audTTay@7uTC%=S2! z54p~*W6fYz_1E&SEfWls*AZTx?L;LsPQO>M985y9WV|6dB{fo;s&9x+gY{-L34$n= z+p<_KTpf>N;KdiO*O;!_9K2>A+KdUL^aUdEWL%Z#kn5pj6%Lt`6_bZ{?c|nl?Rn-6 zu^x8YU>I~*Xu@o$2@$a!Q12?$WF-5kS?-ZWg-?Wb4}k&$#XYvRzZYhI2qHGxU(;*V zhSm31YFk!ocw&5%@q+m2uC>6`t7{ic9j`&j{`w>BENJ>09AsZ4 zwc%1(m65*_KwaFW^ROVpIxxAbRb$T31DO)2$v81@ki1e8A+iLYZqb$2s{?=>zPZDK zhWY7gnR+(5g-N#lb{U^-naD1=ZM&f!uHXx(dV4m~+n>>;G0F9s zkJQQZoL=7gkmi?TxD8N&q*2Fk*T`By?;~2o)NfA*j2s~9iV>=KiO|t_q?Wg_4uuQ8 zO?N(RWlM<*OozC&i3je)v+!-{u)@m-^I*qNmlY~OCb0h^l;+no1|Yv8)0(XwOhdGn z!5TD4#a{QPID!|`!!AJVc4jZrrIelA{pH-KNF9qb2J1bp`;U#-0#Tm0ttPR4Sro&I z7dNb{vXX&yw|Q!h@%wIjmY37j{NdgPS#}%-iQ~V321zQTRVM#2CQFS$q53CK$aP%x!vFO{(RkL$2@nJ7UUU{PYm18$*i6(vQ#U6}14;|Q4Uj--0 zrjv4IalecwVT*A2(-paI?^VgDT-W1bSkSEy_7zn>?G_|eLJ|oT)BYcB_WO^H;25u>m2c)7Cd3aDx(wTZ-17WHvEH#mTlA4bJ zI(Q|re9REdT&j7i(B0aT!~%cool#Vi&=1wH?*eQTZh|T$W3!+^U8do;E8z0Td?W-` zxpy}iAL?o$VRc2m(sS_2i+P^p{34swW`lzs0_B0>zPH=(F)Jbq{^ zmN89H(td^-rp>_6=Q@g?1gBDbW|_tW37~Bs9WqIp%M*kxBg)E6WGf7s+*je-#cR3> z-eReO)OI7IV|zM z>ifionm_?A=9U|;q8dacRYZXRpM}E{!>g^L-AlUZ8PEFHM;EKR|kt&Y`~rz-4A^Kz4)c?ep4qNsyV z7al0Wv+7obG(|NvCG@+g3G2z2lgrdHUD(3o4H#yy-OtplGZ{4{M{G*=YYMK=Bx`9> z!hDJsu^x_rT4rPU$Vm{pE$rS6CjDK`o2=YV3Zif~Czs5xlsr(%r971G7Hb*X$0e{MWR-4?{pl*ljf{el?Gj}hO;$Oc(neW^Ow)A}Gj+Vlnd&)UWwE137 zmdiw;Ze}TNne-}VJ^PWWrz~Cxh^3_EHkB`&p*!6#lBbyN7s*ph_lx8yru#+m6x018 zd5Y+$x}@Ci{vS$`$h5;)4eAT4wPh~z}>6}H@v)! z>8I(=3fEj7nnKLYElGSNn#f`1nZqWBAZqi=#cg+OO-F2oAOT@5IbjZz5lKNbRQAjR zBvCOltWIq7S_CYOv(QN?0W(;-MeNKflb^DdCf* zxz8#43^s7?b5v0&k|ek~<~t(F!Dp zWkF@12`Xs*M$@KLJa0gOgnEw98e|0?Z$!-m-5|8i-6XOl9hrtk5pg{?=kT~Qy<{3f zQjzF_eG0dev5K(D0&Xg?+nWL;|2DLPTXa-{JA+(&1yVv6?hU2ML&tYbG#lz7Ar4y% zCYS6_FHzKeA^JQDw)f-Xn)d@C7x?Ul=B`La_R}U3*^ouIr~O4!MhsII6^?SN(0=qB ztCfXgcPIr%bk&7S7r1svSyow=Q5sE_6_%x?t2{ty$Q5TR^`bTMGEqiJ_No$6t9o?6 z$TI0gR!^$5sS>ylCZ(VD@sd~y-%z%->VM*3{iXueYg1GP*F;;>mDA`c2yI{~#pBiK z=(J9)=@JxN9RoUMK^&oL$BItr893x$6P#mO+ zQI>9sc5pN(N<4!V%s{g*q03y_CCWb_%1MmC{O96#yM~+UvIzxO%O_ z)w?{dqAO(nfKGt$bzFfXXXe*%DGmNGb)U|fX`R^tD62pdL;iNk2v1L^!%j&&!c{P< zX$!eW7&N6U(_&+g*fpS~dTrRqg)$5vxXWEKDcwe~BE03oC?*xgmvk8@F6VL?2QPy< z3&0#PrH>wxRJ}a8lq_JbyTj}fvJ9&4c`e*dvz)5-Gf7t{o+Ho{1??$E3W9n%s2O%u6w^V?08AblXbu30%p?p} z=Kc$gS-ey_%S=^TfjyLUVgGS?>tU~J*gIs55rvz(=M-B$hZNb~&<-9+!OG$lrKi{p zW>U7xF0|1Om7JJ9PkvJ*XgPbtPL8Fa>Azv~XdXF65EpnDWHaup)51^2w#6N_K7ysQ zR?m5xO-YxXZD2X*6c{|X6eBSG$jnN|@yUPh$_c@UZM&7~L3nKtWIw87+G^G5l_*MF z@`qL}PM%#=B!7O1m`z(=_dc`C5uZRzN9Gqw@W0S>n1<4 zdU5HatBcZKSt9wlZt|zND0*Sb=f;ZCKhB=Q!sOj+isau~BKdeX`6n)2Tzc=NMd{Bh zkv!i`o_^Wl(lakBO8>zU$)~!>KY!Wc()V3fl>XBtlFxLL?@tz&K9Cfp|8j}sr@P4y zb{3aD)G11Taf#%!-Qduk$k?J{K?A~mwxQ>qV!jnNS<0-BtO1(ap_~- zG(NIuz3{@JS*m$pgIL@v>RBh7*&oNpDu z#|B(5+7ubFt7P7I8VYe0ic|`qmB$;| zzaLF-D?26!4-iPC|Mus#2gpu~whkbhmaQU6Xj?OIUg$Fas1vG~R-i~&3Ht{4FJ*Ct zZ3Q_zRUC64;C-muFfI&O^r;H_YDT2<`a}R}$FX3mkwi#50AN{lo^2jJ=95GnX@_E< z?A_@5R!+1(p=}UXLw1b!eS(L7KeRH3a2|7FL5|}K-j6IQad=V8+@hHI1+|>?InX9J z7(0`+By4@S8II=1zURy9pn0dT%}xy1pvtHMHsM^~Fzg9tjP(6@CEINoNIqtP91CJ% zX0P&mg#y>7GC0rn#Q*O5;V*F6?Bief;+Nh5|KYT(^d00`1HOPn+6k4Z%$|5FTaBzI z9XGARc^uARK4|$=ZEsf3c-`fm7+cUvtT2n3!9O!X8He}LKBfUN3<+V7Kh@Ugq-nRP zmBR$TbD+(^nY~y#mYU1WRnl~EofVv3TWd*e%=BHqyG)zR-1f&)PV<>F9ouVkG=N+w&S|%Ja6~?^X|L%{kcz)Wm$6UzSl}32RZR>WrWLki8^IVvYiRp zEoz3^Vz;te*AF%>zI#v4Mc5CaaF;DHPTl7KVG6i#r!FkuKdfRY$+m`sg#D$Hc2 z7*^~CFn?z7unc2J!29|B>&ceY@{{l4a#R`&s4Jx4X|dea`RyIp_ELox7Nr+Ws!V zmv>nT4ICsBW=`qog!b{>)>@49?;)5qnsU;(1HOR>f;|+UkF+;0yOa)zo!$4##k9KT z+H!`4g*{Ny0xH?%Jdg1s^pQB|1dD{LCr)XvgbCS>`bkm0;mhEs7v#(9i3g;sR*mj%jY>xAoNxIPkxR&Het=RhZvujg==>jvTpqeU zUq;A^(5X8bx6@BWsuc@C2sEY;vUsH62Dnb zwXG;`{rJ?R4c+46#7%ToZY^>8H))F0iPKlg@i8VpTl*bhh|K0cX?f3fv59aw#)-2PudU=aQed#fR%Bn8|jySa$thY^K^UkugFZ-GLnH9M(;&(*dLL{@SnxF5cnnFDPrTS z1F?I2G(Oq}9A*}_GqX_UApHScj;Sj|FLw8D9N8aRChG@}qz9erJ(5QrZwwqO0BTdO zdqYf)fA$d;t|Wg#3#m2wGERJ&!e@kyfMmR?WoDUkvumeNAP@e{vW(LMx3*pnlxg}P zpGMm23Uovt&Afd}o-1HvwKk?c+=YNvU>wb7vKpp;hMx3VEcyl4IMn+QjWKBz-7PodlhW5BTWq{92G!BAzPy!2iPs z7WDyGdw|3*8g|*7u2&i$>3^Eg0dB(WBz0EK7Bvj>Z5(>7KRE9wIsYc5@Jt1 z&2AEQGab=~2>{jutk!%ed-YMY(dZ{TleidoYy(g1fSajqX|b~06^uIT>)AwpxyHJ* z_L+xVULW9;{<{C2!6k`LnoGZR#cmQYJN-&Jyg69hC@<3?C@J$)?)WbxaujgxYc{RC zRwHENT<~6y2($CIrGmTZ&FSZXw@u5GFI2Gvx{#m_pxhW=`}LHvUkATF-Xjc>sx0d% zQ#VBysB460w-UPH_0x$fusDXs^& zKF0N0u8(kiCD(_!zKrYpxn9ThA+FbReSqsBuFpoAN%nPo(D+8KPjh`0*9%;~j_a4W z9_Gr#e0&qvC%InD^*q;CbA61fyqh24`Wmheb4|FupQ{|4AL2UZ`T*AnSEay^8}u_= zZ{P|6jR#yWa9!s5C9VW6E3nIasL0rc6ICB{!F7G5e#7!fFVK5UJz?6Lr603@P)&bh zrQ3?)PP;SApDwO+c+@62Lo3B>x@CzRNk-MTERhwWm4f73mT(#8V08VOu4&~TgXn#Q zZ_Fz^32&$db)T@G?Wxb&Cw|&0+c(Y^RX*#hQ2RIRXFOHgs(j39+gD`D-GZ+>Ro-P! z;nY_8-S!jakDa76(ctLj>4I)jh?4LWcOmFOvV^YDy5uBS=8%W;8d3E|42&` zj>pdhzwhUF!h%)T2`(%YJuo3gxQu_<%U-^(cxlv~_V1E8>i80=gbJYQZS-LzafTI= ziL-z6L+tN*aaPE&EaQj?3}p!kWEZoPaYqQ3?2xLF?9j5t0xfq^Eghz;hiE;ITik;> zh)R=|<5>1pe3W5BY;$1Kib36(T1Yf|h;HMdnTPI)E2R8rZ%VF0u1yvh33F%W zf^R^(Ey_FHpW8)pt@M|F*kyClYS0r<>ZxTi^;^+&^)7zn4e!2~Es+Uow`cjFcB2!s zRBUJn+S={ZAUZC3n~m|5EfCr;I_k03ad@F$$Ql33Tu;rQ%!g}9PYm0BTx5!VLpV;X z-#2NHv6LRP(CfHidXyW%7@sg*Bm#b8qUZ*0eJ@_XIoy4To8RQniU*oz&ms;spp#O!}KlJeVbMN}D`yU{02~C8zI2(tzkE5Bx z`_EPGzf!q>H|wQg`Nu2wpR3$|rE>pnNTyW3a{oE*)32}`9*3pGD;iRCq$OwRhd#J) zqq5U{#R`*?4$=5bud z`L2JWKD-cL`N|df%Hw$I$LUkSSiakX*a z(bHJvnsVP~@ppaqwLuaLv{>Ur9nqbugQ=7kc9nfD3Q3V5rjZLq`r01|WwII{dBxQ}B(Ud-lhqe3J z;ioN2$nyQjKOQA(GGDbShF!iU2$^+leaCWY$yS~ew({>$W8w{7R!-xiOpjuw1#b1~ z!8Of<9(8A6v_^kw%UBwTp8+r-U_Z?-!nu_#xAJ$9qkOMGs!=MgAGEj9XM_ni(}J8C z^rU02?Pr`O8pgO7#&Zl~tYI)C?lApH6HS_Kn+!I_+LE*pXGEwOx z>?k@vBVWs7!F7?PbO$VnLQ_X^h6C#%`)8Z@7=VG7G@?(be72awkAj0lx2&6-P|&I` z45-{cZ7#O!LM7k+V3`x-+x7V8c>acL`Q-NYvldb_`AxkXfk z%AWsJrR-<4Yv;;-R%KUY?vk!;gLn+x8?3HdYoNG82#i1wd?FlPzif!Ra_A%9WjXAnN+ON9TWh@CHYTFDn! z_SR31EBT`RL{M0si#?<T_=;qZQuN1&5FKTV%;x#8CZh={;3$s9$J7-6umoNeO#Ap;%RK(%|L zUg-KX5*y25rF|4;5ddY42!yqWlVHr2qRl|}*yfYZM1~PrCA7q$5y#!OsNv@`t-CC{ zvjF~!KRQZYt$q-k{Tt&i#Hcd&^Nak101^%?{2j(I5>nVZ4OEm9edPT<#bU44 zz~!lGoRJGZ+Z)U^q1z2a6NG@dMw@`dETk+wO5kGZ<}$Lea=RjB=#7nS-H zP>X?AY-H{jBukrb1;MX;=VwGU-g>A3xsn{YFuJt z_cMREW10S>k%;Z~(I4B4i@t#z;YS_JEY6w4BMYmbn+IqY2vFN7W#O)5MQhj%D$@}l zv#&yOFwh5?mefm{`tlELrhE>@_hp-zN8ED^j&wr)Kq?_AQv(oHF)wy=ML!pY3j66fNHe#8VQCz; zWL9HgWGX|ma-Rxcwz_y1JMsj{U^sg*n6s)mQXL`3>MPr~Ww!+L@JID6s6=&YjefI} z^|fLi{@5kd`Q#9EW25BjJb#xlVi=z>WQg9j^wU;3Khd51-NyqZLBw~w)71k6mfcP)bh~Xk(70=v zduI}F+-a?_&E+1b1@a%=X?u7kPe2(AUYaB6nSwI_MI3TBPp>SjN0aD6h+oz_eKif>%cH`LET+K~hAb;a8s`M@Z-PCa;;rL%CAew&9c8~v)Y zsnaj%3mQ3qK`flsxA6EGkO4@=2~<-7K|^eBF93sHT+j;uhjF9ZFYA_dt26HQY27jf z^0$BL-r5Ff?4Ld3ie$Hc;fi$p+h^U|?DnhNs)HbM!hFJQAmcfwt$9#+IPING-vmXl z9FQ#Pz3F_-?**nmV9c-dVAA1^6K1V~Bxq1~Rpfg==ucV!lC}r#iySD5{0c?vKm>}I z_p~s=sT-V9X`8%c`psJV|0rq)98lC0pm={{(n?!ee8Pvy9Hp<(1ZX3x^AjH;j9u8$ z>nx%p|2_QAooL}c=s7aaWoc`C0pg=P!3zNHv$Iv$Ew+;ZNzNv)EMW?XGbUX{inK;Q zV^29 oeZ#K0!G(;_0w56t+mb5jfVlGFGXjOnKQPpt^YD^wd8(tK_8tS**NdhV%r zK+oy9k-p>o<>>l->A5H0f#>PPHy-p2g+~LmV`EO{+m;8Z93VKgfRQO0AnDvQoU}n4 z^nUJKXI;+d+}@Kuw{SP9{(9;@=~xss(3NG>MP-V$n6PZP2pe3(vb8X*E|~+Pvn*c| zgz{Yb?n&nWiLp3cEa@;?$KK@37u>7=wteajUU5hjwAoAhXL+5STgOSK{{XLx-bt+U zw>!VO{8KnoW8f{G#qBidoRzaTb32x-(DJ=>2pPAJ@(pTfEjh16;oe!xHXW6!bkZSo zll07SL=#g1ClOI4?Qst|qGz%BnhrnUb7~ zKI(o40`D*ZXqr37p9UaOf*3o#7ipVeI98ZVo7G|JZs1qMPl)Ihe9A-#4pZx+KZHBd zL+hj8p;Y=*dwujie&BFA{Kc!{>&Og_yXgQZ9^ELQc)lfX(*eF$hY~+2l@L5IdoRjNBK)F9CIS32S3xZg$(_2oZHy;CS ze}5gtWs}H$`quTdcPGyVJb*BUAO?{s62Ssk7TYkCJ+?bwPrwctCz+J8CcTny#!P#E z^78RPkuhZv$I9IF9qS^M;MUSq4ymvQ-y`Lwlu)))$;AL79$^3^a{(N7IQb3901CK) zB$C1zj*z6|0O2?h4$?%vi38UAOgoX6pQ|ag!U^J9m&{9V2SCk(G0egZ}hrZqPcNejL5Y7mttk$7cYxDzB zA9T+dp0AT+F`<-lgd}?9*`9o^wBx7Mmj&(PB~&=~ReO$K9XGF|U#J&0GMsu@;=nH+ zqd+KVTBVyS5>q=AVCP3_r%Q~zC81c_AS01|W0ZYk_nqW)CH-~!zpU$U)S(9QWvx-X z?(Ss{)*!e{N2K`Bx85CkCN?BL_>uSvXhsoE7ng5Z>8JOHg_#lZjF8qgMk79WR1r*d zj2Ta#K+ot{IhuL0&6O`9#MGSsm?~ghKcQt+dLVCYeG9w$NujE1?%I07`Z?=~T05uq z(uV$yFsIJz8Hht<*t2~+d%|k6^3G}}0zT>9)cP3=*)Oovq2K?C-%lY7V|sbG^=Zve zdg&8w8CIMv%e5PA2UB>F5|fi>1QwSn|RUNfxkF95JyKW;V;&WT{M5DnfCn zY6+^6KdQb@@uIinw#t{~M#hv0C&6mlMf*6+>XdDrgWrt=)oJ7c9Le&ihBNsloJTE= z7o$s37NJh^W(1miNBaP|%Zerx{tF-XGp@d~lSQ}g7s!BWu5l`qAXJM$kWnpHX^z*H zT-W2@_+Ebi9!|}iUzS1b3(f>0^A5!6N`B}k^P|cPBaFp{O%k;9i%X6$P2K_;`kQal zP>vZDan`9Fk39WWp_K6Pf+Z>uLcyb(vzoB0+1P=$n7eurB1SEXko?n{ECxcv(XJ?s zwEQJIb=hMS0w~PW^PjO4*(OLRz(%l8-T~$0^E^G-g&?VXX*u1EZJ%T2Wj2S&F!PMZ zjAZgIFKQgis9#32EHP^|ZJF4u6x)`Y=-7c28DruQrg$Z3N}bv8@-KsH3&+9 zI@GRsAO;k)DSRM2S%8+>Bg(<)?;hIm54yv#9(@w)j+Y`k2#?J|wsWPEErs08%QDo| zm6buSW&e7;UQ4t~Q;8Nls0e$IxT+xCKZeM)(hN%|OdMD`l79CCr0C+gS^8%8=nY}z zu9;*NLuY09JqMy26eTspY$b}Juv?!pyA=)nK*WXSq&(VqG5;#6t zy+{5Kn!BIZYsiw^-WVTirwG8saJZ@Ui}7&sb*{)06tM#bcO_)5!8BlE;FAlm8gaPw z&*NpT>5~*Qb1`j+szuoDp~EQAk$~VDvOCepfL#6Y2|7I-x^H|^-5|ADGFhJ_di`kv zhh>>S3d$5AfMU__8{a6yeh=R8SEpJn5h$;t2pJCaQ!|h+Kt-?O#v~8-=UrxAIEsG+ zNJvWz6@>CiF1IOkX169i2a-gW8?1wqgZljn_HejdpIL*+Rd*oqqGP8NpJGhiIYe^#Ckw+3cA`P+%xPi(FD+RrK9{jrE~A;0~N(ugFV(UAY}aT?*LI&@sr zlhMO9$=Le53fX9EIr3Www*013kcB8AAd5xF;u=xHO4g((Atwu!4#;8=vKVB|!bBk@ zU}EKzAf&Udu**?`pKK+C ztfxgQqm+>WfJ~A(zb~C3{_Z-A`e=qF4C z>leb6rnG%L2%($b2)h2pK{vku5LOU!7 zI=um?^N}&hDyRo>uyV{u`D3_{&+i<}J3L18yx`1uX~fs5Hq+7{%pVyn*3 zb#?Y@kChdjV=RdPr1ddYG8UeG0rX_aCqDuRS{zyuY9|^T=ZvwA;y?s=vbJ$t%s=E& z?>eU&KID69IYFTX?Bo-8kA7Tt`Yj@e@$>z#B2W;Q!29ZEjgfM z4sa|y<}^ICyyFa0y=*8j{Gc{rG#z>%ny|%?G6`TVu1z{t4|x3L2n!hqoNJ?_{_^)% zwVpU`Gn6(vrRf@n{HW9g;!`)$>(3Yz&9CYdt6~=fQ%bU{Dq3V6g=&$A>>&g3hbhpxJ>< z2AgN2fO2kX9b|nW!(f$O1mwumi%}Kyg7@Y1xB-9~M;%5wko4OitDH6tA^@Nbt*#1% zo-!smP3Vxw?x~F$s!%SCj4HG-E2`kSX{s=CbX4J*YG+gt4}Y+ikK9;+BRH2(F=~H5 zP+$YHmTNSI)&`^x*Vr~?4h0(@JR*T4b`cZ;4q^2|P!K0Eq#Oz@#~Gw)qK2TrB1X2w z<9Q>}exf=wgE!RV6mPUL-k`37f@>=04c~Hl&P~$Oz3VJDN@{?ThVerK@~`M<{Os16 z)aZMup_O_hoR=C#6-ft(bm#|CL+j|hw^22x4B%v+3B`pV=Sjl`eF2&&iwkXT&V$En zSz+*yUf^S%BG4c#&LWCZqZB7f9VuLPhLFSi)?@8Xhwa) z{#QB1hW+VmMQK9(xezoaf&EQs0xdCyRHX4Zi@R@Q)iEb^4!@(ol=LGTE84U-E&X07 zB4_nWyUgZWWY#dIAd-WwMt@feHj=mo2vU+>h{hNm%Dx!O!sK_xh^%2?O2I&sz&K}I z($VrDLq?f%5R#g!Noous)6v+rl0)J8N<2@d z4|+|lXunjJE=Kao3jvswtpylk3+79Vx}=|1H^~m!1gG0*um)zys(61|R=1!Y?6i7W zjR96GWip~rds9SFp1epfB3=p!B!eVvzipK;I36oFow=409hrcR9Og|(nM5j2??l%o zs?1QMRL&AwV`!tPa9Ke1L6T)nh2Izja+3^KTC?6FSc3g(M$dulxI#e8619#cA_+BE zqAK*V(Yxh|%G6DgmR6bsqF7?gmaBpXQxt~W>hh7}uIj||MU7lGb};g)FyO?Zrja{g za0N%sE+lqDhwUuZE(5jf5Q(_HB05i593#_tLRH!Y=p_!kvc2h*d&A=LFSR*$C8dWZ zF}t=Cj6oykZdUo^^x|dcq;qD>bS2@!dXw=FNepo3Vjb<2_IAm+{&%!d!vYPC;a&4p z*KPmgx>ifHA_=$Pf}$N{69c7MK?UlcBs?Iil|*-?sChmV-F1NZl~@GgWj`JRvo)p3 z1nq2=jZ3Amty`7Br2%8HB?07BiKJApDx--dtjyf9Se4-ensd6Z>7@9_}wMRbPN|LLaUQ$ms9QSS7xN!%~tSL}m$LDrfTo=9q&QVz`5?F;*c~`~xe9vk1Vm{SmnO4in;r?m(3@tr zO7Qixdy%hUUB)l!LrG+dWqhEEkh(ITi^pW}(4@3+Y#0o@y$E=I6Dqd?&wO-kKDTfs zK6liB$!34LDrbQgethnOT|RjImHc3j55BJWpy(RfL6LWu<@Zwyt6$VP6`%hecM?Dt z_sORBSZkq}{UU0oeDj6bt`=rlHw{t0;Po)q(!#9m<7BL~kn38e6OMz_5WoGBY-(N? ziUHQ{E0c?uRAjgnGev^cI{u31p4}7qXjeO9iT6yS*vH0uc)-kZefZ;TznqIBZ!ep4 zF;jEKOxLDp^cA;Kg+TkM-6Wf`J?*A!T5dz8EihHXm}cf|vo$Oco2$7Q9vB8rSp}`S zYo3->U>J(HiPBy+LqkMvVuof>B^UfYD6=YwRi==BhQ?fluU2Mg>6S-b2BtrE@o(avvGz-UcAe1XzPPpZ-(|=G0O^`2Cvu>N87ZOHc64d z8LyGS(w>OJ-J)C0;rO@cRqQyNZbAahTQ9tK9FF!6Ih?N^O}c(zrR`Q0n0nna+#5yr zr4RksZ^MZ#C^oTk`wk4h5*K@Aa?pS%n7=XmYEPMHrriA;l*JgEYq-5K^*fk@+6rW_ z{>q>zP%{P9@q!KOuP?+DRO_$VG~5X!HwXz&m>u>sOGHjAZVQMf4jYsM8`XJFwgtra zGHfu=5F0$tHp2X>pRHXOTG$Kvc%S+3;nr*2h5*6^XDiSn536&1j>H>%#$4t2&C|w0 z=e3hYGk+&9aVWlBZJZC<;CI+YsYKSmZ9xMktP{jH=AEz%ZS^Ix2L8L?^&6}QK?CQj z4Fn~!2ENrbzzp$Fe2xeS;J}f5c^5{-7^aG3P5e(m6N*p-3_%n8&cR?!ghjF@-V!vy z;UDS+IYskctW}x_i)2mwZ$T3rZ>?SgP4K(ii?B%6#Otj$NYv817z%cc&!vsfr=0LDWmxdx)6W<=Z|ER-6(1Z(?X(*C4aXNUU!auKvV-4YXgLF2gI$Juo%t!cxOjem^8^i`Vx>8jy6nKlxd?P zFWwWk;-mT}HL$c2$1U0PaMvBo{*1SzQ{bB)Z7Y-`eDZ#mG|5$6DXN~c45d~Q@d?G_ z_gktTJT0|xZP12gg0eOeYok+XBY0YBnusT?V404ArMJ zvVob?1`f=Wo_ff9q&0`I78Kad90jmwL#T&CYR1I=&Wj^n))h3m!<3S5&B#uX`G@wc z4D#hKdMFevJ5)3^?a)&H_A{Exgx{TOHhgX~X2WM^n+>jwS!P4lK!e%fJ5km8fnkv~ z&|o(B9#k6$%!aIiCQ;zKP}TXNWsx<}WH$ItRGSFRhOCJuv%&YGs`Ep$A#0+^Z1BCP zHW7+}tceD*!FQsn_1|nPWp+W@0~Y8JKQJ3gZOkOfmXWJyUonkhD>^(3j z(h9rUL)xybYngvt^?L}pOzOW)pWQ2Hm_;GJuH3)cuh~C;ljS!zWA^;UY_rF;G0W`9 z8fXw@z7tieB`|xk1{%yB--Bucf!UKa&}8=bE>vxn(Co>YXfk_zC#p?^W>3~cliA~Y zF-w$XO*EN3z8BRdLbE4pqQUI(ov2zZf!UKa&|voXE>s%`%$}@)2D8WaplY=QW>3~Y zgW2PIP;DSEd$IYgwTaN|$(m>~dwefunLSw(O=iz;ZqDqX znYm_=E zo-^hb^XjN2tLN2GGHGuRz1D))Cp|sIr|s3zn~6#td$%y+?URfDOzt4C~co6uc&q69G+=<@-RW_1W~LL3Su2v zR9TYVs6!-VThg!d5qVs>UWg{7ap$Pv5uHGnr+w?#qIIN$2W>)1MnY{%Z`A>X=oK~2 z(IX!AlTq;SJlPhLA(hGhw6Y;sn0t%-6!8;cunQX#`mR*+KxHBLL}IP^a&hqD&HhCk zeCA>IZ8cYP=t49+--}ihKGC_M4O)t9r7p{U^y-Kt)CrfKaHqI@z9*RRNGUP6#OfY+ z<4_}Z*LmN^HHR<d3Xa%ePAY>m+NHl%@y6RwpY*;zN16ht=-2uHEa@?y9{qeDG$U zd$V7|$56*w7!AU1tH_!(f z+phn-n;ju+y0DFNV?h#RHV^$9J=rujdN^o--{ls};t8uySv%*0>in)&XKoZ$pPCn4 z2&(hDTAi6uSiNRe)R%vNA3qdOjNkloAcj%{({rMSg9i9rZ9uc4um{sKqVqum{H``2 zJ11;l+QzvMG{Em_1DX+q4NT95x&a7~90dp<0dq?Wt53~^9uBJWyITD%<*!f8gw6-m z`CYC4ZRP4y^Pmesb$(Z?GZP9sUo#6bcO#Gg#jw8N|KSSorsqHp2MzE$=zuk#Sy0%6 z=@}3%lQ{+QyV}4bl?JBgKNoxhX5(@*iQ!?;q-B!O&CD_JgPk2|;6>SsS{gWNKpad{ zgRPM`YWSxy)DR!lzmi*-D5&CA_LEaHo`td^Y89*7Xi&5-8o&?rbJ8wRcS9u2ZR{dC=SKI}RTLDs2P~ZXPCK zyACR$OPOm}aQ5ZK9ECxUOW^LNBA>5Lg}!3P(6u;2gauUv^AIPXSq~96lSLk3uJEXZ z{ZFWSi)n*`aqc4JxndDGO{MbKg(zTZl}p=W9kGF19>-{$2A3pYKC4`m%HqINlo=p7 z?Vl=1C}e^Ye%23l&3BUCsgp7po4dw=4t0GXEWYmXqU(h90GluG8sM|8ktu)Mb*(Ri zT8x^98+5(f$Zt)dA3 znkkro#x6k_%dz3UjOCw+n25t*QUGmfdOdrT;sx=@c} zbZHHa$0AOskn@_%DfGJs#Po|W(|4Yn42)xJfxv#jD1ZZ?F^^Gfk5&;p=PdGKaU}>x^jnG4XQEU59h3U00tu35C@H(Ezir#C2AAS-aL*rOdMIkyTL5;_H4r zU^x!jaBCRvXUxM0^%TJNE6l^=t=v15#TJI0<~my!v$DjuZtut?zlD3ps$Wa6>xpNT zMvNnEj8|FeLlx?&j;S-5f|MB`QwAHPtT&nBMDubcx>>g?z4x+tVZzxZ^-`Tfj>N7` zY!5OfX3;`VnTwD@JlB9fzo4Wzgd>m~Nzx^a_&nX|Z7AVc>P!i*ZRoI6xC9Zv&jcbV za?l@0h+H5Jv?y14Yyy!Zk?J0E8l2_0;f&;U7AaY}Brytk%+vN6zCz$3a+VS#|Arzt ztCj!meH$5dka|6|+uaA8<)La#uQ5TK4Kl{+Iou+F&r4vatW6zmv2eWt}mh zoJSM0m^yGC`rUJ$(%_6O4T;8xwOg`?;u71D7D`Dg;2G97jj}!44JH7v{uL{PR3J&U z7V^3pH+BM8$f;S$$TV)&I+e;^7I8t%;ka3=rP91N{R3; zvBZq0;dQ1gKt8C3qfBG;5u+Htj?oaKV!KQ^DzC?wqcbx?)eea1$O@f#F$$yAQ6-Ev z{aEKYv3cki4XUg%n#2huW;2??_h&PjwkI4_u9O*#`G5wus1IvMG{ZqLQq#jicEE;} z$Hq~M`e>=NJ?1QE8`6@OkX1%=nn6Qi=c<8|81n!oZF*g1w4EUt;k{5;Vtuknj|ofI z5)H47(H7V-bUYSMc6e-u$2cW@M{M|+Paz4PACHx6WHV7&I27Zd0{wgr7VLX{hIDp@ zGLIzkQCG`U!pd7NM82(gl^&aHAILVIevEEpA>13qOmxwYxoySK>1GsD0+G)YZz0gy zcCNag;@L8nCMJdH6})yLA2{s{X**!a=4e{99QT7c+NxZ^BaYBy;aQ|tU6%H9v{kn> zg56U;5nIO6JH_${)nh2PI)#(@A!_W&0D&5z^PC!sDVnHp<`ivV))ejIE71};5LuyN zG+JWj97EW!HCe=RT+Hl9CTuLS;JhM0xD^WhTH+bZ>1;^1&H`JN7J*Eovp-aMY)pvF zR`*y|AldCO+}s35jy%&79Idm+c_-kqaDoHW((NK&bgCP~_{r6SE>XGl^lp&`*0114QW zGx#+MCrND^0WMU>$IG^j;AH6t4dJ#CIHxw>MpywJD;u2Z9&96woUUBavQ%8747G%Q z3OZpcq3-n}&1-Du?zkRQY8DW8q~s7WGvws!h|tziG>tI!@y= zh|=+>tv%%L^hfJ@mY8pLqd1v6F(^TCiEG%s@8Vt$u|=dRZEJhf(1!T6AUy)d4IN z%Q2+djcJ<$#gh9Td0uFI(eK=(Z7c#?Pv+#(lj|&D567)!7bo?e#;1XI>LX9J8;)V$ z8=5K6VaJIrsAS0+UY35-o_1?PFav8gexTTg_uQFaKD5N#!UtzYuI&jg0HOcqJr914u9bAhpt z3yc;=mz%zH0>cST6MFKxsezCa7@AEK0>e?vZw;c6CMSMLEV~tU#5>Cyg@9cJfhgsgmzr{bRT?X8L$Wi7*~S-mXLB0XT{M%;l&+RbIID)g zJ(Mm6Lc>%HpxOku;kAUZObDtMD?nYKB?z%4<6*Ue?qZf6jrZshYuCfg+-y4`7;OAT z&fs3228|x?aVE&>G!S%5y7o<^W-&vi3!E@0t=LN-RoNc_QZS_Ef3|72T87k6b%7M* z?JThdQwu;_a8v`N;8gmzsCbhc{U!1+MQZ4uer))yKE5wmW7O)l9MWLCG&+mE*I!M` z=#RS1h6|)1--aO%l#be{sM?sglHJg9V=LAe7T*e$)Yyt|43{x62F|vQFd;N;$IK?Q zmCHhCwmW952wjRTcRNyB$k`HOB!VB!vV&NhJqJWeLpE!!0op5qU#Ya=#x}pIkMB!% zd$2EA?_`vA%=r4PB_~VcvMlW)I}uAxmLl5M z$E$R7C?@F2JxF?W+-)DFP=-mFs7}BlJ|+W)OA{Jvyg|t9k%(nDx?qf#q@H2bk3axX z4anBew<6QMRN8Z#jkjD{SQTr*`NAp=j4%}@Yr$H>5^Jrp79!Td#I0Mm9vD_jjjd%^ zU50$r7|dsUT3~e#A2+N52*+ArRsNRKSY4itRpt}3v1$^8HMGt#+2M5LW|vLM zP72>3Fl{3-j5_ncX}LNh!2pBQo2mt1SgSBaA<2L_Qndr*83*G#8fw@V0e%C~P{V5h zMt;NqZrTpm0n8Q$OhpetF{~(w(H0vhMgnUgS%qR)nQ9;jqZrz0W+k&7r*+BSEJb_# zp2r&IIeQ+O!ZEMg%>`q95Bj3R)JDeow1OESI4TNekqV2Nvh9^5Lp?B+(=Q!kfiAQO z-YQS`*i$SWO#wC4WADe-`l>?Rs~I?SdXI9oUIm!(P%V95ve&DbL7`?!7F=1)jJ%pL zRaR~6XmT|&KsqaE%vo@RbjyNMW0?hqVv#z=g4>rF54i=00W9&8shI(suc-oBY_{yw z{>g0F=_4mh&DhjxF;g?3M<~%YmP3vvhi++7b8?58C4PY#n`F&WHVB+Ltzr|IiatRC zuQn^2(OhL?9AcY)P0D75wIyXU)7nD0YHpP;NuWqPpg@TS6q}t0UI7n%lhd$QIkaBV zEnXK-YYE_BHbSYisc5Hi;EGC9=wg9~3Bc5gLgkn)M&(G$W%Q(}XQ6V?#mxf5d^nl~ z2;kAC*$#LzSN33w)l3z)|CTLiZB^>2RX?JwChBqOXEaa!Fx#1@e$a1YmdV6rSNW;T zuf__HYo{&Z(+Pc($l^Suq;nen(qXp9s5p%{$v$bJfyN!pVo)$FVwkhRNoEW1p+&^8 zqP=*A?SjJ7gj^%Rc81l6d<|^psJVicE+!pK`fx;0pCesZ2UpiQ08X@}rLP!Hy1%aipLI{?uf=HmTg1};c@0`T6bYtkus$dR8 z5**#4LU&dLz~a8p^A$2lL!as;jVvka(?anH&RWzU>MCS(tSyhtOPXx3k~B12Pc*Hp zCrFyCf=5_=g&7E|uP_5)^%Z6ytiHkwgw9Z-d!FEf|eMr0c+?Q4G3aq|Dh|H{l7fSUNLS$wYya2AR5F#_HAnt1%Lx{|*g1E1- zLWs<)f{@u*Aw*_YLCn`!LC7?2?Vn`t&*7mztAfHhtiobZVR2Rk&9SV)pr|mIRY4Ol zt1v7o3};o)o{&{oDk?0^s-TITRah=6EYGU2oK;vUDy+<^!2X>3!fH`rbykH{Dum*% z#8mGw8!^so9FmZnPVr4)?dx>P>7NG_iojY$ZX{}n8y_PknwW9c0l8)eN-Z$ltspW2 z843Oy%9)VvI&%<{l(ESUB-$^t1G6vEP%CSw$&pVz3qM$2PV8%+(!v3gF8kDQ_%S;H zc(b60ZMENjFz;ABH%nWTJ62y#9orOWB~PqD47&NCl`y%2ptX+0S;y*8Fg<|!a(UOw zsQRO>tg?6p)hba(Mzy^Ps+iV5jP)8QMAfWv4pq<^1D#ba9O$fa8mIvdb8A*P%D8e^ zS+mMXyyv9k3f6O}#JYVLo2t27#-)8p8GErXgHkZW_Y%<)$HA zU(P`o3c!4wHQs3e*SD90woK}u?#k$iXOKGH0u=&xBBA~>A^2yN3&B6DTnPSI>$&zR@;WzUabbNx?-lV4wt^fhjmf!OBJ0>_ zp^Ww4ibR;$2xnLfjYXe}j!d=m7`2b)s7Jo3^P*npVqpDuL{KHjMG*n%fGb4M)nn2y z*F7FUqR?q9awH3PPN&vmNvkrQD%TVwI)>9^xkf&5*Y8>4F2`hmMT43|8#t_J%Mssx zt0bhbO<3HpzvgZx9Sy4Bz(v|9@_FSPXr5c8cgBJEDNMPcG2rQ>UJe)4oO7N7{q~3X zOiq^6S0bg=y{<_Nn}cLG7WSwvvyaoEubax+XInz0(tb;*n%zs?WT-+53p-hMue_Ts zLlr&4wRQ`4(UthvpK? za)OE1Q3>TBB|P!i(^5__r!&|fD;2nuq+m`&nedexs=DYz^6(>lB?U7*F?4!@NFO%M zCX%`=E2irRETlEPN?(UWlslle9WVr?Kv05GAQBo%holRFv!n-y&Wnn`pweT%(_Jm? zT{qAySRUEteV?$RYm?BJiMCr~z)RQ}!Ub^MD&Tf>o)SW)#9$l2$># z6spMLKqG;n?ZCi$2Zr_>FnD9CI$jTksuAG9P%Z7j!2V$XhBhWd28Jjh!w_JggaZQ) zs$kHA91K8B>FH+_GBA`N5TlG=au5LXZDvV6)0l^cv!ADIK&Bhw0v+CAv=16f+IU#z zXQ-@Fz#EB++9Ixh)e{CfqCw*CK;P@I3?>~cGK;bxAzzg$VxtNl);<&A%x&5h+zu1x z`*)6m^uUqM@bfQI7BUkO%Wx4kC8n$_Ob%&~tXNP7d+H!8nK21z1*c>Mb2!Ng0g;tZ zgO^;Qv32q^L(5K9K&hq2o*SyA?Xm18fahdIP3ELF;GhIdf}@YZqbnoTgPck5z{go; zRv|AcY)+*tWoA2Lg7&;z#E(-HAxCei0axtQhW$aQowswRFr7QK`$J z?dX({1<~me>)rfdidTssSa#D|?|;m4imVEwY!?uvdErU%3URLTPYUu zY}rV2K|ydy7PUB%ozG7i{+=A|VB(l{ToyxN6f}f=_asM`o(y!(&w&Q&-UD=WT$qBc*z}oBL5CKv z3{DTc=trlk7qg9lAMGd|ovmcAf^XKfb>1NaF|rJG_l(I;HICayA&Iy9WnMPDu;kqq zIetD9vyuSIgw>;tWvRoOvW0E7Z2(%;^9SIJw8CvBetDxnk9FK}W&eQ3vGPu>VKAY* zZ3ExjdAgnG%2L->1i8g}kl`uFQm4JMCHFnOwHzDf zZ&YNdTO>V~qU{FbQkFXPk*De<&N1zw_6R{Mt&na+{kUkCW&MpEagQy6;kVvuj5PdfDtkxr|2N0g{bASo-}VPOx!L3y1$YmaRZ())zQ z@_<}-d@`2fN$eBV?GVNeVN?jiB_#Xzmcq`93Y#@7D(wNO2{dm|Vgu4gSxSUcq(m@T zvfIlN<%+SKc4C_GUN2dU0CCRKDm&8*GWOW?!CY`qE&lduy=^DE{Ovy7E+=dL)+T6v zJFVi4g}B-6#0?6nDhMQQD&X27CxlA;BynT=?A5PG+z`E+ zO_8pVV78nUa3rj$b&_?p@0pv)f@f~{)iUeB@`c3do5UfB!8i&t-KmZi@o6ZNIP6VI zL8bG^NT%Hu(mIw{LmTs~EHNZ$hUg9@)FKRe z95cp+4d$YzschyZt@U;j_})d;JQs6)HIkyDzq%lnOF-Hs^090UrN;)lfrR+Q>O`Th;C;d0D8k2GCqcif6YYJC+x)7X*K!UM!0>{bs+{%x*? zWc}tlB4xu;13K6(tdusW2}=ghQbWTxPOfrTy2`Lb-ZBF#P7pE@iX>ZrwE;^Ywvu7E zz>+v#SPGhR$7Kg$+4um!V)cjB{ELTL;%PnL%@72 z4U;_%O=DR}*arwMMQ;rs=|sEyD$<(cQT#vTJ+zCh%<*m*74KT}w#A#um{rTf<_}@a z+RB+#$<|<2)`ztCG;Xz_WEq%yLYl@2jgPdAvuT1RmQj+!G}c4m&K}#>$X}w45hNL{EN_r5X<2r|9xhlBN_UH# zmub*$&zJK7=|B!PPcd?Z`psSdMxx%>%l&0{Gcn^~DKWk0-mSULQ|}r_Pq8jl(QYEf z=&2+y3VND;oYPbJ)f*@Koru|Q^mO$MdMZRrK~G3+OXAl+Py43n$z}4Zp(p4lQv}z9 ziXdBNtP$X24QV`kYY{J>+0apj=i>k>+!%$*I-M;bvfcZ)Ypx`pN>!e=U!-e@&!V`#CW7 z5%;f&@&J1MoLf!n6vj1qRQziqMa9qgnnKg8S{~~DnnIl&abvNtG2JG zwr_s5eOa~rMYa9&tL@LKU0YPUc7C;Mvuf8B)vlXg?Yj94{7+45$C=ub;m0&U8*Dui zQIr!>FcY;ogVst-UE7i+@w%)#R93o6F3VOLg{=k7*`=8tqrK*rmeR7)D6RRWrK_wox@vxDsVFOrike^gx+W=?}L1!m#0SkbZbX1~fJ7iUuidnPO|1Flc;C0fztwZtcte~~@<2I=A z=*FSA#lkSRODxzT^-0c^p6jl!5p@wnG(d-sb62jpHa(OmmyO^ z#`EU1p!Lfe;fH;u1VpSdC2+|zB_JRB z>8T)7f=-yQ-M%cKk_pjP%#?7wB}zzUI{T4YS9kmO?4;&9!`eZbl_i1ku~nagpe{#3 zSj0f!GXjjU$Pc%aA>k!8dW(PBO4$*Ben+(DvLmcMpX>-BsxcYsawAZLZDU6;!}s{i z2uK5EMlhiu2Em90Ov;Qv=X&Z~o*98H_8P|6dYKUzCkqKVW7LIOhef<-usP8-$cjMM ziL>^jQ#}22PK2;XKDzCZ5h3il&Behcy!ZI)r>Az zk2bpLD2%X(G3Qj~gB`wf6NfF9_29)sxziaBUQDCAJbY=EJ`R^m{Vmf0Y-y9cmYdye zt4s%AmqZ8NXsFL~5EjXG%J#@|5O$qyBJ;klWN`?KymUs#`u8@?ZUDXtMXL3U>D&fk zk>Q`Ly37W_R5aKLU`eEu*#K7VYFe6SHsFZOZI{`A@fUWYe4*xBQZ3wV@tAMp1F}U! z`KKeD877g>UUb#xGzg2BNrmW+Cai}wpm{rHG+>OyoTomYK}ZmiaoaJQL5NBm#p*Ix zgheuJE0aMpwzppH za?o-2iza&kLyNPanXAH_S#u>o9i6Yt1rWkc=7Kzq*n)3g;+YF}2xBLuMLBbUQH1T` z&dywbEZNCiu#>sKCQAOS2s1S`fnwu3c0sO=wnnYAJNj+hN9AKT`eJwZ;c_YiXiljN zJn7Y@GT_}#Dg)B|d@WNMV1$IO5OwjZVG)^NJ82BEtO!>mjX?;0W(##m48kJDunj2; zKI&5#z<5ewz-4|417lKh16U@iofHQ0i2ItRFaX!Z5@CG;gRqDg_9D|4JmJ$9fO#*$ z<^F5t!{*Z$7}<~lpq!>=Cw&1cmK!W-DSu0m4&!T;z95tvILdEE_-{IO!7nwWF6cbZ z)CKgpSQz!OuyYd^1eG?Cw%{XieE{~?zUzLxb5j-s<0XEGMRFp4=O!!&Ds3WN!GE>T z$#xdxif!mpQ@oUbol8wWKnIF#I3JVRlzbp4+n9RbueMMZ{cxJn4g|xIDz$LjrlbQw*~XLu zA8SlGaOJV{LJi%w+mvb`0Mp!P^`PwBGy_4|xk(0svW+PQ-qV<3UV?gaG9M+_HV{H)9)(DJV9BmojMx^s@SE0y2qq~R?8a*6MZ9SK3LW5>%Cg1!^b ze>p?YcLMq^Cp5QnKtCc@0sUO^fPUm-KmE=ipkL>*Y=?mU1q+Sr&kE=di`WLC?dFt1 z+9N{R0YTe=fcFZGB*JnI2)wCM4bi{C0sV}RUF;kLbpich5d%SK^a|*INsWHX1@r^` zj%d#X^mEXTWqEeNzS%GKtEl_f7p+%KIAIG)1Kzc_|QDO<>QpPvg~I^y0RY)OXq(qpp&oy$H}d!M63YrfR4jN@X?V1E*m0vS^RGUoib%JH0G*RetC0{X)uTY7ZU0sVBHfc^k? z(*gZq5fj-aqb+cle4ut@dW6Etm@^OPH|E?10sV}xV9xr0{;)`n;O!C6PuI)LIUT4K z7Rg7KG3V9}=nuPY%(;z6Hyt?4=yLUFqni#*2#XkVP6hPu@a2{a=zlR$?sP!^i)nP1 zhcBxE{jjA?@;G2mv%75-&<}PA==VlLeaL%QB-bh1BcMO*dP6{eSmdQMy6qd#555XT zS|89K7RdwpgQ;k+6HpE4hn2gUmgWKd?QIy)&-e>FQC>dtEvfAo(9baOTlJ!=KEyjL zVkVUj=x;*vb`0oejK!R%KA=A&2+6qZ7|y!?ptYo3Xw90{Slr+uJXo zKSbq4V7nC1587?}p@UhrZ3FrNL?O%T1NtdKK);iNj=Ntp0sRb(fPOFH6&E>Y)?5kb zN9QY`A3|^e{p;hkwB?R<AER5<4$Xu%SXoCzzJ`O(hiJi^9wjSmTD zgO9WaXifm7-E7;j5$TnkOY}G<h9l*;dlI5fr6sY^R?+x_D@YIuh*b_fIilipO&^}n~!Jlmr3N!e!y^dn1L zK>s@D4KJqe(0Rj)Y5Sy|H>?9=SLNrzW{>TJ^mQVw-Fo@rkE(P>3%6YyA%*QU;pJq_ z7uJEZI+0nI3cn+6b~|xX^^)=8rcyr1#mycI97Iq^ut=&T?ZW-foC2rC4W2sn;>ONI zZkfcnMq*hKr!R?vH{$xF!^zXykvXd~=h*|&C-runmrj4yvMF>Ot$TEYqu7Q`JYgfCj zaq4V)J>i`D*xKFa&PHEW$87J;k3^CAHE@!pDU*6SpuZBok2X^Drzs`o->1fVP)2P? zhOJpU-CUb7JMsJI(ywX!J~l__`A`?a85R-pcjEW2X#9Q%end`P{C-%(_;XJDK8&aM zeJ=Ck_l-$+;`foA<(TW`=_BJuD1x&}o6q5^$pSm`IE9`#u>K8EEQ!hS<{TY=6(X9W z%2cN1oKu$A@UQIZw`^Cx$F6>t!{VqLoa73wixt88`2Dbm81@q5_rbiE;Fl1;Z)CF* zzYp?T$?BN7%$lY~J#fE;;`c+j(Gb5M77;By@A&=rdB*S4p<*4>2X)Sk-w!H1kNEws zeb@bX=f>{`I`gG!r^-w!HnK7K!_^gQDCcMv}v zzaKz$%OlX`{h-qG zir?+1OD8^0fvog2R&l${&DAC#RN zzaNyH8^0fvog2R&l${&DAC#RNzt8&grN!?@JMsH$%neymcRM64oiVc$zt3T(Y%^>C z7Ok$e*|g!%s6I>5?4iWky9l#3XzhVbE!!sX+ZV%1{66%l_95_HY%d=B= z8htgU-3N3cW=o~*@e7k|eYv2`1_4e728qg`%r}9}#mZw3f?CKd;qnlIpc=8=!$6>f z13{!+YyP|UZRz!A(&rc-_c;g@z&V*w#6VCQz2f&@QlsB;@%uo(BieKE`*^=xdi?$r zHB6s^ND+2X9l_-B`$z-D@0(B%gW#hBm~cuGX|Vqr#P3JjBz~W9vT&C(MqT`VSVS`v zF@jvWwn6+pUB_M6kFGw#JuH%sE(;Of+VT5g*D=rQ;`hTMTY7ZU@%wb0`27HPxVOzv zY$men%;WcsIk!RlJ|HNVvp#-5ERrL5d&KXDv}xo!9hVgr$w!wl=hlwj54*nI zM>icO%;<9UXrr5sLY`43=_XqFS_a@y2B!7Qu+A(CNyuy_=I??rrl{60l;d!QPojm}qm1%$8@zn@3bS_rD5 z`xR4Ljiyy7@;VM5gK;a_RYcRO4o|~qTDgtUN)S!UHXKoHL}Gyu`JUL06)6vTv_-;x z1?yTIt&$3q<7hGCyz@g5M;lXTV0A2xmbsOW2<|9IxF)@UB>vEaPlsXJwekBqgaHn! zVb(7(!f=PCXYu<+5!#}{Uii+F<5fiJJ5P>B(DUL3p`8|Qz01jxo%sFxlAZW{i6e{m zcXDSF@%xaNqCY*Q)yD7hPA8pI&S;LI!i5cz8d#>8RlEa`#Vs<>=$EB=h)HjN*Fc_c zW+V>+@(t*MSS}?w*d>n@WxXyxHfcSO%UY?lJzgM`5eZ&>^~TBC0d{oBM03v_vS;UwC&62fWU`V!XQ zkA?7e$s4wC{C+4m8shiEBBG_|9lswv&-i^hRIG#gnA5rO`$47W5x@Vn@46rF-1z-q zyqk~T4=O#6`2Cj>kUTo(#_tD^-Fz5#P)Xr%cKZ0zNpgZ=1Yqhek#1``U_7X_`S|^y z(({Pl-$DFLbZmLVdlH))zaLP`=HvH+N}G@04=Qawem|(R`S|^y(&pp$gG!r^-w!Hn zK7K!_^t|Htqf3q7rvt^Vn-8IFir){)UPAo-mG7b-PE-7TFr2yZ`$5@Dh~Izl4BdmY zDSkfy)7<#|pzPeB@SyD6`2C>lCB*OVpsFT*KLF_qhbm86P4W9dALhpI2W98R?+0b) z#_tDZ=f>{`W#`842W98R?+0b)#_tDZ8{_vsu*e!i(z>a|wj?v{^;`L2KVv(|l@*8r$qWcBz z7r1A-Uvy%`L*EI|SLy^PDs=)hlsW;ZOPv6mrA`2{QYWs{eQhU_q7xGp3LtS%_W>kc zq5A+5hjbr6;#Im2AaPjt0VH0n``S+2Ty)~URiU60uho6fi6goXI&q8cgHGJ4`=ArI z=|1ShH|oBo6Y0^75?Q=n<$`|PuKS=L$8;a`b|BQuZiAN z0ONm9p`a7rtoxu7e^2*8C%#4ZK_~u4-3OicR^11k_@8xO+le<9o%ml>DCopnbRTr$ zf7gA`iEq<=(1~^32c0;n`=As5K=-wscx%y#dsHas#A)3Joj9xepcD7%KIp{Tbsu!% z9l8%X@lM^lPDHP7eSHM$>Ovw0T}JM*&s`FCIpi)kyUQ)?LLA))s-AGq-{dae;x2D? zmv3{Ix4O%{!(Wafa{A->aF*oPkvp*S`A&IpBjLv%(c+#8}Dp_JN5^pT*QgSrpeIi&lbox`P075%xn(#~ru?c7pn z=eDAq8NhSwQqO+FUx?wM_`Vz30h>v#OF}*>9hQJ z2iG5nj>O;0^}Srbh3gM;{Z_6IaeXt_$GIZx(ob{!Hm<+I^(5C{0p~A zHB0F&>*L*AZr0fdOX;C?&PG_0u-MCGABV4S8Lf}6=5pKmcprk~!Nv9QHGKc$xF^9+ z>7!f^aD5sl&I$Z&n4cY7M4u zWfW7@`soM~Ih_pd88Y0Vu{&M;;CAThl2G)3^%SJk008gYYyJ4~^9umFU}7#AIH`w- z=|dr~)^qpXjr9G+|Mx%rm+u&NmS}&F{@MMb^_yC)@ylR(3Vth}d~kVvd>sr3z{VZ^ zUxpDm_NZWgd_v`L2-$Ev3IF==Z=a924P)LQ7?R;BIxVsgb(t6kuMrJ#-bf}#_`PuI zbb8&{)Avk9>Se?e)O}7Gs+`|A8Bqg=^uSsC%|tikrk_=u&1aPgJ6^i6QIxwlzTP@T zm7$Gw$XFqxY^)l<+2s0DDOMg@cS=^L)OBLI zxi08VYU_duS9cl}*>|aXkoW_U8=BE|W@5MKSbw{!w@H4xOSkH5Ks<;&k;@c?crZE4 zbOol(kFhHv+?CKneXLuc%?4$(Tn489Sl7s)e+eI3)yD+N%l0ua;DqQj1`sH~-rRYv zlR7{d2IR*WVfnjELenWUgER};bwqwPes=V8IL3XLhq#^z^vlW1?v&nGOHkk~E+%u@ z>CNf0D3CQ2hzvbZY1&#^lrCDpdoCA216mae$RimSiMtO}Z_w9u*fTR>(mlZBY$3fj z{XdiLfps@(YX}R#nHVJvQ`ZoN%qed_Y)9v{WL=--1X{p6qD|H~aY2`;2R z_ul{OpL8~s34%+baNx@lp(csS^i&?L?^#J+!INcyp@|>=-Ai+lMGKf@!~J|uiH&kV z+xPlqEny~C9Z*mzj)Fp^B7%TBZ*9HBA@t1+40zhY^Glc zFHW-EdrHIDcO0-;03lfz$6Yj!Hx_*jAzZM8WXxUxh!VyvDYHuhsMB1vFsv0XbwiT^ z!tIT|hCEjyLF;9*DBPecy66fVq}wMa-4nvriny@@=XJ2^WvEO#k0#wuykjzXz0~%? z-^*c(v*_ffM!yg%VV6j(YY>+$Ejy6QXe`L}fSl}hzEo&iNvYG=%wCuo-z^B9cOMXT z)d|gdbtahBL9H=s(|-4%?4m6x`Mj+K4OO-^G*M{_R9#eavgW3nLq}=qkoOQHfyfEp z$ztH(hUAar2@)0cflP#%E8a7r(@>EN3>9UAMJt2}KBof>>4<4@h)7$&qD+5R(7(HL zpJODE{M!2HC!$GTQc}RihXSyH{e^UOUACwY(ebof!vz9=(|iTN$^mT}l_;EIT@LGE zBnV#{iQ+!emfr78_DS4g-NFdz4}JG2**p4=INu)w3rmOM+jQXNUCsc5KTa|jXfryd zC*AbJ-#uam{(na@^_jDxSx*9{{^*CJwAD@DG(^NN^?}alw<6kk?zuKbBZmZ;fY;RE z=lR@Kni^z=WM2#Iyk_;x#_z<8z=L2%!W+y1`GUYIpx43W>a)<-xo3N_MgxRQOeOQ? ztM+EHU?TteyCw_jerI}WgHi0}C}60cKD3PC27&;G-M^3fWg)BsiWb`U0f1*)09}dg z5;0&&5d$o!9ISTIeC7g&=h{kKGe{Grls0ea8agsn=6YV!9`hC|;H?N{(lYZF{uB8y7O5z!vHek|Pr(!DP+@#lM^d6iw!q4JcwgP39_Xx~bf9 z2o!ajF_(Z+`jnFgiG~YMwgDX@5#y9&3lstOpK)-m5d#Z#9uWE z&+y}9*G}}RY!A${8LEW;wJlU{TGkK z?{oEI$i+SjAvnf&b2hSHF;EOgo7v}|K*IIY?r~o6aluHS7}}gDZ@__0vgkJ zHR4BzL+)WYP}30};3zucImlT}n!o zwewMz8b{N(#*r5lE0f{h+Il2*>s^3iAFBM!N*uQ^*XxAyyrzEs;)nMQ(I;cW*vtXc zs7g}^aNMn}kMY%F;STz>VWjcK3IpMQI}<(m$f36VFmv5=F*zfbmSyf z5_n30cXRp!-!n>fOSHk>WAR@PaU|F>}zVK0mxicle)b$9Li>yp2Y{B@7N?(^4c{WbB| zgZ_HRUl051&HnmYf4#+DZ}Zoq8}7SLwETl7vmal`ems@^_+s|sOWBX#$$nhOetbFm z!GgbQ`A@SS&tyOTBKv`*2elW#oAzgJuFNT8NV1cd^{dO+4xmhc{f6-Ssm;HEP z5ersi!DfvAIebqXb+t>>soNzY0jr8bQ`+a~9Bij8b~+-~v&WoVIOh2nLK(OHUWE=B z?u5v=;uSXL&nHOVKbDJ)BS&>F#kv*5#BthCcu5TW{2Zrz5 zlP(`u7J*g%LYGh~oV!AT#i;GIkSi)<||Q` zeV*YMTSUW2sJFq0Y-Gci0T^|=HF~e8>`w>lqX*eJW+!L#$FCax`QiBG_jR;0GyqiR zJ{kpEYTRjaXuzJ;`efp)nnC&~H`j@(eY>Odlh}GaJ|T^VZKOBw#feFedw$#w{6>6^ zKaUb?K1v_sFVCOA@EpDOMww5C;>WhL^{1cgU58MTy&Kl*{-LWmOeSgo zEiWiB=^CVuF~VJJ@>9<)GRUFj$%1=k7YqyCjof9QyCm*%$X(bXrxmzbSh%k?R)FXIXmvhOya>iFec*oAuq7k1%Z$%S1w z9caxi+#W9M!d=6KUAX;R*buv(%agQo16SD6cHcltB1$_FUl18^l_VB9Ob&`5__?(1 z7-J}!W65$CZ6(9eXTL7l1!w@~qEI(xZZeiLBA;Egv5m*Pp-W4eq5@$Qo-j=vlwigi zy1LCI+D2l&k?F*>?t9&2g^3b>VD;o$I4xOWKP?&FwcMvIt=w>@dk%_q6}#h}u@tkA z4n-0^HCfwu=u6#n!*m@{Ss^^-MC@RzM& z>5R2?8rKRNn~%zDBRz4~GT%pCba|&Ty$!0XxyiB;D6=1eUAU%^(kPN3+F0qfq9~FH zv<4c}{{Pu~7cfh!>dyN;?|aUvQ+4Wcs=Mi1 zb<_L2-9YsPY>`U~NcX0?n+A#S%{cS;d@VLdFGkt>*}iawy$fi zwf5R;t-bahG!rZ;^sem?{}cOUFHPah1WNBPV;5s?&w@guH_NgfBq*k1SylR5`|B$u z64-;<-rsr;Z-CP}-t|MF-`mjSvDsg18t}t_Cu-4AEI$6>zR2`@{X^Z`2fMcq#9Niw z7uZ#w8V%E7F8*66u#dS|U+G^312i4R6p8LuFEUxATUTBYl@;_+LYju0iQiBDG~2TS zRA0jjbct6YUig_W_Xw*H1c0?t=?koWgaF^dJHV+o3i06qJg6)<+7MjH5JV|EsMF9} zP)X2RkUk{U+9PT#eCh%vcMR9EZ1hpcZL_FEt(usHt?rfC;hT0jT za&4djyT$>jBEAz}77&tL%}I z2Q>Lt!?Un@JubencB7T*Fvg+_)sp2PO7MW6^&+Xv$yjCq>I78 z?o*(nxyYeh(_KJ$X&Fen1WX(vp-9Gw7j(>?0dpKYN$zDfvNo8#{(e||w53>mTYQxu zOlPI{X!S15o}QtMdrgs`H?N-1-^*aaXQeZGTi5ez?Cop8=d;qgS>VDOfqrF|co`aq zBB?%_Wj}BM{6Y@eT;LlMgIQn!6xPr9W}$y~1M(xOv1^}(SNGT}RDg0~Ig&O7#o3v@ z8Zz-71PGbF(#bSqcTJ7_>|FGRnt0vGL|=}iswidw-=HC@)cDkU)&m%=)hLKA9>I3x z??is-XJTd?n9Q@9jR@pmV`A1s7=aCfO)Y@d`N;}QShkevo+=JZMtBUK=An8?&$FJ9 zlet=ivR>KXbS_Nu5Nvidzk6F%g3amlS!$BC1FkZY>dqs@m!f( zWKY5HMB`v{@GLrDBszmP%!&dNa8ZlPXrQ?YrIvMsN#%IR+~^=P`UYc|k-!770N$N$ z5ImBk*X!>g?vWVv9HI~>F@}d;47gVpWO$Q3<4oaVK*rVsvk#i;=gaHr6AQrH)ulPn z6yP9H8(#=$4{d|nOo*7Se8V`_^F*_rkjj~(DGuI_ z0kP#H^i-|uj-DawLjCJZjs{1bUc}!0jHB0dBN~sVQSDT_x0+ty8VLF$u$RxH)9h!e z8gy+4x%HdtEw+rbPWEC)LFrcvXnmuppuNFXC;1w$8EYlEVB038cPE46LoU)Jn9;!t zMn`z2@nUNKna}~k-)j?l)i1tu07e=o_T|ieuz(G$dG_RsA<}%%xP#Cb#wG^gR=c%` zd+HCWoizfHSyB-H_5&0gyP}OOXyg=3LF`ZIB`mDw>M_D>L%y$Oku64UV(u|w!_WF0M%MxiyJ92g+=-v=Jv_{eid@#ZJlKP!zQzeAPQb zR}egvPG7Fz%Y=M~mya{R>Un~6f}0*o36#GlyCs@YB&d8JLFHtIs^+PMQPSsAx^m3j zd_F}Z=_^f|(6eW-t`$us6ZQx*!|Vs`6Cs1;C|K1DgXU@jJu5+gFfrI*nYDybOn2HC z=7>S73f%|J=!O_O_XH2aA@Bi-OsKII$==;6JPU?G>DCJwO{jq~V5oRjUNvp6Tuafkkfb>m#FYt&g*JkOMUOLB?jOYOaQ?#9zM|COXrPn{Ije?p*Zemvw(0z<;6 zGyZ5af=YG(K^M>id8ySXgO6^Qu>)Ir{n0)Rt`r6shk0g27Yel%UBE!`N9c&f4Ij;v z>Wg(92tC4Aw~Rj^)QAK#zVY{ND_Hm~Usjt_9gLL0>W{9EJMx;b)^&Vm@(JQe_)Gp{ zmVdCf0+=dknpJBui10__>r-S=pCLnfQ|(*z*-o3ai+fhtMUmD#CT-ThS!zH}w17tS zV)h|5Kzv9)otk|%F<8|IA*a%{v(iteW-e4lZdni~o@Fq%7`6-u&^)kUaU!NuWI;4W z*a@pa%PA?>@<}lEsj0lQTrxe-gUn6?)(j00Iu4)-H`X!;#Vf5dQ*mRkDySr2jce>g zQy>YfTc>KUstg!t|uqmc2pqfrhO(d&?kPTS4Fe;)P?J~lV8ea7$q;5WfgECMVs{619XJWW^H z6bJ1+o$T>5>G&{2zV10x*ZgRu(s;8=Hc%b~Y(NQ_9%wT*8`9;lB`&SJegLwiY?n@v z1~xE7nl0KTWACT_=tx6tt(1`U+ZP89C5UavF zcGu{Rce24VK~8bP77TVOR}S{z@U_a;nuIGy0+qVC|(ESbs%2*#akTm%Z6lL_0Vo zY)Idfr&GwW+?@vsYpba~Ri|tblO7m*`zguRX=nm`J}|bkZ>^usmrTh(EwTZ-Hl(l1 z2d985cP?jw+>pLDADRN*SXT~=y<%n)+3}}#LkGrw@WJzW=$iryF@a3wDG4~*S#-tTOi&KIe5OI+PPercKwTzziXKF&<%BU2cosIgy7-;n-F zURS%h+Zxp{oy! zP2PPG57xAnYud*zsU`jH1pCMXE$L%*zVg7>6K_pP>=0lU9~k@7`Z_?+p2F6)$St*x zB+jXgI`{|()~U%z)l>ON^mAw`KY0q1950HZPSNY4s8Ka}#Pt?Mt-@GIi$YN^nPP(- z-L3{`UL`EBf!>m{;bcR)J?{{y zeUOLsYMQm3k6)V3Hw0+%k%x_{hbA;=AQz&(M+7}1v}BiBqIF2?z}U|}o>AP1VO&3P zdqzjrOtmfF62_J6m**!;$;)v=I+`!j<<Q{U;u*5$oM*`$*!|?lb|5k30aM#SDD!6m3HqwnnVg zi=wF0^tvc&vtYl`Z77P`5Ly(90-A{Y>g*d|aVzzns6f95#_oT29}jB|j6GI8^Gnlo zdAVC=NvM69YddF2cmOaV3G<_<{-pt3Pq)`wr%7qp8VY||U<9G?Gm4yo+}+PRMRKxC7^7iwDVPI4y~-8iWzrs_7k(~54? z+^9RHs0kJlx}i9jy;BrUP0ah0o9j(c)5)r72*LolLQSW@zxs-rMvG$V0pOuez3wG$ zRZ$Z+p{5!R(#CiTOs7DF zEvX~Vz?SrNTvmXf8o4PE-XPy3A@Q=PW0?0_(#v=`?DTmvcj=b&SGc^?oj&E-ypssz z7!<&+#JhMr!@X=utbLF%*`mG1pq?bC%eg}Z$z713l>RlAUFo)P*Vw|AXTT1CB~!t1 z8Umk+0;E&jOATU6IWy@N$(yg7MpuTK;tux01(S;xV`8N{~BQgS?2Zz_`xWSMv@-uJZQrcm|I`x-EzR%BH#{ClVu` zyGtyw>eyuIRQzu4R#@>tvQ(k3<(+!DMf+U>A zKohkjO12FnL%LLow?h|vY>2z|Kq3rC1w?KZictFeqr)c@h!=*9?2bHF)R+d@d|eM z>23lG-=PbxzTwA3)k_$jM#%r@wO{!4*i0Nq2&|~;l>DjhzT>g~5?b01kWUE7-}~5C z{`J?w+m+f1PCMhy@n6a5kh#@u4(-20?U%P71*R1E{@;G|iP%yM@@^;;c;mwleI(Y8 z%LTxcTOJetC?dd8d6;mwNx}_l<{TvjuB2`t6!?M99R2f{RT#506nOV%58n~rk{m^b z8^WCjFknJrN7qvEhmi8)lkdE>9{RFMqC$B4-5UW|*`uGqTO>dY!ttK?t& zVfABe>h{yHET{)i{Z?S~ihsykWV=T&!#u!Dxrt4{On z%6ZkDCfEUVJWh1EDqj-ObxY3ti&t0PuhC`p36DL8z}VMcC=jqb_- zI-%Q_fA`TJc1E{DmHVH(`U5dP9!v6fkI3|;zkJVo()EKX+GryGGsJ=r)B9U;5V9J{Vi) zV7O*|ICQ}^U-<4nbXzx!J}L{zzkJ&re}7fz%tnY{G`xNCD>qypOJ{Tzfk*xHLRdSV zpDI7LKDpY87)#Z?M9IS2QgwLB^#i*#^Qv2e{IX$Qb?Y@4D+^@!!^i*ShDf^`nA##| z`KLeoz(-?emW2ZT{@Ne?ULaZ^?=(Y4s+|0=0 z+b?C@*sFee$njf`z4QLi3Ooau8A9o$w!N&&#!GEGV_w@*h6xDIXA>%Bh6LdXz)3WM7NcBE*6DYH?N^Ij-h+dl)Xz0oA zlz9z})t7Q>llUTx$Z9Bi)@Z2q=5sf%p|H;WE~h9#^kg=r#fhoZ&{%n?svam}{k(>* zb|<>i<~8)h@TQczf>Qd#ajAArWZvqdp~}hKyoUCP3nxNB1q&E(E614>rAd`qrHh%J zF*skJK>H1tOUyWqFlBLWkSpD|c%^nD43G0o!X+|Y!I(Nl+?x0DRZ=EF2Dp=yiBdmG znd7d_J4u;r8YNVeTg9WK%$K<{P}HdW#k`S}nSwGFQ-^jclcY?sYm37J{wSxUOq^S; zLb5xBjXu)rFf9t>pm@0lo-mH|WZXRt%dB?7fF%H)FitMgt#BjinZ(UZ5A(n|#8=6k zYu!3I;+b}X303|!k~={b$xiZKk=%)t%bn!ThC2yqN(+0TGsj2DO`cZx=UoEPL zFmssFO$Qqz;DS9h)I$fxk|bfx*Xwxu%V109O&f`3>vFS-_t6YwjF6*83Z?!7ET*M{ z(_wt}r8>_0X@tdIa18$=Y0&gWiyWyMsSMWJKc%`@z#;CVS(U8K9da`L3pzR5BpWl3 zzujkAO||-$m}?WcKT7v$O2Xms;g#w-6P}re@Bz_E0c9Kt(4nT!+DV2{j9j7VDFq%- zdz4ND0I~t%OSA)zf~aF}Tf0fU*Q>>5 zi`~c@)C($>fLPTVmVp6;2Ed*Gz&?f-AljG!C-h?m9f^y*2C)byc4$jEEbl>$W9rm7 zHEY|n_3ilZqJJ@|%2(pL9EGI04uut+L#>~&BV2md4j?NrO|I%}Y&)>DAr3GN<&ff9 zYYQrC8oNLZ&A&<0`o4Mxw4fz!o7&+?pU7?~iNE_cjm_m+$!K{LVfz;ONQK@DCz*VO zO!lg#%z6Jbi1OyxV7AOoMnxH835~ujoF73`{c${nHWNH8r3qIX>#x9f($d z8cuP1P#bo@uzUrN@*&JT$>dg--F_Wqk!!bY_Z5l)wMZ}2YYz-*Mw5jAQib3Y9C|8x zg?bK%(!_dMNyB5U2U_O^qDn+cP?Yw&H2)+`8!&(ZdjWBW#tDiP#yzy>@^&w6DUen* zA!pm7Ce&?6+jk%$t*=~Rjp_|}D^oEWmP+*9!Q0TNw4iUp+h+ip;b%4P19xyx1T}+s zNyDE(o_&HmdZs>u8%R(zSj|INMH~-(2*W!#4M2;b&8-VvN-XfCXsWQ4(P!wP!NKVR zQsZI-Fw;ysF-~-CrK0^-@S$80=*VCf1c$Jh!!98JB#Ie(8V#4t;nE2JS!CT6-d`3j zApm6hy6|*4HQ{xXaKR1=u6cQ_GLiZ}*Ey77;Js9ECzt;%%aCvW=W zWPCf|;@`2YFV9qrFvCyI$Ryvyf?olOl}_4?S<*@Vi{M7(vv@q;1-;yaa9R{hX7ewO zWLVV0L=Nkvgqy4)P2{O6QXm#=Kd!PnR2-h8h3PLtJHDM5gXuPUZbQ0XT+(S%UJYHE zbk-i`qB-56L9_Z6TLuU!otDWgrD>pe;ftoo+I7>{*oEJ%n^xUn3~d$^o6VoIsGK{5 zsRm9K{YVuQ3)JZNX_bWX8*h}`53l9h#kLXI$5OF7tWR*3#AR)Hw=|nyPb-;%d^Y5~ zmf(qHJ5M0ny^hw{wIbsb`wPr84j~3c$k)ga%U{!H{F*)E*XlEVtv%z{`ZIp*xk8L+ z;U3XtSi4KLwXOyvi3=yd0FtZrG(oeJV2uXprNlqE1bi$%JndAu^ zUCSiP;a2C;U5I}w5Gzl&a@ZE4kV>G@{A5&%z^qhA799uuOzwXQu7*g%2lkiFN!|-c z{r>lx?K1BJA=TLb#~NFJq*OY<=$4P(No6A519^TFtcdPC-v@bnsoC>f|TZm_{g4I)kj z@KuQ?vb~;g!HVcWIGM0{D7a_ZM)`9RR7=4LkdP**sa)?li7h5XYZb`1Z*Oj_SZ<(; zuVkIr2m3@Af4$YyY{IGi4IgLT7-@d)jO=`--pZTSX6@SA%(Dl!8#ePuqMeb#b=q7L z;`xV87hN+f2((FiD;?kl-KhMdDjM#kyfU@6NnE(#~BiILEoRcBN6oX1Nm*c2xJDuZ%!S+*~du?AgC%?EC1CPytY* zXVdX`J|yp4+$rJOVWSR>s<%@BR3|kGPJiroICHt?H}4)dPhR4CvWL$U@}I9%-wfU@ zV=9@PyuLdA#kJ`jJii?&`svC=BkeInHkGjd&u}{oC7j9zF!l%kR2~*kMK}9X+4vW0 z01buRr*S`ZyC-d)NFr)T5SKIgyk4 zjks2Kt6LmfTdHnxxw=08%{NnBpMPsgb?xm`jQ>ixk9V!rrskrLZr4qB(9hQFR=MqW z-E@a?kKMI>+qIv$YV{{h*#1ilfjqx&{i`82Abb+!+o=i7?J-Qae*Y~7=$Q&(0z(*> zF}K~mPhFRfX=bkY!{0PemeNp(Es4ytSJ1ZcWeM3CQHvEPG-#)yNSu(NNN2mK>S6Ao zcIj(-g-n$2Fc@N_2p&{~2fRfP11HjKpU0f9#(sjv)_o1Eh-3QnyfK{wB|2mJ{_>c9 zFO2EaiGV!jrKP5C-=S}_itLVCF#@G=dj>R_4f+2_xLk@q7+Smp=t`y@ck`h;6I#$s zQUDh?Xc1Zil+M^klhr!fjY}z6fRCGE8~z)AMFdH782+zygCmyzzIYWQpZM!zK1|*q}}K5YIm@8*gJY@wfeen-RVFE;k4m{?mH1iJN zx6kC}u(F@T%{|I>7B^Qv$(xh8x$g;XPT}Su}&xoIN`bbrpn28UuN_6Ot-i#Xq9;Oh6$a!+<_;5S8^6RtS$^q3p z2;C;NV&2VPLq}Bs`bvIKqXEhpUpa_hcZT_ zCRZt==#0Z8HnV(ucqB0oX$gmbD+OF-NHgzj$6OH{s-WZv7Nvj8W8d5?j_oNlWub-0SM_@xh?lb2}1yh z6bSUjjXH>T{?pI|T6UNpl&=@RuNO#)L4+Fs23Sqg0Kf)IJfJ7?7kP-8?3EWOYfjw@ zgB#jYZtKx~5<7Xji&^e0jSpfaXfl%$W%&ps$*}tX@+$Ws8={Dc96M&&5Ll z3~w-&B3(n_`e-CAasBbSTnIDCz@N-~8~Ai&Wld6uUpIoX(!d3E@~BPhbO4bv?!hU< z`)zJ**etWHiTt(yJ40?Q6Nk;f0=pcMS-V z>kr;Y-~v4M?K}{t!4Be7(Pf#gi+lg~8h3%SprRGs`@n+47wXwI&>&7^27ofhk^HV{ zzbxxvwG%F3zQA7OQo?3SJwpoInbC>4{vG)uEt~_-3GWTUOv}K(Ij-c0_$0^3P-;_o zI=4OjOr0T}+yyOz(Iw!zk+H7_xgibqVwel)Bf%)**a@b)1zY2{dW$KG-8Gyn zthha8o@?mO(7WaQc@^t731AjZ`2>1Hsr0qI#+^;`+aeHg)Y!X->88$5Cy(1j6A;(f zEIy})ZgvkR4?TMijZ?~8bi%wIj*7yyA`8uA4;E_!kz|1k{++Nc6J{8DO>i0^Bh%6| z;#hnMhr7~7eL{Qzuxb0JqQ}4tIz=8k2>+l=xS?%06S>U!%sik)o=eXG&T3>k)mBMK zNm75OL5PUxlNx{xWndrqB4!~QTQv$a(z{fQ&ClFnz@lVTXt+5sPUIY+SOhDYKxnns zRu`288wJ%3OsM(Vd>L`5kM@8ECIO+=?wt@t(oRFEK+bS6{PB$KN>XRfg2W;z$D~%c z3r?^>B4ku61j&ddyOLVr+@M7`Z$V{(I0vH$EW3cdo5`b0*JCg**UF+4ThQ%;L#=#RK|x-No@5R$5ai^;oqo^G;Gj#-DurQ zOuuxX>b!Q9NxV&xW+Jw2WTcgm#CbZ?1#_n>lJOUKjawKh^_4V*E+QDn8A436T!yJg zP5|%nz7g^7u%v+R&01#(<%x8(#toO*k0?h9h`n+&a^kDDYjqDSI`T{De2omk2gty| z)=Z>mkD(-wpzVS&z;Kbla7`J8l0_m2OEu*KK+>VjaRY#gYb@IJ3yNcS^Yr5+x!VR> z%3N!zC|467AdO=h*MK#7=-IkiLXP#0LIWcgp_|^}1Wn*10x2|0_XVyV2U9GEQN*yv zV#@~5*1;)_LEtHkkz{b86|t&p)l2NDo#-DbHMgACY^)Ube>u1L3SednIolHRhI}O} z$lKc&2J#qi=X3`|HU|Utz=Xtfll((3=1dB3n!I^YzJwN~QDtURS^K`e|_%99kb}scm-z*g{9-|MYbak%+0pl zNmrq~f#Y^o_)PdC)Og`^XqDUPc%Cz|u}dMv^mXskO=4EVpfHMY-vI|-lBBI3a@h`! z7;viv&mh67n zA6%#}Tz)~i#_oWrP4l3hFOn#~eOlkpnu-y57nJj;T28*Au@K|oO zdm-SMSG6_jIB;^?r`6nfI1=(~pPo`*=3{ zET{^X`9HniRE4}@cXwA+sDq$T6*BE|Hkz4Ew35Yo;t&2czF(YENN^>SWtd+>qjRy8 znYS*bSqNJC^Xl=|N7frtu(#GVS%a^ypnBj`1Xyaw+D=@%*}j0Mhfw1nuZ)=D14V_( zl(HujP9Mpj1@gMq`|Iw4CaVcIXeXg{@>G>X^(pJo!$><^(659nByRrI&!^{LI>K-? zgyCp%uw*!z9F*Y*H3+seri-|x(e4^&WA)(<2Y9^me4@Js4qD6~2zLm+`r;bm?-=Oz zDnKY=g9WSQ>#h+T$B+c1|HASG_|)_Y&^;2NyO$M;4CWZB47~cD&imd=rNTq%!myb! z1~kcQM6kl)oPlu@V^YH-8djR^9=f8Kkej&P#`Pqwg!@8IHl(w=+9z|}&-E0p96Qw> z`?FrxeBzCT=C)*ZX*A1t(r>DkY<(%3SeP`e~tQzNrhfUbFW-;WJMjo+&iqkPRb^w zP$F4~8Uu8lN&jRQHURPlj-wTi6Z$fud7PCH8qqB~EvcTHRM7|x$C9~`6*C0&2FCbi z5A2fsL>K`HaR64E080lFaUZS5YE(mJ#M$G3uVBM)C8E}vt=YP=KrT$Q=Onav z!F;Q)JSSNy7JX$pL~H4xJ6?x`nnienn4*^^v~fL~Pgt zL_=^EL3F`JU=0q9pI@ytep#t@E2|9Gq9xW!;CfD??SJ!wt;9+s9+K(9@jXj3G zLT;RGGA)CE+6oP=uM@o0xD_aXdCbK4x;rfd|Dkt-!k1_0n^F4wYN-NTaL)rG%L3}) zaIlVC%L+_eHV4y|fhZcAn4B(-9xu7TuEY+e*a3wa1w>SfQO&5Yv@@WhLp|gkyvYKr z5GhwYyxz_flDN(-)^EbQg2)|64nN#fq62uplzrKiCW<@s*dB>A@y0zGIBoNp<(^!fE1QxN@)IRpU^=m@A5_~bod3zjKo};>59w_30ylhn zzU{iPzj)_|UeS6e&Anqk@3z+GIOztIkO$QXuKSK15WGugy#q0LSDp1Pq^r+*7t)CZ z&n>TS*1M37t={v}4bFNO(zRy23-#jLUCJBMEs5{cvyf`3JHgK+*7)TtLoEm|7aSd! zFGM)VndU5u%g$bW`i1S3RXh;(0--P6Mk*$DoOpBdk*mw0GiTdF`bMo~F?KE2`mZNY zo>t&QpR$FxBH1XKJ#I=kHjgk%FJ~>x4GJQ~GVW1=9d)gdi(l1d2UDQsLP;4_Gy^=Xg2L8ZXah#XRvxf~sk{Rlj zQMZ{CdOc|EAuMHV%Lh-LaLrf25{xk`f!q*vSYkP8i=;hj9DB#*Qwy3%JuR+CT`f0I>c~>6XiABCC|>K0D6e=XxGes+QiNnIB$!IUq#}5i8e8BBs36Fd248^A z1d$W@GThF5P*PBWu0<5ulrjnek_X~OHcGql4Rg^EsOZw}0D9k^vH zmV)=b)UDC}6*ge2ZI944#WOZL%cf*mo*81x%M2yl0HvJhU%H#8A0)e9nXewnmud&h z(of}RB0qKAU9JCchwov$V679kvz8Y_SwT+tEEjm}tg26UO9EIdJd2RCLdMD%sGgfhHrJTjIfRUyi4cR`6!iveSZ2bUS{ zOv?U@^bJk$fMu0(uqSB^Tj9mNG316AUM#OdVGzthJa44T^Yk#E=Pl8~H}E{RD*jL5 zd5fN%=Pg>0=PiLK)O%v1=rWt<4Z7p=JY{^2JkOF2W*we4_+s!pcInfCCNuw_T0(e3 zH(ct-B8Ff&vg}*N3DvqF&%@`(c;4_lo;Up5dEVdzrMJ2~Zv=gth{~85561I|U0CLM zyw;m?vgge6*fTVj=LMFxMnKS%-3Jhus2k#6fZSLgcy7~c#tfFpY|Q)wWdt)J!ciFc z$ZS_hB!VA`O!%Eexi7%zwqKjp@ZcR;n`7;7NBd__UzD~!mAr5WR-vO;4r@NM%LOr*m`0Sy z?Mk;~ToXFlkoiK>P?>?~VLk&{9T*6L31>re8OS1yaY<Xx=MW(`INIn}JkBXL%3Krc)bN~2j7 zDHsn5L{6ar;n-fq+LH8mlW9hsHJzT}a-Fr7a4|YRL(}O&rqjF-#XX0VfrTsBaxNW) zcG49BJUXdUlch{!6s`$qV zt6d@EVS0rXzRI?Fbh>k10t(KZ+arsR);!Gdm*URwHa(hXqeKdUB%HX z{Wj2H@ULh$K@Mq0VqXI+Z30!pV42Oh-emE+TU#ycNHEOZ3NCIG}gRaS1Cijb48dOwj5XcVyz z>4i?Wmnsepu6J^M0xM&M62>eELpyFmD;1u(N0HCmqw)+5kWJnMA%{Bhz6skJB$T}* zQVc6$P;?f3oaIKHoi%foaN-UKV>DuQD8{?FInH*c1Tr{VIsTFy3IPw{(IPn_qdc%l zo`z|!3|tLR)w6B!vk8{6idpMT%CvAq5)1_`ttAl*QLx1Iq)3{wPfb?bj))sPqoo5r z?^DS5>gnxe0T*Bk;LMx0@*ec^=a|*wE$-y7D&L~^KTZ1;;XbtA{6Zz3sU!rX)++8!>DBH3b)ZS@p{yvc)IW@79qYGN*aM|nb1!P0AIEy&~No`Ki%qMhJR#8H2Gxk_fxh~^6!&O#O&fEYV0IW)r z&G<{)Q8^TAPQbWjOJEHDoN6FN8j2oFgP3u09R-~-@sOL?BMxUZ?R>@HBXcTFhr#qG z+v!rXh1pilgtGBKlZSoYY<=2J&7$th@gy@0S6=8t6);zF0n5@m}^AV zAbR^e;j2jHJW=%214Ay06g>yK@gP_TyMfXI_#JHG+A$YY#?WNQZrxDv1@~a$u(T;Y#d`WdMSTl^_OWDW@2dn6dU}yuOE_6its|4 zf5J%)e$8IL=8Zx8c#lft^JwzR@>k&Qv}BL`6)IlkaFL5?bWo}Ix63OBM&bXCw|RP6 zlAKE}wsmhxu#?L%!00&2HV;~>wdpQYHm%B-;*I{ot4X~YwrN5yB=|wv95RcRu{{nSs!jxu z;FX2XktT8cLWQiu{1iTQLd()5o_SmGs+PEEAfmWf*aJal6QG`L6C5gZc zflB>F5h-ZhapaO9)JUu;gc^S}5DjV%#3OMgDF!0`Uc!rKEU7FW`TuGqX})LCfun_g z{vwi!SV%^aA^n9cH!50gEFmikKthjbLDcO}6!8KyP|KMUr9?o^tdm=uqD*utBSd#0 zHjZG}BW)HL`6(j!Ah^{%E?wG473%=~6gnnImCLVezk-|=duVn}_ll-`Wmyp5kEYG3 zNN0PS#6&T#W0r)$-xwi0W!-T;J1?|^4$J72W}>Wxwh1a;YHg^~!quow=y-OWy+!e+|n^o=LjMl;R6TH`FtZD^~t{o(P5CIT`K7HT9w*A8Y-hE3wXo;>x^FY#ea}Y%UWNA7j$}o)1P+7;3diS zQiO9xc6KA9`*I+C&bA}uE?N*wci@6&{XPNaj57q(SH)Y%4RMfEb;$IupvO2De zml7V~Nm@K_m305dv_{hXi-F>y+U8vuaSwas-mSPmn@ir^o8{bHW$8l`Yw{Y0tEzk=Z1_>|gLFseVTyvhC+oto6I2zK19;v|%z>8Y^>CgAG`*@?L~NnT4( znSOo6J~oX}h`VY&JbeJ=6t@j-2ChTN!LUt}ZkSCJ_JMGSe2Cj3T2_)AokR>8OmukK z+E6?;bRq#~a&&4`eH7QCIKsP3PhIPp*P%^N<-FzvuUpdx^g7lt80$bUq&k?%@Br@A z!6Sw}>JXv15R_ECCe|kBVsocRgp>YtkjtQYf_l>S2;0Nc@4CCfrw^-xDL7(t)P<6 zOB~Y~N}~~!IM5UNp+Qh$5oXIoog zNNqS?!@FIYSJd=Z1KEqDHuZ^-Z=;>iOdk^WmwFvqxVuj`lmTzZqlrUND|#_FNeb zXMX=pj0I{7=`_){hTX61LooXUpZ{io&zSM-bHEQb9OcJQsTCON&U-?sq0m@Y=C4+J z>!nY8FIP7=mo;JG*Lf>%2cjqPNt#?wg!U~e*f<&ct<`2w>2cdL}1u~g2^~buW=7E z6=Df=Y$(-?5z@fONftw_RrVTzg&l~!)UjK>N&%zDX3ysFij!;yx!C>^K4CK*ERS@2 zTZ?ZaK3R1kb_~_gSD=j&RYsTZK&nPkGe#;_iSRf>ovAVF8 z7UtylW9T` z$N>=!zZx$NpFw(&{FH{Rt^ox|K~Z|$4k4^bjD_X+=}nMO`aGm3zart{fB--gq1&qF zNOiOLF)^uTj55zq^Wg1Pl;%g*Kkl)!g4q%?SiCR-n8)SeZK#aMDo+8UZ&250OngHQ z-x!!&4bvPU{TqP>MdJ`;@YTRxgn>YZ5|}QyWt%CNIx~zf3*N%KYc2weVbawsOn8K( z`HfnLrHcqgyiJK<=+QV;$X4^r%02|wO^l=qF$VE_z$WLKzX~>G(=i6Q&OCjb)Uy&Y zQ*$b!x?l67hUJ>Ja|Gld;n0j-xejoai~!P9C)x;#QBV+np)r-v49^L*%=Qb^9}|R+ z{_4#^B9v$_w}jKnB@j_{PJ*HY+vaHp56ns6C(kIC&^m4jXM{E^nU}y%o>eY^lN{z$ zQMBQ#Py&Y<%t_!Ux0Fk8^AZ##YzZZ-o0q^(o>MMibY6m@gmXd(o8~3(ljoI7!2B|& zkwppTg%Zw~m%vY+UoL^uD~?mb`Jn_3atMf1NOq4^5?(#Y9%K+)l*%JG9gfg|KKl7; zhF`mAteqVop_i}bsT%|~DFuPW=f%#ch?*GEX$v#a*+h4VZBFhyX#cZ^$hRl<@8J2Z zAEu;H1iaGgV>99Pr_oonetSI$6dA8|yY3Y2&Tj}sEA|}GLc@cC-uX@8UUBdIJM^L1 z{4WGuhc`m8r&AKs-i2ndzM|Kg#bGYTS>To?}R z^q&VsE0q2_q9Kw+g|@;dh~(1KYD%LS2;oXE|hfoaO_hd z!y|gQ+cF&OWH@p|-5>c-C&T0VF!|>p!&CMkmgkR!3@;^URGoO_o%B~zHv0ra`fK&@ z>sG;}ZhQSp{gL0P`~5d}(ogIC{`cNvJ-9&+H(C1qA^lc=^mmC%c}pk#&3b?E6CwQ} zJ=|dF4;JYU-bRP{jUE29-tRvW(tqAEYq8=Fhx9A_(T~#p-(%V3Qvv91OaC_^{k`4v zGe!Ct(jM)mzu(e78qz-qOI zl2e`iJBnJ+W^{_Fd32_78A$Ydp{w4?)c5pH$aWD&rid(0YCLSbRXr@}0)2^^Gq2~Vu+J*jWHb7!4!NtiIZN=^4dBfsq zbfyLjJ5{3;w2I;c3@OTIeu6@a%Worj0u~GJ=|BoU^9SL;?f8lpcOe0xxv(V7!ztJ; z6IDM_A(sKUIY1afflNL{>70=^X9b2EaWqx<45ZLT2aT#k7M0qqJKE@N6v?%mi+lwx zD!sPRcGEXI-=K#J^C}x;OQln(!ubi+q#c=b($`p9E1|8Er%BN)O9Jf(YrKGUN_~14 zYdHp<9|El)9+zvUwNI_rbcNbJ@%OF=rpA5Lz!1o^`L8|c;-CQPfg>EQlvu*yiYb85 zFXW8#X!<$<$5ru$Y>AEan0U?m*X9`6q@)aQ=phtJ7%2j?b4XjZqrC(oX+R_j{H_I+ zNyzAw%p;<~u5Y#gFNUU3BauoJx=!h;D7Lh)Q3odSDrChkx>AJ?yO~j+ogxO^CYsvC zdDG-}Irr2k5WaaOi>#_hvR`O*bBMA;m`%z*l5o*C5$d)1G7%>^;c@<_VumsyRdKr` zax_QFQ(P=3?;}0S{64m=!EFtrIS)c_IlpUJSUTx+Z;sgw4_0c`4F)8a(9f`AhLUS) zy7@rD(74W|HqDMu>@=h}KLqOi=PyycxQg4VN8x zZG_%01wphC+|@XlG;>QBLG{P6$C5tjs8iJ13@wWcO!oNZ%i6(6}<~~+dvZxI1 zj_i%TTA=~5JWU@60L((?a1NF3u@?4l%3c9nt8QqgtYf%*qaRI@CR#=XzbQ3GHjGfe zIhokJ)@>pR5Sv%O*e)7IWD=#fqp{{RXbKm^PHQY2LTnAIbB*=!8%29Cw%L$#n&|@V zksqQ!_QKjDKw5h&gaspCw5K;Z=URuXH=v?DKnI%P>5hDEihN*{_yz)jpc{haQk-1C za}F!l0I;_@U{_pdFS2vCAlK%htWq}z;>%!0HdD&=5^15sY5_v!w91LhRr0>o)~U%! zI2F6jnF7Rz8pL(TylB~8OxS5vDM)2=qQxvSc8)zwXKabg94CvdGtSRkpmv%hF13R8 z=c%(60d|tPR!<=yB})=pHOi0)H$x5wm1rC#bQx}74Hm6}eiMPH$O5MGP4jLyF}*Yy z4CJH7sUMABM|X`Vl_}w@Bjg-4cQ?wUy#y&V^3&|6#&_SCH*VNa0^F(wG8<07iQHnn zQM0Z2;Yr}oaZ?s0PM8W++Zs-OK0L~5fC<~w0XH@(eWLO>3uRL5li-G~)i9!TCC z8>NNC6mT~WI>5NoobF5@eyw@J8fR>B=AW#^$4Sz%3Hq^TO0vX~Jn>9PmRk~pCV+9A zidIA5jf>^Mh{4h z;C3Nn_F!V_%kym4|np7$YVpX8EOHsad1*|0q zEt<+DT~BI0H;7o&Zpc@kqI8IFLZnqpEkPoY11`#}b{}j2IYyoMAf07;k;EDTZ3YFV zYcf5$BE7;@vNBfZ@xVS6b>&0|@aEOlu zl(dwyO!4nXCA!0YyDg7^k?@GDCx$5rN+UmW8gi;-;GrwKErDeMqxS$Kx)B-)rdg%X zZAaZ3CA66QeIYrmAQM=3{N#|PpW*lwCCu$F7--3ZgcboChlxZd7tMqf@yJOv2nPyO zr*3FWi{*-jwVYlU!*^TGG@HNIlh*d7Z}t!U##dQrzf;G+CH@gT9M)RXAJuKcAH2Vg z0O1dQjcED6=+kzAVQbC(xRM;13R$1h!+S03v5@tqkoD$}_3l|&ufB%V`+qxRy;cvm z*m8POw+(-D$a-7Ide5w^(@JvqP{?|N9u8Tp`$N`SLe@he>%FtG-mD}?KNGSZ(!)KL z^!+1uawcT`ydG|`tcOF^kA|$D4q5M?mGy2VIrz1Z^6ho4G3@<&6~ z!y)TT$a-{E*2gXD_e0jF^zZ|#^;pPyd&qis$okN%tXG3b>?{jeuhqlXt=381HvFeU z)_X$Mhs#-8AK5sTB$Fq%<*hNf2`gX2%ogUnu}yJSO;OjshiNb6s3VY`gb82je93mB zIPgPza)_0WdWACX$h6MelVsp$9=BDbtC=*BX!_)I3X2|6X(K%#EL6jJdH$i_`X-Qj zd(^e*;iz^0sBU|toSXR+y0%YrbX6?t)aGr78m(_+;_N)m@K~|O`{LJ`9(z0%zdo7h zaq@{XJs-Y<@5f_j;uEI3zSgZ(->W}8{As;!WAi&&uA+?5(rdmRNtC&j?U+IJ5_Vrc zV!i-%Rz~VRvI2?VcC2z?ILI*;wHgiAS9`}>*JG^ATJJ^bvDrgk>BVQ-t@l@QX_EY9 zWKkS&Hp!6QrL7Nblo*t1K_UxRF4>9$vWTwcIrBjWw#+0ozg5!%_#1;g?i^`0Uque4 z9|Z&dtwyB*dvI8X~C(DdFY~ny2VS*dn3hWhJ2vq=c0zRe&07 zB|T9olV4>QkY;q*q`HOJnlkKxLdDf&=0&zeXY{QXATRA_d2dif9=f*1EP)=1>Lk8- z6lyj##6|d=WFQnFZAgmT^sGr|2m(M-ObQqPl$-(?X68DQB4?4bENhF-uiqd^OVEw!OMoq>?MPb)SjW)l zJ$9xGvekXVA}l0;AZ;Oxbw9sAX-lI^IqcIbP5MFF!iqYeN%vW#ErO2H|wx* z;Vh?z{qcQrNC?qvezOvl(Lo()jh0r~^lWiKA>s2HRBphSrK-t;S^`GlG8`kMbsMZx z7JZJwcwsHB9{v><>Cp-l3=?R4Z| z%IeCtQRys2t~pXQ|Dh)x+E?Ka_|6J*5Yo_EB=L_2b`RzCa@MI-YEm{zFUCcue`l<4 z!YWq_fAnWGfaOR*<1}K(*8g@CkRABV);aO;POggF63EDE_*%4lrJO-?V0>9QGB+$^ z-CIy3197TjiHk=7%HvoV17cvuKebm=lbeLiX%1&o;TNh*7Y(dYoWnK%~9gTjJ*>D1hrU6*+J^`Y8 z=?ngmyYoJMLElBeazaPP*Q8w3JfTx~lb8bCG%5BaoC&YKgM;J%-}K%Rz~BV-pd7<} zHYOszvXpo+2~tJSV1|+o6sb_)b#ylPl9vi9pE2J+qv`sZ?NpqC_DkxLYErfvU9`qj z?>c-P-$A|C0o;H>ZkkyHBfYgsI(;>WN=IV75@foa>9#UpmXd)}#R2LaoR0P#THjG_BkE z;}1i%AOInOIq{g^QMR}BeS|!Gs_msQu&wmB&t$(k-9-qxK zxbEkACf94Ywz*DnUC;GNB(bx&9^-m8*N3@o;d+$o%eg+lHRpPS>p5KS;d(CD8LsDX zy_4%&u7|m<<9Zv{leiw_x|}P=ptjkL>GyLT)W*6ZP(s~0Z0`gvH_)tC zNCsUFU+T@5amspz$DS@c>q25(C|eg7E~DYHIb60tjY!5)*vMZ_@}2%Pa{Qw^d#ieF zOSql#Jdh}zQo2@adLzlAN#n>FxEhjMGB>9w61G_~bwd*J$1tkaTTioR!OXc#qz!-1 z>A1yOLEMv7=MMR*JoE5UGro)Go`ez}aqgsY`fUcDV?p#9W> z^}TvNH5rVs)41r_9LO4)0j)`Kph8=`Y?jJuUR6px6kgmDUdU}djNAicx2OroRq>V} z7wB(oVP<&7A}~k!r%ms&$JFgmYV^Pc9Ubh%t{DM`b^;OBIp*W2Xbv}iIjp*zMT_Y5 z{g({ruz4H)U6`P3sCQ|X${&z&d1tIc0j)cwGGheT{6zWS43*INe1i~iA1f_342cl% zQ$_ebD}4m(Dy@Vdxg>cH(MG!ja-s-?35Y|v*%PEs5Ch0UKM3iMJ_v72;mtM}r&jb2 zLdoL)I;d@V4QdLnHmVJ0$bHs8-`>O(>~EjS6#%fY%7~+V8dqT3KAG$Nq<;xl0Nmcp z^+~QT<$5RYPuF*zw{rbF&!UzYuAXX%q24BNVH-e)W@wD{lkw|h{^@p)<$H*D4-EK# zH-yX(OmyK0aahodJOyMoJSoJeJ}E?tO8jR3U7)X+9?d{%ZX@8^0XS+G?iuJ^i4W|) zi*rX#LYZU#BrZCEu4SXBvdJM1=S6N^D0W>a_9BhyW?E9Y5L2Ijf*RI!#@E#bnk=4W z{nT;hU@B(Cp4Mlp`5;SwR1}DQcKGE8{>g!M+3HmEzI@e~?HTMzDrr`&)qAiL;>xVU zv{~6BBqgmob^OqBs%bCpZxo*~7PjuFV&}tY(@-Vg5!ePmu`G*&?AZ&WmqD;V{asLj zums`rowytmiOAQl#8ozgI1<LLQuD-?#?nR!aP0VOFS^@4T$uy;|7MdZW%SU}h*?#gKN zG_em1`rEp78KdiSi!>dnd=hanOQ+}=e{ccDBA?j@NZXoWeFIDg^z?@x-nQ~OBV~~} z*qMbi&F__H$LOy%U-s=8xk8YdwFl7ho1qf+7T{qV0pwnY%GmjMu>p|2b~3217t`6j z{@A0Y{cB%VAYy(&L`9no>-~!`tKyq5z{-t(S7`vPWjpdQ&Q0Zz+b z$VkFQKw`h06Nu^)w<}!qrLHDRu++elTiciVN|Qpi(?Jec79tP$qZuw6m$Cw6!^UWO zIL&u@le?-r+84SD#4b&l(>}%Z2*hpNQ*3!^Isx0+d!eZs%{ye!??U7TTrH%oL$^3{f43vdmF+lFLu z9PZ9Tnh!BPLpIzHOdrAUAT?3O5`JJU^9utxY`}*!;6;I*hcq8;v-8u95~yb&Ar`Sp zbp1HnJVS{?B@`-3>^8C4?$8Y)syx63zzBJ9 z3?RRh3vBol#c2iJqCW!bgFpX2?7+Ey->YQlkS_w7uLfl;zKU%DM^ zOeH20l1pcX$VnZ?$@t3SWPGI#+5!2R?vl=tJ2s6V;DNv#e%Z5!eK(4GWPF#&7zoJ3 z4!0BH!|j0qJ;M=p0)ox<=G9#TgyyB4%5V9&NN(Ymo%Ha~xRX9JVa#!|ZCnqY#+`O? ztq6;w-T~%oaiCM(hPWu~eA)rub%{Hl94!5j!&@J&!ys&~fczwA*J!2ARzf($y_sbg zYe+_?S5}*?R)ZL^y`c`RGv56NL+)Ip%h)7|5o!{b4er#U1zJGBLbmbYtn@*dYrGxL z`XmYx_fn@5%0qrF{m`Z|2g>g!h$B4~eL+u%BM~KlR96b>4E4`-M{JhF_j64@NDKyq z9}`nLU>DHoKPw}*Y6ny8Dl>cGdsqihK!jO8)T&FuJl3roG_DdbW)W5cCqtzKq5m{jId7;h7aBNie7 zP_>%S2_Y8IHiE!Mh4jbVzk0&jsg#epv}_6ol9kF3g*5yPXsm4GT-c=*ds+ycv+}|R ztbX-62gt}oh6tpF1i?P!n0K6U3~5krrI={FvH4((4=RjH)K?>V7B@6Tx0{c4`zr@S`ICk zo5?2RX0n;h4YV%5nY_kKs|8!BQHnqs2sldRBGtW~qO?xbE(sP~QYQ3-B^@p^Srksg zGEvKTSZfTy7Dvbyes(0GMuhBGB`UPKsu`dJ*<#!jPjfb}upwKRSFE`5tn^`d9!F6# zsyaeD;zLmC*qWO0)EL*=tV%Qwn&91S1AUy$1~k(BfsPvpe{GJ;M3YxnmDFJxvJ z#q4~O($;;SoErF^*w`q&C+s*du}IWC6&E z1`1AE3<}ZtH6f)Z9t0}i^|X@-yG~%yL11%OuS_Rlr-ivvxJXlKslG>=Ehy2O?j_z_Sz?P{P~~Apb|+JT-&gDtij8^O9}c;* zrA>R`6(CDR`K@R@N?3|L>t`+2LO61+AaOi>H+e6oSbZ4Q^7 z7z3&!jX@a_#Ux3_l-7Tk#JwScb+=mQI-t!t#l*AR!~t;w0IuiuC5Kr)mKTmdi__zfjQBo2~}pqju}3jr(q1fPW7nOWi4aE^4}sXpVR#e+)Pyu z>7Chq%VCSwJ>hn0GPeZ2l?X*BwKcXZTWFll(&dR8j27HnEZtF_?Zw90Xx)Gr*$hV* zViKHV;9kjv;sxFGF5^(%2QZ7v6z~u-xd%iT`V;{cmGvqexVc+)KMeeorZEuEcUURF z;67S?Mz_@PGLJ<#8!owBDs`V!fG-hY$GN!x-6Cs*6{C_J5M-dPh| zko}v1G}0eE?VQ~vFJ9IT5`kUCTzV-CxWH$cZFNdkGNr*vMl+V-?Zy6h6>Go|EW7Vy z#o^25@mcE=H3Bn$)x#R4+orQKTc?=ufHas6NMj8$6Vl2~$<)9Y{87EqFCV@JhSa$m zDx-cK;4DYJ!hS?a@?xyY5Wzj$M1%dXDr*ZbkPVhi3=Sui+5Zv%$};RqQBYmcw5n#N zbST}c_&eH?t^o`x27{Iirku1X!3BhnBY8C8RHN+%+|lHwxCPpoS}S&@;^%{%kE#2o zpJcxo$1yPasnTJk$396xrvPpy_KMj>WLLyQIQc`{249sarf|(cv85>4AAOKRm$hXoZUs#aYZ|P{{#0e26MBqMQA3dHA zd?BpEL=H*7OgPk)YZ@g1)s_s&ktQ$Ar$;1-n@|t*DUPT`jwb~!Wo6IK!ya=H>{LDAPej$4n?}_P;WzRFi{&0F*U0PJ^XAhaZ$eZvW57COvd9m zWGs~}g-ni)w~onqkPT$v2KTsd!>;0RgX47Th&I{bYZq?t_YF6AgPI?D^Y5x@|Gvsw zV*G(^6YH|I+1e^|5pIogJCb<{iN-j9EjpZ*c%$h$oO&{^JdH(hErP5H1`t0AkSo7!2t~(PMl7YVQ3N} z5w(yWeHCJnvmH1VN0A9`08JYsz(*Fg{$_K4p`3l%_sLXf?;Ey1Ik_0=o(WuY5=(CV zUg)o4`p?jbvH$StrxUXa6%iVmod^x;4^P$~i6o&vy6g0ZnN|I1qH&Ibih&X^`r(Pe zWl1HeRP2{a=bwa?M3Vw;P9NK-3A=bYw6O_JnY1EcNMfVcYyek8h@6SQgc80q_)=+8 zXQnW`pgPthW_6jU0%E#`&ctjW4C1&%hM}e=$6~H)ey3h(NG1cj{E_mO_9GQxS>|WZ z2QY{GySXx58Qp|QP=~6Q_gpZ|9Akrsy8PFl{myR@5II@te>^zc2=Bv7#sf)^?GeBC z-TU72Yuc$nn>88Z7mn~r?g!Es>cc+>a&FbAGmUXOV;E4;Mpggqc>gf>561gPxc{=< zv(e_P^eA(iLP9Zk!Uchb!wfS0V_&x(Cb%^F zpZrl(y+v$K{aZho=|0u{o&Uh;#ru4w`!D>i-BUv9XC7eh@jj11H}&8Cl-=Vol=|;X z**(jw)PLj=+P2R(YQER^dF?3q_}AFC&-EYwf~)lX_Adb85j9>uK)J|MDrI%4<1B@H zcXXEWa5TOkIr~I@vHoAbGH5O&Jr}Y-N(1-83AjSdj&%aEO6nUsM*`qe;|&Rt3?Ewu zH)@F>xkhg19tw@i-{_VDjPHgb_6%e)PZ;B1qy%w^HrnD+@2-Ww@QNJXH8SVP(V)7g z^^IB{292f>_j$v(zxQA6{IQ8v#!WrSvh9ied!5Ba;-H@O$@u4G+KX{1)>GX!$B@0X*5);-@{cKf$GaJ%0Md;uHN$c8$~= z!QS-iFVl#L35z540>&QjQLaB9bEzC5{F}Zf(b*1P^Fg+Sqw5!H;JS;mIpHZk_;% zu0liQV1W*t@XeLIQd`M2x0w@!5Sz~~R!m&nfWjMqT@(64|MFoD_L_i&;P|vR#~{M{ zK7C{oQ1N*kKLb?ZJy02oDl*YE!Y%AI&9+}v!xzG$#^66M)6#-VY2<|EtR;+n! zLqBVKwV_||WA>EeHNfxGrc3}TmYUIg`8xGjsmS%(ybz1CAOdtw#lcs@&;kP$uzP%h zI&4W;LCuLM!a?k!rU6SvsVI{aJA&GqF_eKl+d-M7BkVAOQg~9pje@A3ax%Oek!dU> zt_H@6g7~e$;dyRRgI1JwQgrKXJW~d%`xz>4ezaEU`JaN_0=e)ToSEpNHk2XM2Ec~e z3M#Yj4IHWV9PzpZk}0kvvXehPN@FoFlm@nyEZ}n3WZW5(XUF9sVb}9P;uv>zAtW9u zBk|CDBrdQQatvb&ghFu(V=r`4#$I+!ER4Mt&8CCB;C2^vnJ;jsM)Z)P9ag5j9nS@C zC9q&P5A9s25R0RUlbOJ7^#ycYDCx7}>c<)g)#+O-BH7SdB%Y+?&QCZ?Q5nm5Ii&A` zSh;Kwy(X=La2b0fwx<;Th*4^^n1)=5_FY1%x_{!aKF!H>|IWv`k!55*ry;`l`MLfk zw&^evw%|A%Flx&Zl!?fYEHyNpqe$$Rabgu#4IP+k#0Ie z!VSUB3qg(vg%A6)yt+PX;O(yfHh%eTR~^?gaey?W6i!BFkx;DM{wuB}xBrS8mfOGl zZa@4uni45Q>ZP*l{vOy=U#vq7TfUo;C1=$AW|`vjhAD^Im>#Sqkt@G+U|&w@ngC4K zj14E$wZ;D#b!i8zpuW6Nm+65cRtvZw>j0M^UfV@$nLA|~0%|6z(5&@o>uexT4e@T6 zNwcT*(F&j-&buvz4#FcO!Xy_Uc!YoZVALFH)p{IoX$Zr2y|iVI)&x(JA$*tOObJj9 zJ&i90+H;LWh_LglO}HL+Jaq0F0T{2CFK}@!hSoE#D(X%tX-BRA!8F+PltjpYHi#No zfjb9sVRGTL$A3py4J0l=ta(%r%)`DGxsKUx4}6(zk*m;72GqjSP6A{B z?+Zr|s2APQeTH6C=mE=8F0Nmq47Kdf5HUE9T=kmH6akfqT`N2gXh6Mm>Az*kBGf^s zu|4U)8kvfz&Z)mKT|=-?x9tNEm2tUZ(O*Pjqmjh4eJyFduW~{1Zz)bf=|g1<-={qT zY&O`=z7`?HRcB|fG1Nx`cSj`zFHF}iu<0DyVa+Tuw>wrGY!wxHXdGMUK(auuDRLl- zS$)IIO=G_PMRQ|L{VgBkrplY!W^su$atX@m&uynVMW8IyBwT6TQqhidV5+i;_flOa zt$6eaZr2}dBbM`;3VZYQq94}9WqD{dn))OtGdf3Z(AU82)HT^tGNWWc zEU)ocgE6B1pxCEajuC#Ez4`maub|)-^sB-(+oc+8YB#^qZavNa7{)7EV7&bP58B!^ zv@MB{qoPwyX$WXx-TuBW_5sKn@H39dTL)MykTa+s$mS}|mscv*U1Cxi+wl8}4zi4u zpBL*-R6^<$2{_z^(_lrZY4ewrvudo{1{4rLnxab0o*=$x9t__~%*3AY;mj6B5wlI( z#Aln(l@y#PCtb;lFzZSah4kM1zZuaTB$=%2gwniB9*G{huhM{2inZy5qm>;Yg_3iU zOU#~JLne(8k+JuI1d&!1{P zrcpVK#g7|yDp(RGNY*3VurTtcTsXiV#1Gk$t4%?zNWF1F+fMY4Wv7>~FI(C|3bITL zzCL`k6#pN4Zv!RQRo(g4y|=2Xx~e~_TVHK;%er+X+mhuEB{)(84%U%vS^mThWMJOP zyyvxsw^mkndj<(;Q6AU!|h#k^S6mYZQ8(o_p>-`|PvNKKtym&p!X-e}sd_(Uy6A zZLen2=W97lR8GkT`pJ~b&>g%%K-LEt*@Zp$vBxJ)Fco}E~N{lSK)mVK3n?h z#*-`Ju>%#^fBTST$K!&cdOVh*+UK5O9k;B2Js1oeL9KvA2X(i(oaoSNhZ57vtxN<_Zb{G@)(mjfa67j>X<6NXC;uGn7 zu%1lwq~B(z%&LF*`43Gzkkv%-b#RB-|4zvy>*N|{T!N!YU}YyM%A};1k9F*MhmS?g ztY79h?k;j$cQf3f1RghK*lwSxsV(FM;}PM&jhtKa2?i#cz^xD#R`R%Hd@*8uk7BfilhB+^;aw~S0@IHEP zv_09%xel@hYNSZ68gH_*r)=t`#+8~oivFS1D=LH3*=QvsItGIA7T2}rJFv0yBu@@} zJ$y(DI78}&Hc2(zpV5O>!%AWY8s^c+z&Q&H3}EZ-2Knbuy4^FXfPvo>r|3N2{dT?i zt6p=xpoDfK$CE+#dIgS{k|I)s znSJ_3u?(<{q4sFh{E}XvMHJFC(=%DKviTjvf~nLt5(x{q!7fs*@hzA5iS|pf4&~dg zd0!i-ODcpqsIql_d=j7WQMOjG0*rs9(?_s;GJk+H6iVy#+o;G61b}f8$g&Q{?ZHIb zGdSDD<5nv zjKgK8MG3|<9I+4^_hCXw`>)K#{A%LIlU*{)r(<}-sFTK;WMXaNZ1wX?7F$g1#X#3| zx1m2Yef2{wrJ6r!q_WR56VZ9(kY>`Aq}LnaeqSM@7*o^a!Fo-66j9D@eac6cLyBkxB+g+*v5q7s}J99(3+bRKNcaz(b zNgEd^b;ooO>hA5yZt{r5VGo3kw?#1f`a$d`&I6Lj#-X<9#pyMuZrwTii{CB1k%CtGae*y^?gxmha!D6E2o8o)f!z!8Pom7d+ zqokHKj93OG9JeS?Wwzm#80h%Vl(M9te6bD;S2fAyRcV7$Vy{4E_N>G`@RS{UpSZ8h zo0%nXt)il&<42_^0RZUm6#(s0^A`*uO2kZ}OX@G1{AH`ZOlpm<@k_S;0bNj{QPsF% zn>1l+c1!3mqt5Eqr~74mN^Q1Kl~GPjL+n*dcamX!7l1f3x?AL%M!Eti)%Na@Zjjh~ zMM^BIak19<+F%&!tc3-}d`KgKVO7_I@d2#5z_3&@?aEz1+PL5!;&Fk9oZ^e5ApS_P zxOUDW*8dz7JKvlxJ`HViz*2w%q=^j1*#{0n44&NIzbBp^gwNj1_OW$?-tJq-C&#`q#lJBFY`so>@?Im^H$j z^iVm5bIW|D%d1dt=-vX~c$4`Bk|H{Jou6JS1at33AVpKn4@Q{=5qCWm_1O?SrLe+@ zvTV50Sb);i7D5M6m>;iFL=5K} z_4u|!3fNTKq!tuPu0F%hbETQ)hY)p_6OiI_b0hA^+@FaSoULHdDFiEHxx^Y~+SSzS z>gC&DTtc211$WX%G^EODhw0B|ddR?o@b|+z(|4u=JJUPu;SSp3RNr8J*1E%29%I7_ z{WH1Qqz=mRAHI^&vFe_hS6rY!Wz|G8NrbAogDIfH)~V*lX`Vc2bX&cYQnh^p zNR}COjTEKEe~MXE4bES4Mf%S5(leCZH?JM33-L_Bu%>VE+)Dt zig$(4RJ?gPT!?R5^p-uwr8tmCQNYi^&uSin#MNG2)f$muSj{oSK_p;ko0+og!4vM)wbLyB5{c|6fqg(pI>gXf|?r6r&W28bm()x=Bj!bf)#%dIM#S_C(o z>???^lYL?FSCL&93$!|Bt3r4iarW(iDV_+*0VXT=YXZnB;0L0Ir5ba)6Oqci9Fss& zLtQtc3hfy3qR76NLAiOaW`zUpMDgKd@!^Hy!|b8m1ita#cV(rWt$SDzys%Ut|z&2 zu9Z8%^%Y!?bA1)pV_Yxb`XpDab}Vqci0e_V7jnIu>ls|{h$8{D! z7b_>v=febd;f6Fqb6cc8V!N}kg-Czy9+H0oyBMBcM0h#i1L(y&I)4fG#?a{h;%oY8 z&eN@H(oJ4FwoA=FHT`8Qd@!zt;q8= z-14H0XPP{mUBAC|ZMzzwPlEqukH1}N{;BCNW9jA`|8qS4=eWB){@4MycLB>}#L-{9}FI;t}USl85(G-y+y+ zUTb7jw4msJ_8$$W?A4C_U^i@l za`P|LQKa2t|5;`X_uw4^Y5lxX*}ZC)u2rt=qAOwgbLYRRqDk(HfdjoKSoPLY9vxUmP~#-$OkHV%C9}X**{* zMQ#gX)&ntH8sgj{h^-F9mV=z-wB;eTdLXuzhIs!Xh-n96>MR-xV~uc3dmyGuLwslv z#PuDB>m6EIIb{?R#PvN8*Dnomei20MX*u_t>DN3N9|iHu9*Acy4e{tAi0e8K*EwwC zWdds%#C1Io*DVe4kwp+EIuIwEX}%L4A_vKLarng25FcFxal8X@++m3*V+=GLIibD_ z;`q`KA2)~?yYo)Sszpx5wGI$vOy&lV;KN-2*De8&wGc_T3wP;S<*MbYJ}=+wQVzW~ zUkOnpDdZC)?8l0OtwdG7gxQ$c+*n6Q2{&ttakkku04P)=?(`(b~|JBWM@&aN967wU}6#jX`o;TKOF=;@SB}|w9_+mZXsZrI; z`0UP+anSCW2cU0awSH%eIYXw3R%u`*>aV@k#>^(R7&E+=o4p#XI7ouK2q{>aO!oUm{POb;e7eu8Kz2(b$~YZb7gHCO5`v1wSK4w$r+JwQ z>{esGRP&ktSEu3SoW!(IO=L`0Z;NI0U%4%os*ToE;_~0P zYK^k#s}Ouq%Ix?WZ2rR-ehE(;{oEmI2fKY&87&D~g>*gGDoVgYV*yYV-=zldw;z|> z)yDUxd&89bBE}|L^64F7cKvPCA%;kWPkHQsu#@!pS3N@u`DSD>3 za)&j+(eKsM%fyuiAaJGKi>RMBDV6-C z<}Xcu8B4dM!(RIz^V;*6d*XXo-D`wVMw|^0)1XUxRxss2pPWOiE#1la7)YOwkRE|d z`ko$WebycOAZ=cF9bQ6?^E`5PAv&*~n*K7DzA`<}(DU7F%zc$MwP-2rmS7ht4CW3# zxn${TOX)Mui{@He)CzCYJv0Bny%tI#@wZf$oRRzE(k_~eR%Fk(`!B!#xlfgMX(l~H z-;CZOC}i>?h&&hJ1IT#5ow&s0qhgV$?fb=%w3i($$mvbZ&r6~i&a^Ld+da5amKqkO z`FaXQ00OLlVN>nIHrDT<`C_ysCa*fLIUU%3{ENs)hH3H~kOR_13ZH?ASKXoc{X}m~ zA|hs2iyv5%#7@|z)|>tIFo=NnFEvB1A{uwuLEX&OMP|;ERoe3O=&!Chl!>mFb~IDbD{znm8J!H<&|=`3uqjb7?J~|+0>6iv$bg! zX+>TII3d zAdAJ1VsEhwc{SW|k?G23V9L|JW!~Buh%^_HGVzTt4t@LhXWt$sx|XV0xwHyAZT%hU zmsVT6YSD_r%(iv4cJr!yE={^|b8 z<$Ly6KVz1+nc16GtnqZ&3>4j7j7QsG^Y^eBr59_BJ)RVd`xOYwYn&{93p8>B_pDs= zT;t>RtWlq>@dBg-K-r2mzeI=&B0R6PC@dRt>i^h-eyA9c>_IMN}#AYmZyeo^l@|jwhq1MCB($7Z>Kj1Gkl)wM<~10{8Q6k#t20E<*$H%`}P<3 zWp5@X`r3F_)sR}@IBYYho#Fo88>G&VQ_=u2OEF7#3{q!!ar5_|`qKN2f2;2ApMS^u zt1>p>FzhT{4|I0xl&>YSCt8Arn4E9rA|+1Mue_u@nYP7@GL|Bbr7;aQD>K-!|8k9L z7YUgX7n`w3-oN`F>lXEh&UA)cEz;NMIPLJQi_+I9l#0I;5Qfx%Q=F7S1^KsBpbKX}h~>*)nRmF$L=&wc9iqOtbbSAD}t4-dD- zZ&;vsw$>E4#U_KP7j7vlAJ%VEi;j0}k1t~lRn7CwlO80u2A!|8sXV;U6V6DjQNewc zdTR;1Qg=6aDOi>tr>Mw8hBsrOgAER(Kd#!8xX`Qpfc$5C_2Wh(LrW2%`*Zyo6xrCJ zH32OKl-|Iwh7z4-o%>pPjZ!tnybC?*asjfhQp;&;2hHEdGtr1Ig3B7LZgsuyR%r}R zM>>atp-K(QsT9TbU1d)$y*XWllra6Yyt8HsLNS|t$qDTOKp=16zcF-MhC1Bi?)b^8 z#q8Z8LIwVT4sdMu<9^07QbRZ0xqrXvzKNuSb>r&+6y5yr{`8vtgk@wh(a_sw`fBTu zX3PEn1~LWrm9St`FbBN~T*Bs}=RfD|*t-4jeSLmHW9ffmGsTdFbXq#3>j8|4JMMs* z`}KwCM@VsxvU<-PIe)|X`f(eRY6I&ciCUvf(MIKH$h^#FNng94Tp=d-O54XHf992x z_Syz>cV1tcUI!Szxl`LMOW8G~T*GF->*N(j^Ak2o)v7cqLJ~=Xt^Yccfjj$e+gU## zzw&GSZF=1scu3?54czcrQ&w?+RkUK$$aW=BJ#qU-d(vE#2kJ@d1#;}5d}f5*H5|nl~Bd5H;?Zs z-&Vklrnx5VM;sZwGx;_Cv`v6uD!f|K{#|?6`hIPrb*)Ve*aJ+KQcF^75u2pfy$(h} z!eOmTuZ3x@6|Um*yq)~{dse|4LcL&(Hy}G1Fp9|xN*b5+IqTf>QMMXg$V8YtT0B(o ztw^5ihx~@=5x|3(SF3JyxUg~43u~ev+F*te_WVi#Sk)#zHlN#$$ z^YpcH+?0=rxI&_WfkzfQL@a)x70;vMDg1eh8(9yuev0)=M3j~>gTp^tMZ)%!!F0vu z7~Q&*{uHiZ=-VHG73o-^^LbP>qemOEz0thAR&6IL!<3;Ph%lKaG6bR1waIZqd57rL z-krRobwlT6>pBSniJh(ty)^5P%Z~wgEvu7Szw>BWtvSo3yW-biK&IlFl=zx6Cn0uI zyXx(!#%tllQ2FcA>uweJN5zplp_g^elpNIfwdoCT82`DyVM!jdkb@FYT@_k7wMd8d z{ST0C4T`wVyXF3LYJk$8)};K}LarN7#jeG%z4co7wZXOqwse}s!0uSwLsYLats}MR z3%2T;(`b)W5Yzm$xy1e8PYD-Ae|S97w6>)FS9TBlK>HkcvPLyuNy$w{KsztR_H}x{ zZnA5CxAvc5o2A`B!P|s_?CRIfBW+xxktMP#dEd%vwqYlc!bzsjpi^vW}? z^^Zzj+5G)Of0Px%6r6ioZhhRr101dnu7<`^2cB-pt9=3gkji*?z7Y%&(q7 zMPuZ3+T&G2cwx5C_U{_QCOjhHKr5yF(or-`uU&uic*^tX`*) zM(9d;k!TA8s`WZeH%o4T6`3DMFFyHHtQ+&xMr;)|Fz(Y*>nN*Q#}fMYsp^3Mgd+4qzN1#lGz3yzh6}eV*>t(M-!QG|u0un_OpP z(Ar2)9odhh466yX{BFaVJ;ja~bb6&0g{{1tpJ+a4qlKA$nHt$6tNP^AsV0^mq&LNz zgu9gA)PIQa7rQ&@NR&6STZRv`ZGmpnDv8s118Q3p2}7Xo!^BqSiYgvE zLJe{)n-4s{jeiyS9qJ+=WP}^g@X*@w*i*qCmzMngMP4z)@*sMellcyhg|&jEP;8^I zuK<>jSR_?5S(8yiZjaJ>(vt{WLT|S{?norr51_G(4)zp${8k!;n5#i31>kD7aCFIYkN|QAK@QR$}YrkZz^KI5sEh|r-s`%~Be8|(E`0xb+^GCn-C2|gGM<|edFK#qG zABRv6N7;#|zHhrpXc0xKP`tlL{T!c|aQ8;}-jMPpnzs>pwT^i8{rg6Da+Q`r;O}j) z4w51jiJJG70ZvDwV*>g{TWyFOCl@zw%0ydR7n2(ivOQMch#W+B&D{(HN?_3pW;<$c z#g6n$cKL}u*w$Ct5}QQ!0?`WH7sYI<0D&;DK3J4TTEMhRwFOIY&5vzD3Ne;4d^O)k zD|;}+N|*jCE;}kovV|Qtx^CVUKM@!?@l$52ow$0N`by5?{-N=2!w_J?&frJ%XXb2> zZKKOKt%+@8NrdLV#zLn$Lj*EN9*CoGh(!WKh$&rtxgJfP8}}rPR*2mtx8)>EB0Qyq zg4USCnVO|=DXWoHV-OE9u8~fUfB}5t-$1#`Op(|WKVC5|WN3G9C;p?zgLUpZAK}Oj zBrcwZri2>-=~kjA=J*e?ch!uh0KvkqEZTHIuk-u+?83^i_I`i}WmtoSG9)P=1gJhC ziyNe7HILTX29gq_0aY*0?7=9;o1+?@Xg__80`Wr3vE06ZP#Y`3cMq|LuVnLYO!~%# zJl+Zi#k7VrZQp@Kik}}Lb#3B^GC=?iPmtgJO>GuHr&5f-sPQ||DOyL&=9{I{2whmd z)%~P!>{Qig{(FJuDnju|L?wm<4_L=y#F@}5vyn|`!}_1n=}$_lG)@ZT z(2i}nX4E@cY5oS1SM6tugb-It+CmW_`7}JLUj+LD3K$7GwA>N(TCRk8u@<~LJX=>| zNKvROf_0Z#k#9zW=uX5MAGgJ<9m{oh1}6=C++t$tx1aU;XyckDV31=)4yRlUgAFdVA$XHNjSWtv>v1ltJbsE5q#pP%v>oB#^GXB1kp|B z>rD|9vK{@5ZlxJD8XjW^GA(6tlZ*aATQQZ4;n)YH-vVs0k73k;6X&RR>Y%-L?kjBk zY5t#Ca=9qLAnbd938Q|U#)Nqh@Lv75DrwfD9x@ijP6sN}HvHrq268cs+589x$k>2$ zPgHU*ez5Ki&dGr9=I83}$cOFr=!fe>Dzw{2?yb9f?z7uR@2k7H`|bAe`|Ixh2kds? zfx3Iq-`@S}bvOH~byBlBfF_49?vbd4kG(H^y) z=99DqkQm3?;)|JiaL17{d;Q%(*dL3WrKXw@+T8*w(1KLC4cfHPnNgy-{*OpJdfKTa};4B zNhGV38JLLK!stX0Ap{y7L}E$@p_iLqRbUaqG1y>_Gm)2h5tD4zfONhQ-a92m5QTBE z?gY%E5ijT$;rJtjpH^Pg4RnyVCsk}pQ`fav#g)CJXZp0JpHfz(PzC4KzC;dDeAn9k#Be?>0HjdEn!6p_;g+!!m? zrWid-cySjrPnsG@0={J_H+jiWsC~;sG~iQYprKBxR#yy$r?R5F)7x*h8@(6r1EOOCx9bSv`T$Y z!LZ=D!Dy}%?jR=F zN*PWPqK#Qq9+Ak#2%sx#g|G>~!;Bi7WI&!7#oQ)G{sr@B&Q@?4vfldM6%wf!u^ z(b3r21RT*6@kB9|5IRt_L%UHgK*v*TH6g6g3;Zr;)I4yN8KV4>gK4k?A=4@X@~2&b zaiN#|)C&#Pz)9sd$)f22TSQIA6+}9cNBmj-0ypJRP07awib!W1>hDymy6}#3RL`FQdR|9*p*VXnkvJz5+ zoU=H=jyIZQWGK|OIy4E!vBx&VgKXW?N*jAKiCtONe+3pIJ_9&3FXHsr+aR*`qp)4Ljp@cb-K551$= z9IEx#n=4i{@ivUhmA>le$g08SKy%f~RgGk1c-71QUZ%jy6nL2eFH_)U3cO5#|Me)q zP~Tj!$|mwC)F^*Uy>zq!)2y&#XZEe^AwgSJI*O{?sAO*>L^_$#k^0Q)z-sF$phRzB z(fRbC;H8_mu=Y?!kxT5X<+Sho5_8YcRF?Sy1^)1r)lP)GMyEqQ+X1w=g%?v1@5N;RFOBMH14fHo z2Czt+v5~+NVvifxXVJ+{{$9TwDJ5=5t9vvJQP8rGEWXeIHY^9X`E_w^hKhwMr*Zs+ zP<(bap6dO6X?|xrWe4##j0;MN*%e$MFxUBTYCi;6;sX@GVjEGMA1;QWNI~cgf6_@W zvuTl}n)gPSuE6yQ4eeb*#q~sM$$3QKU74*f;(7`Mm@n5e|EbCa#ZxnSy{l5pzN|Kz zq18w`BG$;xJR+7HxOIx)spSn8)dHakQtPy34er_n2ssxl-GZmb6GYi~NvdO>lJ%uc zd3jY~WGJ=zNyVClp9$n4gx~UrAfhZn=puO>6GbxCYa@&2odh!77Yk2gUk~OlHA{ zoJp{kf?g&f$Dkd+1mz`9%Qib+c#QyvGM|9oTET3XG+x zuM(4tU{?EdSB4g2d!a(vK5sItrO9~=bSJ&&kZ~+=_zJP{jQ)r~9FjG{hpWdLpAM@P z77Z?D#Rw~~vWXBq*1heZZ66Jlqkgnok`A65-%-|*+BLorXBczc{+ngyoW(LYU@LSh zrbaem5sJfl1?C6sNRsX1O^tW2Sl+ctAUP=5LzZg}=3J~F@A#nh+^{hJrf|BpH(e+j zM}5jP@q^*0)E#r><)@b^@G=EnrohV-c$oq(Q{aDX3M2_G+o)JtT9U)61(a_7yv~2-69#?4$##xDpFot# z@JZDtFeeWQps4)~{n~9!QM$0NNEgoN(PhkEQh(XxFI)X(GVPaV061$6t)vCn-J&u( zkab#syd3nvAp#`oZZ6)Q;8|2^{>>Ie?PKa}_8YX~36>*aMHYo|%0Z=Xn3i0d8mZzx zX10&pbgUx|RPQ$juzvTVZltI`L{l>V=1(Vc_M-*MDFpr7&NczLN0?0TEh$gSOOH}; z(RkWce_8r033VaImQs8oz`6;4L46!QVjbB)+eu5`&3B|Yx!`b`V^(@t$2l+`RDJ_s zZ@S)6Nv#4m-dT>4+tN~dL)a{5YHaFxRw#Os=OB;h{%9ne*zdSslfli&^;yhz&lp_U zRg*y|ZT{pa#Ge|pjO@GQ4jOJw7NSh)d9@DOAv1>Ho2^vknWZ6AlJ1EJaI2MvvlRR7 zv}|fKI-Q+xx@A7uUFO}LGT+)R^Ul*M^TyLI^H_J8bDc70xrMx{+`-c-^k=igYOXJc z9iJv5ZfrzkRwf#SdwX~W^0LKGZ}je=PQiC}3ckCm;KV50ID-$E0cOT?xNqXi)(5>^ zrLmix0dBJSK%^ZW;%mDM_zPz?DsjSJsF|M5^B360oux=!>}cbw#yv5Ra2wd+=5dOL zz1?4b;;(*9J`e8OLnAeO#N;b)X_$H&ZuWQT@|44qm9NxC&coZAy#S~EwWO=x8gMaZ zj}L+yUUcR(grWAI4M;~n$bHjq**Xst*#ytr_J_c$WOzXW@G7y3Li=7eQ$_PnP%BVv ztFU?svufWe#{T5ZXe$4r-CU(k4)-_jA8tII;PAhkFFtgTBjgcn7!9QYB_oQV0~+#17$7+wVm55beNI0_fro z-h4vR2-eUr0kG@+(+f)F@x}1=4&2G~e5bB&=LR3PlH&-sw{kf*Y<<|Itq(i{t#b$o z&lLJ*f0@!5@UL&u`Ud&zo)DIjtEkSO&ILDg6KF>1a7i7eu zNt(Zmlol9HrVjua4!A={LE7p~nW6q;;hZ51+=yTGG0x!7(?!|9p{##0o=gYyxRpno7i0f) zo?f;l}evaAIgR&<5Zz|&xM=ohd9s; z2RJ>g)XVWnXl{>9y@dY$X&`GJ%IcHsh~m(!a|wFZJVZ=wLd)o>oUJ&NH7DWEmxrLFXMhN9XXT@PU0mQ6QODJP_|(bp%ka1>B>Xd$Ry$_PFJR@ z4rQa0@kZ`frDKP(iAjW7OpLiR4rMDR@dJ(tmP3K7CgXv$b!n+oy5vYod1KVEe(2JV z{_>kIIg+hD43&Ahb^NkFJd&M#7-YvU{o=>|4X=penf4#P^s;ro{mCQQIXpBEUHUT< z`+2kO(4p2^0+RMC>9Jqh$d{WArQ?T*4!$9jL%ACb-B8Z@!&Go(Ue4yjt+UdJP!8wR zrGt4n=kl;BFXv3kSwjrfK_&Tewj4?)4ikNxiu1`0TzCK-Z=+Z5>QvdA2L#@?xwOL#)qjTk#mZldT&QeELLSJSN>&@I^hIa9l zDQ7US#nR11GwzOm`s30R?RDgk7?JM@Fo27yy_?P73F2&IIU+FfZ=cTJPO7v{`ms*> zY()HywTH9Spu6VqrLRBoi5*9>H6k$ujZ6V*&EZT32nv(?^Y0A**yE%4RrdDy_XD1K zTMDQUR@Gj9GyfD+{FfeH-mBiVeki)!7+MRX2a-vG)m7&Hyx(i zAoJ+5{pnfhx#^a}@Hg09dh4qPL38LZlNk^Ft{h6BQJ(%n5vLo46I(l})Q~{>PoK>{ zos`e9Ui$PWJLxwfD;grhSy1EBFa7&pEzoGVher40pNU2%J;O^nd!Q$Z_@u(8NQ>w5 zZztuy-J#K=o%B>RQkchc6wQveZ$U)ZWfTzn&IdCmK;W@@n({QJ~RK4~_25KT|c1_tNP3B0gJ% z57UJ+;^b7KiPqbP;$w?!w!+mOyk_mVp8c7mzC__@k{0|8$189*MG0ozvJGJ zwsXgQ&A*IVeV2XmLu)Vm%Z<-p!sj^ou9*77qO3nf)?bM4V_i&TFi|hL(JQl<<3j_i zlG6VjUoKzVCMzyvIC%+rNy&{|Js(nNvg=u#$fOx|m>!h%sDP+q)0Xu3LdfYV2BcG2`uQi>zi z6)oytzn0$m8aXNFF1Z&YPYJcq+pX+0b@0H5RdO3;!$LtTsfpBp2@equNug}vDza*9 z^4M4kdZYBt?wrvc%n!ZUEd{Q-OCu}a${w}J4jc|>7*35Z^~a3^Bezl#GFvOhA?l3X z)wZKk*$Q&^ts zx1;~t-5a;ZZ}fLJZjW#DcR#y5{#k$b=Ito-mhY|GnE}wLsTe5Ju^QYRF(3Mm9#S$= zv4nt&kN78Mn>>}n6D-D4pPr;@cpwXQ}^h2?~d14M*-ud76#05k1bv zl&9yi6bxO%b6>W?p8ND12%8c7Al&*?qiCk%n`b?7Ew9lO4UJS!UQ0Eqnrb%d34E9e zaX=IZ4g>@VxBv!Gz#z^z2a{(}+GB_k#I+ zc|C?Y*>g6hIjJ5)PCRh4f$FW)A8tx5D` z%x?{%Cu4qV4$dpencw#U@Fp#1{&rK4mNS35AxO)aKW_#h9?K$7YP@SGUgeJstSxN{ zPi)Sd)_fon&70Y%iBM^+Om@I8s(e^mWqs^-A=^~!CAr@&xA?m)-pL~ zX@EzYaC1L_YX~nfyQgVYFUJV#ZgXmTV$0%Gc80=}*ke;KR|D3b1~Pb+4YM4+qc3Yb zGA*32>1I00oo3Uc=_-x} z+ZJZit4Y;dnwb};#cNM(%oJ-asRQUgE7IX<1P|u&DFV=Eqt4EG9ixYMc!&VyAsJFp zg?{44@15WIiy!^ar>eKfkBr#$d|ma)-+J3;zy5PRxym`4oA`Jb`jw~Wci!=T{q{Y# z`d1vlAf!3(n74Q)Re6}?0eWB+g8cPq5ALrYy89Om+-sm$jkvff`omxRuix$qWhk%D z`q5_}JsA)}#b=F%B7f`gKmPR3`NHqvB|{&#e6Gd? zAzYAjxhTUW=ob0^_za|~J<_3RdqHl(3F=dTTxO*VrbCNJrH?{tky2B9ex7~Q$NX}j zn^=8QfK*HAbiY0!c`*;5giTBrF~6=HEP%cVeF{Wd>4A2Wg7GMCt^(1RqX1;0m%@s5 z73%D3Q=l5PAw&+iUqmrXRXx=|FO## zmYQccYIxP|FEA{ar0tYRJ=v-kz~E&pz!{ENB_wTrprkNzc9z7LV0;O{JP>P5u!bZd1ikP0A zR51w#hph~Fh(cTPwQnBfU8oWS4gBQ&bIH4uQy*<4nngwxG z!32KBE&MWL!C(8vFFsufUAIu-BgJw&($cdT83m($4=+7YG<0K!>7}t~L;q$a>x756yD=he)nDsFvaY;h- z_}@zI+3oCys_Gzeb^tA{sHKVlN1ktyho@*7fF;)2b-ZkwIJcWC2rX7Jn0B8p^tG-zI>5JffXglSUkzY-(g2SpeG{r+WU>_Qv}M;(-I}S;PPT)m&Z# znAa*9zc!`E`-RbWziPV>+nd=~&t#b`lSh$F^5;JP+-J{@Ieh@bq&`52G~diq{heTG zVwb1-JD)n#PW5-8+(@`-a<6fC{x-uU@nt7DE*1Y=$)BtKxf*b@xZMWE-}&+y?ehGc zPaSNh`a7RG+)nj(x9z_*8`(LA;#(m&0+uPvSQX}S+RmcGEU%WEk~34lP;Lq!93B(8 zgjtN40`RoL6oBPl5p1h(XOXYlC}4i@nsck#n)X}uIZl=YT1B&bySa@yhmy+kn#|kH zZA>PV)Hl!4n38BDmceZLZP2t%5?buG7Dl$bp)#A8ho)lf%O>IWh0Vf4Yqi$vg>NL5 zrvMcitkt5*{p#hKrD%88e3lsk5eRJ1z%I-;S`v-dI?Iy4{A^32{aWW(5}0qYB$}|b znW0)D`vb14cR(hFFdx{1$q(MvUMSCB=Q{c%9c%oi`@K`itIuK%TBkZFkCg$Rnz$6u|%Zy45IP4`D71cFx zAwVu<>26E9nWdbw(hX^g6})w*L}xHtT#>HY-~I12Isscez=Qd%ma)v1(P4PMi=x}A z(d6tG^$ct`NSy`sez*qyu}9zWXY-D~;5+_o-tiZF$Da)yf1%y+bC!|#!N6gyiL5Sk z{DpSM&zZ&YwmW`K*>=Y-wL3neW_QPDbQpP1=ISaDph}JVB0qfVEb`f?5K?Y7QcSt1 zd2ow+wAUNwJLZj}7#y3w5=(s#TU-*wM$(@;DaI*_RD(sn;yyA*3>4^L zrxhX)!=qX0=?5kEOLG>9wBl~JR}Dg|(xU}u<9I`g2!3?t;-W#8yD_DqwG#zOcU-k8 zNb#+zjfaxBav<4nh%XgsI4u+E5rx4kD!8d0|8rA*K9N#^isA2)}!p1tnmua~E`B&B=tws}0s z6-{?<^XcfpmRC5m6eOi+_SY|FRZBHubbH`cQ|`Z_YD{ZiR>0?R?{OP|y!q8F?S@iC zDmj8X?v-NV@#0F*Uk=`Z!3%hV1tn0m>3GEFEXnMp#7Rn*>Vx8AUl?VCdR7JgahUh( z?%(27RTb_y)%vFKs&cNcQH_HSJz?4;FrNS>jpM6iB%Sp-bqss`RU;X~IX2!8iYxwv7L%EZ@bA@1Uvo#P!(13^)$oVHk}4aEtEPcqkJgk9T!hM{7%QsUfhA_ z4`jm}$Fnp21&jo&OR=o;L0}F)h@|n@lJuOChIW4Iujer_g3_nX~h0a(v94P4KLHp! z(DtGzB(jVSq$LXpFI!4EZD_k&>56pVX4LIHT1%%Pv2L)-Ps|h1LM<7P5u#N!u?gR> zSB2W36#Iw~-Q0hnYx?E@i5KmK^^`|H zW&^H2l+eC9sh1A(Mp_yt2BW1Nr04m&quedcu&^V?e}qGUx- z$=UaL%2Doa=35lTtSBRJzWVKY8AzA@|p0EOf)Uzh38duDdj#o1|A8Fq`-oAUH zefJc1Hq&+04o#1d$Yj;Cjsb16nvtEP*hTwH@DfOiPVg3!rAA3iWbWXjs&)mr=;y_R zaD=P}-ZGP~p&z^C-sX)<)=z~-9T?>f45OcaE!sQdJ-UxA;l!MPgz>9Qdl>%UV<6Ec zr*HRTa5Af5M(KOo@8&*qUp5k+z${PiqI;Oqt2-YNV6>@bo^#o6EX101rn~JMbskSu zz}#a=n#30fZFBXsihTd@eNp_117rE_hq;M@c%Pf_;{7SyFBQHU1)P}d&|?2owwcii z>ipn)C`(snWji?zZgJ0$m$SFYMp|H)XGud@kr!vpBXNvd?H*2ULDcx9r%8ga_Q0H- z9;FjmSU7OaD?KEQqmlL(+&MAT!a2yzay^&p3oJ2h;d+wmd0bC$J)i3{TsLw(#&v}2 zlU#9?bPHV1)Rje{^;}uLTAS8eX}qKJC+*erqofq+2xT0sZ`Zj=(vY^r&&44pzP@I6 zSKvYJQuTVsgox6%h6v@k`MKVL)gEEgOJAT`d+SaE3s*tFy#xQc% zb8^>BJmHaK4A!bjRKZuNj?LEOIph2o&uy`BTf#fWpAM0;nqqO7XX+eh8}n**BWEeV z0UBLl@2Ru~m1OZpEmF;WR9-fdwJTq-%CApXPw&HUqF4&6K~t_WVw%d;GD_y9QkC;d z47^@nyf9M8gLogONpZ@~fpqm=K14}kZZD1NY3X#7bhGfFXcnAkaWut;-^mR7;a@=C zEt$TX@EHT`Dr;x4B;>dA%~-hT6Cau8C$6Ohv(;AR1d>^mi**%8SY0{MuwB<$p{})1 z*Mz#Vy@~p%Y@PA8n!j3J*R;2mt5i$uNLpG>)u268z=~w=MFr*sP@%%|$2Op|O|H_` zh5JuI47%Yqs0H0jZC=%rb#eFeh3{kjNANfOIfYF`;k{BS13#3dIn!P8_BGKcwq9i% zZIXzM0xqS6?BlGDeQm&$U|I##4#S%uO8fWWw}2o*vquoA`P&kjFc7(f9#o$Xa!AJj zs+aQ#n5iEc+X^!iIAOaD^pw_#*)=^wa`WQ>4Lf2m^#!Hv88Z69UK#5 z)RYxS�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�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 F`!6m_*~kC@ literal 0 HcmV?d00001 diff --git a/vite_vue_ts/public/dist/missile-512mb.js b/vite_vue_ts/public/dist/missile-512mb.js new file mode 100644 index 00000000..3f209c96 --- /dev/null +++ b/vite_vue_ts/public/dist/missile-512mb.js @@ -0,0 +1,7062 @@ +var ENVIRONMENT_IS_PTHREAD = true; +var Module = typeof Module !== "undefined" ? Module : {}; +var moduleOverrides = {}; +var key; +for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key] + } +} +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = function(status, toThrow) { + throw toThrow +}; +var ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_HAS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === "object"; +ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; +ENVIRONMENT_HAS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string"; +ENVIRONMENT_IS_NODE = ENVIRONMENT_HAS_NODE && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; +if (Module["ENVIRONMENT"]) { + throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)") +} +var scriptDirectory = ""; + +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory) + } + return scriptDirectory + path +} +var read_, readAsync, readBinary, setWindowTitle; +if (ENVIRONMENT_IS_NODE) { + scriptDirectory = __dirname + "/"; + var nodeFS; + var nodePath; + read_ = function shell_read(filename, binary) { + var ret; + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + ret = nodeFS["readFileSync"](filename); + return binary ? ret : ret.toString() + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret) + } + assert(ret.buffer); + return ret + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; + +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} + +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} + +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(35); + +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 35; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} + +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var getTempRet0 = function() { + return tempRet0 +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} + +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 4928, + "element": "anyfunc" +}); +var ABORT = false; +var EXITSTATUS = 0; + +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} + +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} + +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} + +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_NONE = 3; + +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++ >> 0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} + +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; + +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (u8Array[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { + return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) + } else { + var str = ""; + while (idx < endPtr) { + var u0 = u8Array[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + } + return str +} + +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; + +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +var STACK_BASE = 1398016, + STACK_MAX = 6640896, + DYNAMIC_BASE = 6640896, + DYNAMICTOP_PTR = 1397792; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 536870912; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] +} else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE + }) +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; + +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} + +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} + +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +}(function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); + +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} + +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null : callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; + +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} + +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} + +function preMain() { + checkStackCookie(); + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} + +function exitRuntime() { + checkStackCookie(); + runtimeExited = true +} + +function postRun() { + checkStackCookie(); + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} + +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} + +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; + +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +var dataURIPrefix = "data:application/octet-stream;base64,"; + +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-512mb-v20220706.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch (err) { + abort(err) + } +} + +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }).catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} + +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + removeRunDependency("wasm-instantiate") + } + addRunDependency("wasm-instantiate"); + var trueModule = Module; + + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"]) + } + + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}]; + +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +__ATINIT__.push({ + func: function() { + ___emscripten_environ_constructor() + } +}); +var tempDoublePtr = 1398e3; +assert(tempDoublePtr % 8 == 0); + +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} + +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]" + }) +} + +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch (e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} + +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +var ENV = {}; + +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} + +function ___lock() {} + +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !!p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else + while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + }(fromHeap ? HEAP8 : buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + var src = populate ? remote : local; + var dst = populate ? local : remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch (e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== "." && p !== ".." + } + + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor.continue() + } + } catch (e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch (e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch (e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path + } + path = path ? node.name + "/" + path : node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !!node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch (e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch (e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray) + }, onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch (e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 80 >> 2] = tempI64[0], HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; + +function ___syscall221(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: { + return -28 + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall3(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall5(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___unlock() {} + +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} + +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} + +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >> 2] = tempI64[0], HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} + +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} + +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} + +function _abort() { + abort() +} + +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} + +function _emscripten_get_now() { + abort() +} + +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} + +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return -1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} + +function _emscripten_get_heap_size() { + return HEAP8.length +} + +function _emscripten_is_main_browser_thread() { + return !ENVIRONMENT_IS_WORKER +} + +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} + +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined"; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" || !ENVIRONMENT_IS_FETCH_WORKER) addRunDependency("library_fetch_init") + } +}; + +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch (e) { + if (onerror) onerror(fetch, xhr, e) + } +} + +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError : fetchAttrPersistFile ? performCachedXhr : performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess : reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +var _fabs = Math_abs; + +function _getenv(name) { + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} + +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone = (stringToUTF8("GMT", 1397888, 4), 1397888); + +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} + +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} + +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} + +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} + +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} + +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; + +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} + +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} + +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} + +function _usleep(useconds) { + var msec = useconds / 1e3; + if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { + var start = self["performance"]["now"](); + while (self["performance"]["now"]() - start < msec) {} + } else { + var start = Date.now(); + while (Date.now() - start < msec) {} + } + return 0 +} +Module["_usleep"] = _usleep; + +function _nanosleep(rqtp, rmtp) { + if (rqtp === 0) { + ___setErrNo(28); + return -1 + } + var seconds = HEAP32[rqtp >> 2]; + var nanoseconds = HEAP32[rqtp + 4 >> 2]; + if (nanoseconds < 0 || nanoseconds > 999999999 || seconds < 0) { + ___setErrNo(28); + return -1 + } + if (rmtp !== 0) { + HEAP32[rmtp >> 2] = 0; + HEAP32[rmtp + 4 >> 2] = 0 + } + return _usleep(seconds * 1e6 + nanoseconds / 1e3) +} + +function _pthread_cond_destroy() { + return 0 +} + +function _pthread_cond_init() { + return 0 +} + +function _pthread_create() { + return 6 +} + +function _pthread_join() {} + +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} + +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} + +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} + +function _sysconf(name) { + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return -1 +} + +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +Fetch.staticInit(); + +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2919", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "_context_to_name_6206", "_resample_flush", "___stdio_close", "___emscripten_stdout_close", "_releaseSniffStreamFunc", "_naluLListLengthFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_g711_releaseFunc", "_g711_decodeVideoFrameFunc", "_g711_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_g711_initFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare"]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "_set_compensation", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_g711_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_g711_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "_pushBufferFunc", "_g711_setSniffStreamCodecTypeFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", "_resample_common_int16", "_resample_linear_int16", "_resample_common_int32", "_resample_linear_int32", "_resample_common_float", "_resample_linear_float", "_resample_common_double", "_resample_linear_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_multiple_resample", "_invert_initial_buffer", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiidiiddii = [0, "jsCall_iiiiiiidiiddii_0", "jsCall_iiiiiiidiiddii_1", "jsCall_iiiiiiidiiddii_2", "jsCall_iiiiiiidiiddii_3", "jsCall_iiiiiiidiiddii_4", "jsCall_iiiiiiidiiddii_5", "jsCall_iiiiiiidiiddii_6", "jsCall_iiiiiiidiiddii_7", "jsCall_iiiiiiidiiddii_8", "jsCall_iiiiiiidiiddii_9", "jsCall_iiiiiiidiiddii_10", "jsCall_iiiiiiidiiddii_11", "jsCall_iiiiiiidiiddii_12", "jsCall_iiiiiiidiiddii_13", "jsCall_iiiiiiidiiddii_14", "jsCall_iiiiiiidiiddii_15", "jsCall_iiiiiiidiiddii_16", "jsCall_iiiiiiidiiddii_17", "jsCall_iiiiiiidiiddii_18", "jsCall_iiiiiiidiiddii_19", "jsCall_iiiiiiidiiddii_20", "jsCall_iiiiiiidiiddii_21", "jsCall_iiiiiiidiiddii_22", "jsCall_iiiiiiidiiddii_23", "jsCall_iiiiiiidiiddii_24", "jsCall_iiiiiiidiiddii_25", "jsCall_iiiiiiidiiddii_26", "jsCall_iiiiiiidiiddii_27", "jsCall_iiiiiiidiiddii_28", "jsCall_iiiiiiidiiddii_29", "jsCall_iiiiiiidiiddii_30", "jsCall_iiiiiiidiiddii_31", "jsCall_iiiiiiidiiddii_32", "jsCall_iiiiiiidiiddii_33", "jsCall_iiiiiiidiiddii_34", "_resample_init", 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]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", 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]; +var debug_table_jii = [0, "jsCall_jii_0", "jsCall_jii_1", "jsCall_jii_2", "jsCall_jii_3", "jsCall_jii_4", "jsCall_jii_5", "jsCall_jii_6", "jsCall_jii_7", "jsCall_jii_8", "jsCall_jii_9", "jsCall_jii_10", "jsCall_jii_11", "jsCall_jii_12", "jsCall_jii_13", "jsCall_jii_14", "jsCall_jii_15", "jsCall_jii_16", "jsCall_jii_17", "jsCall_jii_18", "jsCall_jii_19", "jsCall_jii_20", "jsCall_jii_21", "jsCall_jii_22", "jsCall_jii_23", "jsCall_jii_24", "jsCall_jii_25", "jsCall_jii_26", "jsCall_jii_27", "jsCall_jii_28", "jsCall_jii_29", "jsCall_jii_30", "jsCall_jii_31", "jsCall_jii_32", "jsCall_jii_33", "jsCall_jii_34", "_get_out_samples", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "_io_read_seek", 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]; +var debug_table_jij = [0, "jsCall_jij_0", "jsCall_jij_1", "jsCall_jij_2", "jsCall_jij_3", "jsCall_jij_4", "jsCall_jij_5", "jsCall_jij_6", "jsCall_jij_7", "jsCall_jij_8", "jsCall_jij_9", "jsCall_jij_10", "jsCall_jij_11", "jsCall_jij_12", "jsCall_jij_13", "jsCall_jij_14", "jsCall_jij_15", "jsCall_jij_16", "jsCall_jij_17", "jsCall_jij_18", "jsCall_jij_19", "jsCall_jij_20", "jsCall_jij_21", "jsCall_jij_22", "jsCall_jij_23", "jsCall_jij_24", "jsCall_jij_25", "jsCall_jij_26", "jsCall_jij_27", "jsCall_jij_28", "jsCall_jij_29", "jsCall_jij_30", "jsCall_jij_31", "jsCall_jij_32", "jsCall_jij_33", "jsCall_jij_34", "_get_delay", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", 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]; +var debug_table_vdiidiiiiii = [0, "jsCall_vdiidiiiiii_0", "jsCall_vdiidiiiiii_1", "jsCall_vdiidiiiiii_2", "jsCall_vdiidiiiiii_3", "jsCall_vdiidiiiiii_4", "jsCall_vdiidiiiiii_5", "jsCall_vdiidiiiiii_6", "jsCall_vdiidiiiiii_7", "jsCall_vdiidiiiiii_8", "jsCall_vdiidiiiiii_9", "jsCall_vdiidiiiiii_10", "jsCall_vdiidiiiiii_11", "jsCall_vdiidiiiiii_12", "jsCall_vdiidiiiiii_13", "jsCall_vdiidiiiiii_14", "jsCall_vdiidiiiiii_15", "jsCall_vdiidiiiiii_16", "jsCall_vdiidiiiiii_17", "jsCall_vdiidiiiiii_18", "jsCall_vdiidiiiiii_19", "jsCall_vdiidiiiiii_20", "jsCall_vdiidiiiiii_21", "jsCall_vdiidiiiiii_22", "jsCall_vdiidiiiiii_23", "jsCall_vdiidiiiiii_24", "jsCall_vdiidiiiiii_25", "jsCall_vdiidiiiiii_26", "jsCall_vdiidiiiiii_27", "jsCall_vdiidiiiiii_28", "jsCall_vdiidiiiiii_29", "jsCall_vdiidiiiiii_30", "jsCall_vdiidiiiiii_31", "jsCall_vdiidiiiiii_32", "jsCall_vdiidiiiiii_33", "jsCall_vdiidiiiiii_34", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3923", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_resample_free", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", 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, 0, 0, 0, 0]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", "_cpy1", "_cpy2", "_cpy4", "_cpy8", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiid = [0, "jsCall_viiid_0", "jsCall_viiid_1", "jsCall_viiid_2", "jsCall_viiid_3", "jsCall_viiid_4", "jsCall_viiid_5", "jsCall_viiid_6", "jsCall_viiid_7", "jsCall_viiid_8", "jsCall_viiid_9", "jsCall_viiid_10", "jsCall_viiid_11", "jsCall_viiid_12", "jsCall_viiid_13", "jsCall_viiid_14", "jsCall_viiid_15", "jsCall_viiid_16", "jsCall_viiid_17", "jsCall_viiid_18", "jsCall_viiid_19", "jsCall_viiid_20", "jsCall_viiid_21", "jsCall_viiid_22", "jsCall_viiid_23", "jsCall_viiid_24", "jsCall_viiid_25", "jsCall_viiid_26", "jsCall_viiid_27", "jsCall_viiid_28", "jsCall_viiid_29", "jsCall_viiid_30", "jsCall_viiid_31", "jsCall_viiid_32", "jsCall_viiid_33", "jsCall_viiid_34", 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]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", "_mix6to2_s16", "_mix8to2_s16", "_mix6to2_clip_s16", "_mix8to2_clip_s16", "_mix6to2_float", "_mix8to2_float", "_mix6to2_double", "_mix8to2_double", "_mix6to2_s32", "_mix8to2_s32", 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S64", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", "_copy_s16", "_copy_clip_s16", "_copy_float", "_copy_double", "_copy_s32", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", 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]; +var debug_table_viiiiiddi = [0, "jsCall_viiiiiddi_0", "jsCall_viiiiiddi_1", "jsCall_viiiiiddi_2", "jsCall_viiiiiddi_3", "jsCall_viiiiiddi_4", "jsCall_viiiiiddi_5", "jsCall_viiiiiddi_6", "jsCall_viiiiiddi_7", "jsCall_viiiiiddi_8", "jsCall_viiiiiddi_9", "jsCall_viiiiiddi_10", "jsCall_viiiiiddi_11", "jsCall_viiiiiddi_12", "jsCall_viiiiiddi_13", "jsCall_viiiiiddi_14", "jsCall_viiiiiddi_15", "jsCall_viiiiiddi_16", "jsCall_viiiiiddi_17", "jsCall_viiiiiddi_18", "jsCall_viiiiiddi_19", "jsCall_viiiiiddi_20", "jsCall_viiiiiddi_21", "jsCall_viiiiiddi_22", "jsCall_viiiiiddi_23", "jsCall_viiiiiddi_24", "jsCall_viiiiiddi_25", "jsCall_viiiiiddi_26", "jsCall_viiiiiddi_27", "jsCall_viiiiiddi_28", "jsCall_viiiiiddi_29", "jsCall_viiiiiddi_30", "jsCall_viiiiiddi_31", "jsCall_viiiiiddi_32", "jsCall_viiiiiddi_33", "jsCall_viiiiiddi_34", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", "_sum2_s16", "_sum2_clip_s16", "_sum2_float", "_sum2_double", "_sum2_s32", 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, 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, 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]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8"]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8"]; +var debug_table_viiijj = [0, "jsCall_viiijj_0", "jsCall_viiijj_1", "jsCall_viiijj_2", "jsCall_viiijj_3", "jsCall_viiijj_4", "jsCall_viiijj_5", "jsCall_viiijj_6", "jsCall_viiijj_7", "jsCall_viiijj_8", "jsCall_viiijj_9", "jsCall_viiijj_10", "jsCall_viiijj_11", "jsCall_viiijj_12", "jsCall_viiijj_13", "jsCall_viiijj_14", "jsCall_viiijj_15", "jsCall_viiijj_16", "jsCall_viiijj_17", "jsCall_viiijj_18", "jsCall_viiijj_19", "jsCall_viiijj_20", "jsCall_viiijj_21", "jsCall_viiijj_22", "jsCall_viiijj_23", "jsCall_viiijj_24", "jsCall_viiijj_25", "jsCall_viiijj_26", "jsCall_viiijj_27", "jsCall_viiijj_28", "jsCall_viiijj_29", "jsCall_viiijj_30", "jsCall_viiijj_31", "jsCall_viiijj_32", "jsCall_viiijj_33", "jsCall_viiijj_34", "_resample_one_int16", "_resample_one_int32", "_resample_one_float", "_resample_one_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiidiiddii": debug_table_iiiiiiidiiddii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jii": debug_table_jii, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jij": debug_table_jij, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vdiidiiiiii": debug_table_vdiidiiiiii, + "vi": debug_table_vi, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiid": debug_table_viiid, + "viiii": debug_table_viiii, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiiddi": debug_table_viiiiiddi, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii, + "viiijj": debug_table_viiijj +}; + +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} + +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} + +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} + +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} + +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} + +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} + +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} + +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} + +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} + +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} + +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} + +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} + +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} + +function nullFunc_iiiiiiidiiddii(x) { + abortFnPtrError(x, "iiiiiiidiiddii") +} + +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} + +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} + +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} + +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} + +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} + +function nullFunc_jii(x) { + abortFnPtrError(x, "jii") +} + +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} + +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} + +function nullFunc_jij(x) { + abortFnPtrError(x, "jij") +} + +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} + +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} + +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} + +function nullFunc_vdiidiiiiii(x) { + abortFnPtrError(x, "vdiidiiiiii") +} + +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} + +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} + +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} + +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} + +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} + +function nullFunc_viiid(x) { + abortFnPtrError(x, "viiid") +} + +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} + +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} + +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} + +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} + +function nullFunc_viiiiiddi(x) { + abortFnPtrError(x, "viiiiiddi") +} + +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} + +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} + +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} + +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} + +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} + +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} + +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} + +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} + +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} + +function nullFunc_viiijj(x) { + abortFnPtrError(x, "viiijj") +} + +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iiiiiiidiiddii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) +} + +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_jii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jij(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_v(index) { + functionPointers[index]() +} + +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_vdiidiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} + +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} + +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} + +function jsCall_viiid(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiddi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} + +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} + +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} + +function jsCall_viiijj(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___buildEnvironment": ___buildEnvironment, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_nanosleep": _nanosleep, + "_pthread_cond_destroy": _pthread_cond_destroy, + "_pthread_cond_init": _pthread_cond_init, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiidiiddii": jsCall_iiiiiiidiiddii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jii": jsCall_jii, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jij": jsCall_jij, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vdiidiiiiii": jsCall_vdiidiiiiii, + "jsCall_vi": jsCall_vi, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiid": jsCall_viiid, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiiddi": jsCall_viiiiiddi, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "jsCall_viiijj": jsCall_viiijj, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiidiiddii": nullFunc_iiiiiiidiiddii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jii": nullFunc_jii, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jij": nullFunc_jij, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vdiidiiiiii": nullFunc_vdiidiiiiii, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiid": nullFunc_viiid, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiiddi": nullFunc_viiiiiddi, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "nullFunc_viiijj": nullFunc_viiijj, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffHttpG711Init = Module["_AVSniffHttpG711Init"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpG711Init"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeG711Frame = Module["_decodeG711Frame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeG711Frame"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getG711BufferLengthApi = Module["_getG711BufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getG711BufferLengthApi"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffG711Module = Module["_initializeSniffG711Module"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffG711Module"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _naluLListLength = Module["_naluLListLength"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_naluLListLength"].apply(null, arguments) +}; +var _pushSniffG711FlvData = Module["_pushSniffG711FlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffG711FlvData"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseG711 = Module["_releaseG711"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseG711"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "establishStackSpace")) Module["establishStackSpace"] = function() { + abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +var calledRun; + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; + +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch (e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} + +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; + +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} + +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +noExitRuntime = true; +run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-format.js b/vite_vue_ts/public/dist/missile-format.js new file mode 100644 index 00000000..8f7eddf0 --- /dev/null +++ b/vite_vue_ts/public/dist/missile-format.js @@ -0,0 +1,8300 @@ +var ENVIRONMENT_IS_PTHREAD = true; +var Module = typeof Module !== "undefined" ? Module: {}; +var moduleOverrides = {}; +var key; +for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key] + } +} +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = function(status, toThrow) { + throw toThrow +}; +var ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_HAS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === "object"; +ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; +ENVIRONMENT_HAS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string"; +ENVIRONMENT_IS_NODE = ENVIRONMENT_HAS_NODE && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; +if (Module["ENVIRONMENT"]) { + throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)") +} +var ENVIRONMENT_IS_PTHREAD = Module.ENVIRONMENT_IS_PTHREAD || false; +if (!ENVIRONMENT_IS_PTHREAD) { + var PthreadWorkerInit = {} +} +var _scriptDir = typeof document !== "undefined" && document.currentScript ? document.currentScript.src: undefined; +var scriptDirectory = ""; +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory) + } + return scriptDirectory + path +} +var read_, readAsync, readBinary, setWindowTitle; +if (ENVIRONMENT_IS_NODE) { + scriptDirectory = __dirname + "/"; + var nodeFS; + var nodePath; + read_ = function shell_read(filename, binary) { + var ret; + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + ret = nodeFS["readFileSync"](filename); + return binary ? ret: ret.toString() + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret) + } + assert(ret.buffer); + return ret + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", + function(ex) { + if (! (ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr: print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +assert(ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER, "Pthreads do not work in non-browser environments yet (need Web Workers, or an alternative to them)"); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + assert(!ENVIRONMENT_IS_PTHREAD); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: + { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(35); +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 35; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var setTempRet0 = function(value) { + tempRet0 = value +}; +var getTempRet0 = function() { + return tempRet0 +}; +var GLOBAL_BASE = 1024; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min( + Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~ + Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[ptr >> 2] = tempI64[0], + HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 5312, + "element": "anyfunc" +}); +var wasmModule; +var ABORT = false; +var EXITSTATUS = 0; +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_DYNAMIC = 2; +var ALLOC_NONE = 3; +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types: null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++>>0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var str = ""; + while (! (idx >= endIdx)) { + var u0 = u8Array[idx++]; + if (!u0) return str; + if (! (u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + return str +} +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (! (maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127)++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++>>0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +if (!ENVIRONMENT_IS_PTHREAD) { + var STACK_BASE = 1389264, + STACK_MAX = 6632144, + DYNAMIC_BASE = 6632144, + DYNAMICTOP_PTR = 1388240; + assert(STACK_BASE % 16 === 0, "stack must start aligned"); + assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned") +} +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 1073741824; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (ENVIRONMENT_IS_PTHREAD) {} else { + if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] + } else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "shared": true + }); + assert(wasmMemory.buffer instanceof SharedArrayBuffer, "requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag") + } +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +if (!ENVIRONMENT_IS_PTHREAD) { + HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE +} +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +} (function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null: callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATEXIT__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; +if (ENVIRONMENT_IS_PTHREAD) runtimeInitialized = true; +function preRun() { + if (ENVIRONMENT_IS_PTHREAD) return; + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} +function preMain() { + checkStackCookie(); + if (ENVIRONMENT_IS_PTHREAD) return; + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} +function exitRuntime() { + checkStackCookie(); + if (ENVIRONMENT_IS_PTHREAD) return; + runtimeExited = true +} +function postRun() { + checkStackCookie(); + if (ENVIRONMENT_IS_PTHREAD) return; + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} +function addRunDependency(id) { + assert(!ENVIRONMENT_IS_PTHREAD, "addRunDependency cannot be used in a pthread worker"); + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, + 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + if (ENVIRONMENT_IS_PTHREAD) console.error("Pthread aborting at " + (new Error).stack); + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +var memoryInitializer = null; +if (!ENVIRONMENT_IS_PTHREAD) addOnPreRun(function() { + if (typeof SharedArrayBuffer !== "undefined") { + addRunDependency("pthreads"); + PThread.allocateUnusedWorkers(10, + function() { + removeRunDependency("pthreads") + }) + } +}); +var dataURIPrefix = "data:application/octet-stream;base64,"; +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-v20220507.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch(err) { + abort(err) + } +} +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }). + catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + wasmModule = module; + if (!ENVIRONMENT_IS_PTHREAD) removeRunDependency("wasm-instantiate") + } + if (!ENVIRONMENT_IS_PTHREAD) { + addRunDependency("wasm-instantiate") + } + var trueModule = Module; + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"], output["module"]) + } + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, + function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, + function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch(e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}, +function() { + alert("myThread111") +}, +function($0) { + console.log("myThread111", $0) +}, +function() { + postMessage({ + cmd: "go", + data: "myThread go" + }) +}, +function() { + console.error("fetch: emscripten_fetch_wait failed: main thread cannot block to wait for long periods of time! Migrate the application to run in a worker to perform synchronous file IO, or switch to using asynchronous IO.") +}, +function() { + postMessage({ + cmd: "processQueuedMainThreadWork" + }) +}, +function($0) { + if (!ENVIRONMENT_IS_PTHREAD) { + if (!PThread.pthreads[$0] || !PThread.pthreads[$0].worker) { + return 0 + } + PThread.pthreads[$0].worker.postMessage({ + cmd: "processThreadQueue" + }) + } else { + postMessage({ + targetThread: $0, + cmd: "processThreadQueue" + }) + } + return 1 +}, +function() { + return !! Module["canvas"] +}, +function() { + noExitRuntime = true +}, +function() { + throw "Canceled!" +}]; +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +function _emscripten_asm_const_ii(code, a0) { + return ASM_CONSTS[code](a0) +} +function _initPthreadsJS() { + PThread.initRuntime() +} +if (!ENVIRONMENT_IS_PTHREAD) __ATINIT__.push({ + func: function() { + globalCtors() + } +}); +if (!ENVIRONMENT_IS_PTHREAD) { + memoryInitializer = "missile-v20220507.html.mem" +} +var tempDoublePtr; +if (!ENVIRONMENT_IS_PTHREAD) tempDoublePtr = 1389248; +assert(tempDoublePtr % 8 == 0); +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, + function(x) { + var y = demangle(x); + return x === y ? x: y + " [" + x + "]" + }) +} +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch(e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +function ___assert_fail(condition, filename, line, func) { + abort("Assertion failed: " + UTF8ToString(condition) + ", at: " + [filename ? UTF8ToString(filename) : "unknown filename", line, func ? UTF8ToString(func) : "unknown function"]) +} +var ENV = {}; +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} +var PROCINFO = { + ppid: 1, + pid: 42, + sid: 42, + pgid: 42 +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var __main_thread_futex_wait_address; +if (ENVIRONMENT_IS_PTHREAD) __main_thread_futex_wait_address = PthreadWorkerInit.__main_thread_futex_wait_address; +else PthreadWorkerInit.__main_thread_futex_wait_address = __main_thread_futex_wait_address = 1389232; +function _emscripten_futex_wake(addr, count) { + if (addr <= 0 || addr > HEAP8.length || addr & 3 != 0 || count < 0) return - 28; + if (count == 0) return 0; + if (count >= 2147483647) count = Infinity; + var mainThreadWaitAddress = Atomics.load(HEAP32, __main_thread_futex_wait_address >> 2); + var mainThreadWoken = 0; + if (mainThreadWaitAddress == addr) { + var loadedAddr = Atomics.compareExchange(HEAP32, __main_thread_futex_wait_address >> 2, mainThreadWaitAddress, 0); + if (loadedAddr == mainThreadWaitAddress) {--count; + mainThreadWoken = 1; + if (count <= 0) return 1 + } + } + var ret = Atomics.notify(HEAP32, addr >> 2, count); + if (ret >= 0) return ret + mainThreadWoken; + throw "Atomics.notify returned an unexpected value " + ret +} +var PThread = { + MAIN_THREAD_ID: 1, + mainThreadInfo: { + schedPolicy: 0, + schedPrio: 0 + }, + preallocatedWorkers: [], + unusedWorkers: [], + runningWorkers: [], + initRuntime: function() { + __register_pthread_ptr(PThread.mainThreadBlock, !ENVIRONMENT_IS_WORKER, 1); + _emscripten_register_main_browser_thread_id(PThread.mainThreadBlock) + }, + initMainThreadBlock: function() { + if (ENVIRONMENT_IS_PTHREAD) return undefined; + var requestedPoolSize = 10; + PThread.preallocatedWorkers = PThread.createNewWorkers(requestedPoolSize); + PThread.mainThreadBlock = 1388448; + for (var i = 0; i < 244 / 4; ++i) HEAPU32[PThread.mainThreadBlock / 4 + i] = 0; + HEAP32[PThread.mainThreadBlock + 24 >> 2] = PThread.mainThreadBlock; + var headPtr = PThread.mainThreadBlock + 168; + HEAP32[headPtr >> 2] = headPtr; + var tlsMemory = 1388704; + for (var i = 0; i < 128; ++i) HEAPU32[tlsMemory / 4 + i] = 0; + Atomics.store(HEAPU32, PThread.mainThreadBlock + 116 >> 2, tlsMemory); + Atomics.store(HEAPU32, PThread.mainThreadBlock + 52 >> 2, PThread.mainThreadBlock); + Atomics.store(HEAPU32, PThread.mainThreadBlock + 56 >> 2, PROCINFO.pid) + }, + pthreads: {}, + exitHandlers: null, + setThreadStatus: function() {}, + runExitHandlers: function() { + if (PThread.exitHandlers !== null) { + while (PThread.exitHandlers.length > 0) { + PThread.exitHandlers.pop()() + } + PThread.exitHandlers = null + } + if (ENVIRONMENT_IS_PTHREAD && threadInfoStruct) ___pthread_tsd_run_dtors() + }, + threadExit: function(exitCode) { + var tb = _pthread_self(); + if (tb) { + Atomics.store(HEAPU32, tb + 4 >> 2, exitCode); + Atomics.store(HEAPU32, tb + 0 >> 2, 1); + Atomics.store(HEAPU32, tb + 72 >> 2, 1); + Atomics.store(HEAPU32, tb + 76 >> 2, 0); + PThread.runExitHandlers(); + _emscripten_futex_wake(tb + 0, 2147483647); + __register_pthread_ptr(0, 0, 0); + threadInfoStruct = 0; + if (ENVIRONMENT_IS_PTHREAD) { + postMessage({ + cmd: "exit" + }) + } + } + }, + threadCancel: function() { + PThread.runExitHandlers(); + Atomics.store(HEAPU32, threadInfoStruct + 4 >> 2, -1); + Atomics.store(HEAPU32, threadInfoStruct + 0 >> 2, 1); + _emscripten_futex_wake(threadInfoStruct + 0, 2147483647); + threadInfoStruct = selfThreadId = 0; + __register_pthread_ptr(0, 0, 0); + postMessage({ + cmd: "cancelDone" + }) + }, + terminateAllThreads: function() { + for (var t in PThread.pthreads) { + var pthread = PThread.pthreads[t]; + if (pthread) { + PThread.freeThreadData(pthread); + if (pthread.worker) pthread.worker.terminate() + } + } + PThread.pthreads = {}; + for (var i = 0; i < PThread.preallocatedWorkers.length; ++i) { + var worker = PThread.preallocatedWorkers[i]; + assert(!worker.pthread); + worker.terminate() + } + PThread.preallocatedWorkers = []; + for (var i = 0; i < PThread.unusedWorkers.length; ++i) { + var worker = PThread.unusedWorkers[i]; + assert(!worker.pthread); + worker.terminate() + } + PThread.unusedWorkers = []; + for (var i = 0; i < PThread.runningWorkers.length; ++i) { + var worker = PThread.runningWorkers[i]; + var pthread = worker.pthread; + assert(pthread, "This Worker should have a pthread it is executing"); + PThread.freeThreadData(pthread); + worker.terminate() + } + PThread.runningWorkers = [] + }, + freeThreadData: function(pthread) { + if (!pthread) return; + if (pthread.threadInfoStruct) { + var tlsMemory = HEAP32[pthread.threadInfoStruct + 116 >> 2]; + HEAP32[pthread.threadInfoStruct + 116 >> 2] = 0; + _free(tlsMemory); + _free(pthread.threadInfoStruct) + } + pthread.threadInfoStruct = 0; + if (pthread.allocatedOwnStack && pthread.stackBase) _free(pthread.stackBase); + pthread.stackBase = 0; + if (pthread.worker) pthread.worker.pthread = null + }, + returnWorkerToPool: function(worker) { + delete PThread.pthreads[worker.pthread.thread]; + PThread.unusedWorkers.push(worker); + PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1); + PThread.freeThreadData(worker.pthread); + worker.pthread = undefined + }, + receiveObjectTransfer: function(data) {}, + allocateUnusedWorkers: function(numWorkers, onFinishedLoading) { + if (typeof SharedArrayBuffer === "undefined") return; + var workers = []; + var numWorkersToCreate = numWorkers; + if (PThread.preallocatedWorkers.length > 0) { + var workersUsed = Math.min(PThread.preallocatedWorkers.length, numWorkers); + workers = workers.concat(PThread.preallocatedWorkers.splice(0, workersUsed)); + numWorkersToCreate -= workersUsed + } + if (numWorkersToCreate > 0) { + workers = workers.concat(PThread.createNewWorkers(numWorkersToCreate)) + } + PThread.attachListenerToWorkers(workers, onFinishedLoading); + for (var i = 0; i < numWorkers; ++i) { + var worker = workers[i]; + var tempDoublePtr = getMemory(8); + worker.postMessage({ + cmd: "load", + urlOrBlob: Module["mainScriptUrlOrBlob"] || _scriptDir, + wasmMemory: wasmMemory, + wasmModule: wasmModule, + tempDoublePtr: tempDoublePtr, + DYNAMIC_BASE: DYNAMIC_BASE, + DYNAMICTOP_PTR: DYNAMICTOP_PTR, + PthreadWorkerInit: PthreadWorkerInit + }); + PThread.unusedWorkers.push(worker) + } + }, + attachListenerToWorkers: function(workers, onFinishedLoading) { + var numWorkersLoaded = 0; + var numWorkers = workers.length; + for (var i = 0; i < numWorkers; ++i) { + var worker = workers[i]; (function(worker) { + worker.onmessage = function(e) { + var d = e.data; + if (worker.pthread) PThread.currentProxiedOperationCallerThread = worker.pthread.threadInfoStruct; + if (d.targetThread && d.targetThread != _pthread_self()) { + var thread = PThread.pthreads[d.targetThread]; + if (thread) { + thread.worker.postMessage(e.data, d.transferList) + } else { + console.error('Internal error! Worker sent a message "' + d.cmd + '" to target pthread ' + d.targetThread + ", but that thread no longer exists!") + } + PThread.currentProxiedOperationCallerThread = undefined; + return + } + if (d.cmd === "processQueuedMainThreadWork") { + _emscripten_main_thread_process_queued_calls() + } else if (d.cmd === "spawnThread") { + __spawn_thread(e.data) + } else if (d.cmd === "cleanupThread") { + __cleanup_thread(d.thread) + } else if (d.cmd === "killThread") { + __kill_thread(d.thread) + } else if (d.cmd === "cancelThread") { + __cancel_thread(d.thread) + } else if (d.cmd === "loaded") { + worker.loaded = true; + if (worker.runPthread) { + worker.runPthread(); + delete worker.runPthread + }++numWorkersLoaded; + if (numWorkersLoaded === numWorkers && onFinishedLoading) { + onFinishedLoading() + } + } else if (d.cmd === "print") { + out("Thread " + d.threadId + ": " + d.text) + } else if (d.cmd === "printErr") { + err("Thread " + d.threadId + ": " + d.text) + } else if (d.cmd === "alert") { + alert("Thread " + d.threadId + ": " + d.text) + } else if (d.cmd === "exit") { + var detached = worker.pthread && Atomics.load(HEAPU32, worker.pthread.thread + 80 >> 2); + if (detached) { + PThread.returnWorkerToPool(worker) + } + } else if (d.cmd === "exitProcess") { + noExitRuntime = false; + try { + exit(d.returnCode) + } catch(e) { + if (e instanceof ExitStatus) return; + throw e + } + } else if (d.cmd === "cancelDone") { + PThread.returnWorkerToPool(worker) + } else if (d.cmd === "objectTransfer") { + PThread.receiveObjectTransfer(e.data) + } else if (e.data.target === "setimmediate") { + worker.postMessage(e.data) + } else if (d.cmd === "go") { + console.log("ecmd go ", + window.postMessage(e.data)); + } else { + err("worker sent an unknown command " + d.cmd) + } + PThread.currentProxiedOperationCallerThread = undefined + }; + worker.onerror = function(e) { + err("pthread sent an error! " + e.filename + ":" + e.lineno + ": " + e.message) + } + })(worker) + } + }, + createNewWorkers: function(numWorkers) { + if (typeof SharedArrayBuffer === "undefined") return []; + var pthreadMainJs = "missile-v20220507.worker.js"; + pthreadMainJs = locateFile(pthreadMainJs); + var newWorkers = []; + for (var i = 0; i < numWorkers; ++i) { + newWorkers.push(new Worker(pthreadMainJs)) + } + return newWorkers + }, + getNewWorker: function() { + if (PThread.unusedWorkers.length == 0) PThread.allocateUnusedWorkers(1); + if (PThread.unusedWorkers.length > 0) return PThread.unusedWorkers.pop(); + else return null + }, + busySpinWait: function(msecs) { + var t = performance.now() + msecs; + while (performance.now() < t) {} + } +}; +function ___call_main(argc, argv) { + var returnCode = _main(argc, argv); + if (!noExitRuntime) postMessage({ + cmd: "exitProcess", + returnCode: returnCode + }); + return returnCode +} +function _emscripten_get_now() { + abort() +} +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return - 1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} +function ___lock() {} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr( - 1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !! p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/": "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !! p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/": "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch(e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch(e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch(e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length: 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id: 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch(e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (! (flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + } (fromHeap ? HEAP8: buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, + function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, + function(err, remote) { + if (err) return callback(err); + var src = populate ? remote: local; + var dst = populate ? local: remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch(e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + function isRealDir(p) { + return p !== "." && p !== ".." + } + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch(e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, + function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor. + continue () + } + } catch(e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch(e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch(e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch(e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db: dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, + function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, + function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024 : flags["O_APPEND"], + 64 : flags["O_CREAT"], + 128 : flags["O_EXCL"], + 0 : flags["O_RDONLY"], + 2 : flags["O_RDWR"], + 4096 : flags["O_SYNC"], + 512 : flags["O_TRUNC"], + 1 : flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch(e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch(e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch(e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch(e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], + function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0 : "Success", + 1 : "Arg list too long", + 2 : "Permission denied", + 3 : "Address already in use", + 4 : "Address not available", + 5 : "Address family not supported by protocol family", + 6 : "No more processes", + 7 : "Socket already connected", + 8 : "Bad file number", + 9 : "Trying to read unreadable message", + 10 : "Mount device busy", + 11 : "Operation canceled", + 12 : "No children", + 13 : "Connection aborted", + 14 : "Connection refused", + 15 : "Connection reset by peer", + 16 : "File locking deadlock error", + 17 : "Destination address required", + 18 : "Math arg out of domain of func", + 19 : "Quota exceeded", + 20 : "File exists", + 21 : "Bad address", + 22 : "File too large", + 23 : "Host is unreachable", + 24 : "Identifier removed", + 25 : "Illegal byte sequence", + 26 : "Connection already in progress", + 27 : "Interrupted system call", + 28 : "Invalid argument", + 29 : "I/O error", + 30 : "Socket is already connected", + 31 : "Is a directory", + 32 : "Too many symbolic links", + 33 : "Too many open files", + 34 : "Too many links", + 35 : "Message too long", + 36 : "Multihop attempted", + 37 : "File or path name too long", + 38 : "Network interface is not configured", + 39 : "Connection reset by network", + 40 : "Network is unreachable", + 41 : "Too many open files in system", + 42 : "No buffer space available", + 43 : "No such device", + 44 : "No such file or directory", + 45 : "Exec format error", + 46 : "No record locks available", + 47 : "The link has been severed", + 48 : "Not enough core", + 49 : "No message of desired type", + 50 : "Protocol not available", + 51 : "No space left on device", + 52 : "Function not implemented", + 53 : "Socket is not connected", + 54 : "Not a directory", + 55 : "Directory not empty", + 56 : "State not recoverable", + 57 : "Socket operation on non-socket", + 59 : "Not a typewriter", + 60 : "No such device or address", + 61 : "Value too large for defined data type", + 62 : "Previous owner died", + 63 : "Not super-user", + 64 : "Broken pipe", + 65 : "Protocol error", + 66 : "Unknown protocol", + 67 : "Protocol wrong type for socket", + 68 : "Math result not representable", + 69 : "Read only file system", + 70 : "Illegal seek", + 71 : "No such process", + 72 : "Stale file handle", + 73 : "Connection timed out", + 74 : "Text file busy", + 75 : "Cross-device link", + 100 : "Device not a stream", + 101 : "Bad font file fmt", + 102 : "Invalid slot", + 103 : "Invalid request code", + 104 : "No anode", + 105 : "Block device required", + 106 : "Channel number out of range", + 107 : "Level 3 halted", + 108 : "Level 3 reset", + 109 : "Link number out of range", + 110 : "Protocol driver not attached", + 111 : "No CSI structure available", + 112 : "Level 2 halted", + 113 : "Invalid exchange", + 114 : "Invalid request descriptor", + 115 : "Exchange full", + 116 : "No data (for no delay io)", + 117 : "Timer expired", + 118 : "Out of streams resources", + 119 : "Machine is not on the network", + 120 : "Package not installed", + 121 : "The object is remote", + 122 : "Advertise error", + 123 : "Srmount error", + 124 : "Communication error on send", + 125 : "Cross mount point (not really error)", + 126 : "Given log. name not unique", + 127 : "f.d. invalid for this operation", + 128 : "Remote address changed", + 129 : "Can access a needed shared lib", + 130 : "Accessing a corrupted shared lib", + 131 : ".lib section in a.out corrupted", + 132 : "Attempting to link in too many libs", + 133 : "Attempting to exec a shared library", + 135 : "Streams pipe error", + 136 : "Too many users", + 137 : "Socket type not supported", + 138 : "Not supported", + 139 : "Protocol family not supported", + 140 : "Can't send after socket shutdown", + 141 : "Too many references", + 142 : "Host is down", + 148 : "No medium (in tape drive)", + 156 : "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (! (e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !! p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++>40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path: mount + path + } + path = path ? node.name + "/" + path: node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode: this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode: this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !! node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch(e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch(e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode: 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode: 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch(e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch(e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch(e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch(e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch(e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch(e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch(e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch(e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch(e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch(e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch(e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~ (128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, + fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (! (path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch(e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch(e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch(e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch(e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, + {}, + "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, + "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch(e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch(e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent: FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent: FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch(e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent: FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent: FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, + len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent: FS.getPath(parent), name); + var mode = FS.getMode( !! input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch(e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch(e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent: FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch(e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (! (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (! (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, + function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, + function(byteArray) { + processData(byteArray) + }, + onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || + function() {}; + onerror = onerror || + function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch(e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || + function() {}; + onerror = onerror || + function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch(e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch(e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch(e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return - 54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min( + Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~ + Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 40 >> 2] = tempI64[0], + HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min( + Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~ + Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 80 >> 2] = tempI64[0], + HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return - 28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return - 28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return - 28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return - 44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return - 2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return - 1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return - 1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; +function ___syscall221(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(1, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: + { + var arg = SYSCALLS.get(); + if (arg < 0) { + return - 28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: + { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: + { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return - 28; + case 9: + ___setErrNo(28); + return - 1; + default: + { + return - 28 + } + } + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return - e.errno + } +} +function ___syscall3(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(2, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return - e.errno + } +} +function ___syscall5(which, varargs) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(3, 1, which, varargs); + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return - e.errno + } +} +function ___unlock() {} +function _fd_close(fd) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(4, 1, fd); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} +function _fd_fdstat_get(fd, pbuf) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(5, 1, fd, pbuf); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(6, 1, fd, offset_low, offset_high, whence, newOffset); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return - 61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min( + Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~ + Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[newOffset >> 2] = tempI64[0], + HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} +function _fd_write(fd, iov, iovcnt, pnum) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(7, 1, fd, iov, iovcnt, pnum); + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch(e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} +var _fetch_work_queue; +if (ENVIRONMENT_IS_PTHREAD) _fetch_work_queue = PthreadWorkerInit._fetch_work_queue; +else PthreadWorkerInit._fetch_work_queue = _fetch_work_queue = 1388432; +function __emscripten_get_fetch_work_queue() { + return _fetch_work_queue +} +function _abort() { + abort() +} +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} +function _emscripten_futex_wait(addr, val, timeout) { + if (addr <= 0 || addr > HEAP8.length || addr & 3 != 0) return - 28; + if (ENVIRONMENT_IS_WORKER) { + var ret = Atomics.wait(HEAP32, addr >> 2, val, timeout); + if (ret === "timed-out") return - 73; + if (ret === "not-equal") return - 6; + if (ret === "ok") return 0; + throw "Atomics.wait returned an unexpected value " + ret + } else { + var loadedVal = Atomics.load(HEAP32, addr >> 2); + if (val != loadedVal) return - 6; + var tNow = performance.now(); + var tEnd = tNow + timeout; + Atomics.store(HEAP32, __main_thread_futex_wait_address >> 2, addr); + var ourWaitAddress = addr; + while (addr == ourWaitAddress) { + tNow = performance.now(); + if (tNow > tEnd) { + return - 73 + } + _emscripten_main_thread_process_queued_calls(); + addr = Atomics.load(HEAP32, __main_thread_futex_wait_address >> 2) + } + return 0 + } +} +function _emscripten_get_heap_size() { + return HEAP8.length +} +function _emscripten_has_threading_support() { + return typeof SharedArrayBuffer !== "undefined" +} +function _emscripten_proxy_to_main_thread_js(index, sync) { + var numCallArgs = arguments.length - 2; + if (numCallArgs > 20 - 1) throw "emscripten_proxy_to_main_thread_js: Too many arguments " + numCallArgs + " to proxied function idx=" + index + ", maximum supported is " + (20 - 1) + "!"; + var stack = stackSave(); + var args = stackAlloc(numCallArgs * 8); + var b = args >> 3; + for (var i = 0; i < numCallArgs; i++) { + HEAPF64[b + i] = arguments[2 + i] + } + var ret = _emscripten_run_in_main_runtime_thread_js(index, numCallArgs, args, sync); + stackRestore(stack); + return ret +} +var _emscripten_receive_on_main_thread_js_callArgs = []; +function _emscripten_receive_on_main_thread_js(index, numCallArgs, args) { + _emscripten_receive_on_main_thread_js_callArgs.length = numCallArgs; + var b = args >> 3; + for (var i = 0; i < numCallArgs; i++) { + _emscripten_receive_on_main_thread_js_callArgs[i] = HEAPF64[b + i] + } + var isEmAsmConst = index < 0; + var func = !isEmAsmConst ? proxiedFunctionTable[index] : ASM_CONSTS[ - index - 1]; + assert(func.length == numCallArgs, "Call args mismatch in emscripten_receive_on_main_thread_js"); + return func.apply(null, _emscripten_receive_on_main_thread_js_callArgs) +} +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var JSEvents = { + keyEvent: 0, + mouseEvent: 0, + wheelEvent: 0, + uiEvent: 0, + focusEvent: 0, + deviceOrientationEvent: 0, + deviceMotionEvent: 0, + fullscreenChangeEvent: 0, + pointerlockChangeEvent: 0, + visibilityChangeEvent: 0, + touchEvent: 0, + previousFullscreenElement: null, + previousScreenX: null, + previousScreenY: null, + removeEventListenersRegistered: false, + removeAllEventListeners: function() { + for (var i = JSEvents.eventHandlers.length - 1; i >= 0; --i) { + JSEvents._removeHandler(i) + } + JSEvents.eventHandlers = []; + JSEvents.deferredCalls = [] + }, + registerRemoveEventListeners: function() { + if (!JSEvents.removeEventListenersRegistered) { + __ATEXIT__.push(JSEvents.removeAllEventListeners); + JSEvents.removeEventListenersRegistered = true + } + }, + deferredCalls: [], + deferCall: function(targetFunction, precedence, argsList) { + function arraysHaveEqualContent(arrA, arrB) { + if (arrA.length != arrB.length) return false; + for (var i in arrA) { + if (arrA[i] != arrB[i]) return false + } + return true + } + for (var i in JSEvents.deferredCalls) { + var call = JSEvents.deferredCalls[i]; + if (call.targetFunction == targetFunction && arraysHaveEqualContent(call.argsList, argsList)) { + return + } + } + JSEvents.deferredCalls.push({ + targetFunction: targetFunction, + precedence: precedence, + argsList: argsList + }); + JSEvents.deferredCalls.sort(function(x, y) { + return x.precedence < y.precedence + }) + }, + removeDeferredCalls: function(targetFunction) { + for (var i = 0; i < JSEvents.deferredCalls.length; ++i) { + if (JSEvents.deferredCalls[i].targetFunction == targetFunction) { + JSEvents.deferredCalls.splice(i, 1); --i + } + } + }, + canPerformEventHandlerRequests: function() { + return JSEvents.inEventHandler && JSEvents.currentEventHandler.allowsDeferredCalls + }, + runDeferredCalls: function() { + if (!JSEvents.canPerformEventHandlerRequests()) { + return + } + for (var i = 0; i < JSEvents.deferredCalls.length; ++i) { + var call = JSEvents.deferredCalls[i]; + JSEvents.deferredCalls.splice(i, 1); --i; + call.targetFunction.apply(this, call.argsList) + } + }, + inEventHandler: 0, + currentEventHandler: null, + eventHandlers: [], + isInternetExplorer: function() { + return navigator.userAgent.indexOf("MSIE") !== -1 || navigator.appVersion.indexOf("Trident/") > 0 + }, + removeAllHandlersOnTarget: function(target, eventTypeString) { + for (var i = 0; i < JSEvents.eventHandlers.length; ++i) { + if (JSEvents.eventHandlers[i].target == target && (!eventTypeString || eventTypeString == JSEvents.eventHandlers[i].eventTypeString)) { + JSEvents._removeHandler(i--) + } + } + }, + _removeHandler: function(i) { + var h = JSEvents.eventHandlers[i]; + h.target.removeEventListener(h.eventTypeString, h.eventListenerFunc, h.useCapture); + JSEvents.eventHandlers.splice(i, 1) + }, + registerOrRemoveHandler: function(eventHandler) { + var jsEventHandler = function jsEventHandler(event) {++JSEvents.inEventHandler; + JSEvents.currentEventHandler = eventHandler; + JSEvents.runDeferredCalls(); + eventHandler.handlerFunc(event); + JSEvents.runDeferredCalls(); --JSEvents.inEventHandler + }; + if (eventHandler.callbackfunc) { + eventHandler.eventListenerFunc = jsEventHandler; + eventHandler.target.addEventListener(eventHandler.eventTypeString, jsEventHandler, eventHandler.useCapture); + JSEvents.eventHandlers.push(eventHandler); + JSEvents.registerRemoveEventListeners() + } else { + for (var i = 0; i < JSEvents.eventHandlers.length; ++i) { + if (JSEvents.eventHandlers[i].target == eventHandler.target && JSEvents.eventHandlers[i].eventTypeString == eventHandler.eventTypeString) { + JSEvents._removeHandler(i--) + } + } + } + }, + queueEventHandlerOnThread_iiii: function(targetThread, eventHandlerFunc, eventTypeId, eventData, userData) { + var stackTop = stackSave(); + var varargs = stackAlloc(12); + HEAP32[varargs >> 2] = eventTypeId; + HEAP32[varargs + 4 >> 2] = eventData; + HEAP32[varargs + 8 >> 2] = userData; + _emscripten_async_queue_on_thread_(targetThread, 637534208, eventHandlerFunc, eventData, varargs); + stackRestore(stackTop) + }, + getTargetThreadForEventCallback: function(targetThread) { + switch (targetThread) { + case 1: + return 0; + case 2: + return PThread.currentProxiedOperationCallerThread; + default: + return targetThread + } + }, + getBoundingClientRectOrZeros: function(target) { + return target.getBoundingClientRect ? target.getBoundingClientRect() : { + left: 0, + top: 0 + } + }, + pageScrollPos: function() { + if (pageXOffset > 0 || pageYOffset > 0) { + return [pageXOffset, pageYOffset] + } + if (typeof document.documentElement.scrollLeft !== "undefined" || typeof document.documentElement.scrollTop !== "undefined") { + return [document.documentElement.scrollLeft, document.documentElement.scrollTop] + } + return [document.body.scrollLeft | 0, document.body.scrollTop | 0] + }, + getNodeNameForTarget: function(target) { + if (!target) return ""; + if (target == window) return "#window"; + if (target == screen) return "#screen"; + return target && target.nodeName ? target.nodeName: "" + }, + tick: function() { + if (window["performance"] && window["performance"]["now"]) return window["performance"]["now"](); + else return Date.now() + }, + fullscreenEnabled: function() { + return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled + } +}; +function stringToNewUTF8(jsString) { + var length = lengthBytesUTF8(jsString) + 1; + var cString = _malloc(length); + stringToUTF8(jsString, cString, length); + return cString +} +function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread, targetCanvas, width, height) { + var stackTop = stackSave(); + var varargs = stackAlloc(12); + var targetCanvasPtr = 0; + if (targetCanvas) { + targetCanvasPtr = stringToNewUTF8(targetCanvas) + } + HEAP32[varargs >> 2] = targetCanvasPtr; + HEAP32[varargs + 4 >> 2] = width; + HEAP32[varargs + 8 >> 2] = height; + _emscripten_async_queue_on_thread_(targetThread, 657457152, 0, targetCanvasPtr, varargs); + stackRestore(stackTop) +} +function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread, targetCanvas, width, height) { + targetCanvas = targetCanvas ? UTF8ToString(targetCanvas) : ""; + _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread, targetCanvas, width, height) +} +var __specialEventTargets = [0, typeof document !== "undefined" ? document: 0, typeof window !== "undefined" ? window: 0]; +function __findEventTarget(target) { + warnOnce("Rules for selecting event targets in HTML5 API are changing: instead of using document.getElementById() that only can refer to elements by their DOM ID, new event target selection mechanism uses the more flexible function document.querySelector() that can look up element names, classes, and complex CSS selectors. Build with -s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1 to change to the new lookup rules. See https://github.com/emscripten-core/emscripten/pull/7977 for more details."); + try { + if (!target) return window; + if (typeof target === "number") target = __specialEventTargets[target] || UTF8ToString(target); + if (target === "#window") return window; + else if (target === "#document") return document; + else if (target === "#screen") return screen; + else if (target === "#canvas") return Module["canvas"]; + return typeof target === "string" ? document.getElementById(target) : target + } catch(e) { + return null + } +} +function __findCanvasEventTarget(target) { + if (typeof target === "number") target = UTF8ToString(target); + if (!target || target === "#canvas") { + if (typeof GL !== "undefined" && GL.offscreenCanvases["canvas"]) return GL.offscreenCanvases["canvas"]; + return Module["canvas"] + } + if (typeof GL !== "undefined" && GL.offscreenCanvases[target]) return GL.offscreenCanvases[target]; + return __findEventTarget(target) +} +function _emscripten_set_canvas_element_size_calling_thread(target, width, height) { + var canvas = __findCanvasEventTarget(target); + if (!canvas) return - 4; + if (canvas.canvasSharedPtr) { + HEAP32[canvas.canvasSharedPtr >> 2] = width; + HEAP32[canvas.canvasSharedPtr + 4 >> 2] = height + } + if (canvas.offscreenCanvas || !canvas.controlTransferredOffscreen) { + if (canvas.offscreenCanvas) canvas = canvas.offscreenCanvas; + var autoResizeViewport = false; + if (canvas.GLctxObject && canvas.GLctxObject.GLctx) { + var prevViewport = canvas.GLctxObject.GLctx.getParameter(canvas.GLctxObject.GLctx.VIEWPORT); + autoResizeViewport = prevViewport[0] === 0 && prevViewport[1] === 0 && prevViewport[2] === canvas.width && prevViewport[3] === canvas.height + } + canvas.width = width; + canvas.height = height; + if (autoResizeViewport) { + canvas.GLctxObject.GLctx.viewport(0, 0, width, height) + } + } else if (canvas.canvasSharedPtr) { + var targetThread = HEAP32[canvas.canvasSharedPtr + 8 >> 2]; + _emscripten_set_offscreencanvas_size_on_target_thread(targetThread, target, width, height); + return 1 + } else { + return - 4 + } + return 0 +} +function _emscripten_set_canvas_element_size_main_thread(target, width, height) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(8, 1, target, width, height); + return _emscripten_set_canvas_element_size_calling_thread(target, width, height) +} +function _emscripten_set_canvas_element_size(target, width, height) { + var canvas = __findCanvasEventTarget(target); + if (canvas) { + return _emscripten_set_canvas_element_size_calling_thread(target, width, height) + } else { + return _emscripten_set_canvas_element_size_main_thread(target, width, height) + } +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch(e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + initFetchWorker: function() { + var stackSize = 128 * 1024; + var stack = allocate(stackSize >> 2, "i32*", ALLOC_DYNAMIC); + Fetch.worker.postMessage({ + cmd: "init", + DYNAMICTOP_PTR: DYNAMICTOP_PTR, + STACKTOP: stack, + STACK_MAX: stack + stackSize, + queuePtr: _fetch_work_queue, + buffer: HEAPU8.buffer + }) + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" && !ENVIRONMENT_IS_PTHREAD; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + Fetch.initFetchWorker(); + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + Fetch.initFetchWorker(); + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (isMainThread) { + addRunDependency("library_fetch_init"); + var fetchJs = locateFile("missile-v20220507.fetch.js"); + Fetch.worker = new Worker(fetchJs); + Fetch.worker.onmessage = function(e) { + out("fetch-worker sent a message: " + e.filename + ":" + e.lineno + ": " + e.message) + }; + Fetch.worker.onerror = function(e) { + err("fetch-worker sent an error! " + e.filename + ":" + e.lineno + ": " + e.message) + } + } + } +}; +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength: 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength: 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch(e) { + if (onerror) onerror(fetch, xhr, e) + } +} +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch(e) { + onerror(fetch, 0, e) + } +} +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch(e) { + onerror(fetch, 0, e) + } +} +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch(e) { + onerror(fetch, 0, e) + } +} +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError: fetchAttrPersistFile ? performCachedXhr: performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess: reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +function _emscripten_syscall(which, varargs) { + switch (which) { + case 221: + return ___syscall221(which, varargs); + case 3: + return ___syscall3(which, varargs); + case 5: + return ___syscall5(which, varargs); + default: + throw "surprising proxied syscall: " + which + } +} +var GL = { + counter: 1, + lastError: 0, + buffers: [], + mappedBuffers: {}, + programs: [], + framebuffers: [], + renderbuffers: [], + textures: [], + uniforms: [], + shaders: [], + vaos: [], + contexts: {}, + currentContext: null, + offscreenCanvases: {}, + timerQueriesEXT: [], + programInfos: {}, + stringCache: {}, + unpackAlignment: 4, + init: function() { + GL.miniTempBuffer = new Float32Array(GL.MINI_TEMP_BUFFER_SIZE); + for (var i = 0; i < GL.MINI_TEMP_BUFFER_SIZE; i++) { + GL.miniTempBufferViews[i] = GL.miniTempBuffer.subarray(0, i + 1) + } + }, + recordError: function recordError(errorCode) { + if (!GL.lastError) { + GL.lastError = errorCode + } + }, + getNewId: function(table) { + var ret = GL.counter++; + for (var i = table.length; i < ret; i++) { + table[i] = null + } + return ret + }, + MINI_TEMP_BUFFER_SIZE: 256, + miniTempBuffer: null, + miniTempBufferViews: [0], + getSource: function(shader, count, string, length) { + var source = ""; + for (var i = 0; i < count; ++i) { + var len = length ? HEAP32[length + i * 4 >> 2] : -1; + source += UTF8ToString(HEAP32[string + i * 4 >> 2], len < 0 ? undefined: len) + } + return source + }, + createContext: function(canvas, webGLContextAttributes) { + var ctx = canvas.getContext("webgl", webGLContextAttributes) || canvas.getContext("experimental-webgl", webGLContextAttributes); + if (!ctx) return 0; + var handle = GL.registerContext(ctx, webGLContextAttributes); + return handle + }, + registerContext: function(ctx, webGLContextAttributes) { + var handle = _malloc(8); + HEAP32[handle + 4 >> 2] = _pthread_self(); + var context = { + handle: handle, + attributes: webGLContextAttributes, + version: webGLContextAttributes.majorVersion, + GLctx: ctx + }; + if (ctx.canvas) ctx.canvas.GLctxObject = context; + GL.contexts[handle] = context; + if (typeof webGLContextAttributes.enableExtensionsByDefault === "undefined" || webGLContextAttributes.enableExtensionsByDefault) { + GL.initExtensions(context) + } + return handle + }, + makeContextCurrent: function(contextHandle) { + GL.currentContext = GL.contexts[contextHandle]; + Module.ctx = GLctx = GL.currentContext && GL.currentContext.GLctx; + return ! (contextHandle && !GLctx) + }, + getContext: function(contextHandle) { + return GL.contexts[contextHandle] + }, + deleteContext: function(contextHandle) { + if (GL.currentContext === GL.contexts[contextHandle]) GL.currentContext = null; + if (typeof JSEvents === "object") JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas); + if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined; + _free(GL.contexts[contextHandle]); + GL.contexts[contextHandle] = null + }, + acquireInstancedArraysExtension: function(ctx) { + var ext = ctx.getExtension("ANGLE_instanced_arrays"); + if (ext) { + ctx["vertexAttribDivisor"] = function(index, divisor) { + ext["vertexAttribDivisorANGLE"](index, divisor) + }; + ctx["drawArraysInstanced"] = function(mode, first, count, primcount) { + ext["drawArraysInstancedANGLE"](mode, first, count, primcount) + }; + ctx["drawElementsInstanced"] = function(mode, count, type, indices, primcount) { + ext["drawElementsInstancedANGLE"](mode, count, type, indices, primcount) + } + } + }, + acquireVertexArrayObjectExtension: function(ctx) { + var ext = ctx.getExtension("OES_vertex_array_object"); + if (ext) { + ctx["createVertexArray"] = function() { + return ext["createVertexArrayOES"]() + }; + ctx["deleteVertexArray"] = function(vao) { + ext["deleteVertexArrayOES"](vao) + }; + ctx["bindVertexArray"] = function(vao) { + ext["bindVertexArrayOES"](vao) + }; + ctx["isVertexArray"] = function(vao) { + return ext["isVertexArrayOES"](vao) + } + } + }, + acquireDrawBuffersExtension: function(ctx) { + var ext = ctx.getExtension("WEBGL_draw_buffers"); + if (ext) { + ctx["drawBuffers"] = function(n, bufs) { + ext["drawBuffersWEBGL"](n, bufs) + } + } + }, + initExtensions: function(context) { + if (!context) context = GL.currentContext; + if (context.initExtensionsDone) return; + context.initExtensionsDone = true; + var GLctx = context.GLctx; + if (context.version < 2) { + GL.acquireInstancedArraysExtension(GLctx); + GL.acquireVertexArrayObjectExtension(GLctx); + GL.acquireDrawBuffersExtension(GLctx) + } + GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query"); + var automaticallyEnabledExtensions = ["OES_texture_float", "OES_texture_half_float", "OES_standard_derivatives", "OES_vertex_array_object", "WEBGL_compressed_texture_s3tc", "WEBGL_depth_texture", "OES_element_index_uint", "EXT_texture_filter_anisotropic", "EXT_frag_depth", "WEBGL_draw_buffers", "ANGLE_instanced_arrays", "OES_texture_float_linear", "OES_texture_half_float_linear", "EXT_blend_minmax", "EXT_shader_texture_lod", "WEBGL_compressed_texture_pvrtc", "EXT_color_buffer_half_float", "WEBGL_color_buffer_float", "EXT_sRGB", "WEBGL_compressed_texture_etc1", "EXT_disjoint_timer_query", "WEBGL_compressed_texture_etc", "WEBGL_compressed_texture_astc", "EXT_color_buffer_float", "WEBGL_compressed_texture_s3tc_srgb", "EXT_disjoint_timer_query_webgl2"]; + var exts = GLctx.getSupportedExtensions() || []; + exts.forEach(function(ext) { + if (automaticallyEnabledExtensions.indexOf(ext) != -1) { + GLctx.getExtension(ext) + } + }) + }, + populateUniformTable: function(program) { + var p = GL.programs[program]; + var ptable = GL.programInfos[program] = { + uniforms: {}, + maxUniformLength: 0, + maxAttributeLength: -1, + maxUniformBlockNameLength: -1 + }; + var utable = ptable.uniforms; + var numUniforms = GLctx.getProgramParameter(p, 35718); + for (var i = 0; i < numUniforms; ++i) { + var u = GLctx.getActiveUniform(p, i); + var name = u.name; + ptable.maxUniformLength = Math.max(ptable.maxUniformLength, name.length + 1); + if (name.slice( - 1) == "]") { + name = name.slice(0, name.lastIndexOf("[")) + } + var loc = GLctx.getUniformLocation(p, name); + if (loc) { + var id = GL.getNewId(GL.uniforms); + utable[name] = [u.size, id]; + GL.uniforms[id] = loc; + for (var j = 1; j < u.size; ++j) { + var n = name + "[" + j + "]"; + loc = GLctx.getUniformLocation(p, n); + id = GL.getNewId(GL.uniforms); + GL.uniforms[id] = loc + } + } + } + } +}; +var __emscripten_webgl_power_preferences = ["default", "low-power", "high-performance"]; +function _emscripten_webgl_do_create_context(target, attributes) { + assert(attributes); + var contextAttributes = {}; + var a = attributes >> 2; + contextAttributes["alpha"] = !!HEAP32[a + (0 >> 2)]; + contextAttributes["depth"] = !!HEAP32[a + (4 >> 2)]; + contextAttributes["stencil"] = !!HEAP32[a + (8 >> 2)]; + contextAttributes["antialias"] = !!HEAP32[a + (12 >> 2)]; + contextAttributes["premultipliedAlpha"] = !!HEAP32[a + (16 >> 2)]; + contextAttributes["preserveDrawingBuffer"] = !!HEAP32[a + (20 >> 2)]; + var powerPreference = HEAP32[a + (24 >> 2)]; + contextAttributes["powerPreference"] = __emscripten_webgl_power_preferences[powerPreference]; + contextAttributes["failIfMajorPerformanceCaveat"] = !!HEAP32[a + (28 >> 2)]; + contextAttributes.majorVersion = HEAP32[a + (32 >> 2)]; + contextAttributes.minorVersion = HEAP32[a + (36 >> 2)]; + contextAttributes.enableExtensionsByDefault = HEAP32[a + (40 >> 2)]; + contextAttributes.explicitSwapControl = HEAP32[a + (44 >> 2)]; + contextAttributes.proxyContextToMainThread = HEAP32[a + (48 >> 2)]; + contextAttributes.renderViaOffscreenBackBuffer = HEAP32[a + (52 >> 2)]; + var canvas = __findCanvasEventTarget(target); + if (!canvas) { + return 0 + } + if (contextAttributes.explicitSwapControl) { + return 0 + } + var contextHandle = GL.createContext(canvas, contextAttributes); + return contextHandle +} +function _emscripten_webgl_create_context(a0, a1) { + return _emscripten_webgl_do_create_context(a0, a1) +} +var _fabs = Math_abs; +function _getenv(name) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(9, 1, name); + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone; +if (ENVIRONMENT_IS_PTHREAD) ___tm_timezone = PthreadWorkerInit.___tm_timezone; +else PthreadWorkerInit.___tm_timezone = ___tm_timezone = (stringToUTF8("GMT", 1388336, 4), 1388336); +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; +function _tzset() { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(10, 1); + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} +function _pthread_cleanup_pop(execute) { + var routine = PThread.exitHandlers.pop(); + if (execute) routine() +} +function _pthread_cleanup_push(routine, arg) { + if (PThread.exitHandlers === null) { + PThread.exitHandlers = []; + if (!ENVIRONMENT_IS_PTHREAD) { + __ATEXIT__.push(function() { + PThread.runExitHandlers() + }) + } + } + PThread.exitHandlers.push(function() { + dynCall_vi(routine, arg) + }) +} +function __spawn_thread(threadParams) { + if (ENVIRONMENT_IS_PTHREAD) throw "Internal Error! _spawn_thread() can only ever be called from main application thread!"; + var worker = PThread.getNewWorker(); + if (worker.pthread !== undefined) throw "Internal error!"; + if (!threadParams.pthread_ptr) throw "Internal error, no pthread ptr!"; + PThread.runningWorkers.push(worker); + var tlsMemory = _malloc(128 * 4); + for (var i = 0; i < 128; ++i) { + HEAP32[tlsMemory + i * 4 >> 2] = 0 + } + var stackHigh = threadParams.stackBase + threadParams.stackSize; + var pthread = PThread.pthreads[threadParams.pthread_ptr] = { + worker: worker, + stackBase: threadParams.stackBase, + stackSize: threadParams.stackSize, + allocatedOwnStack: threadParams.allocatedOwnStack, + thread: threadParams.pthread_ptr, + threadInfoStruct: threadParams.pthread_ptr + }; + Atomics.store(HEAPU32, pthread.threadInfoStruct + 0 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 4 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 20 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 80 >> 2, threadParams.detached); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 116 >> 2, tlsMemory); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 60 >> 2, 0); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 52 >> 2, pthread.threadInfoStruct); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 56 >> 2, PROCINFO.pid); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 >> 2, threadParams.stackSize); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 96 >> 2, threadParams.stackSize); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 92 >> 2, stackHigh); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 8 >> 2, stackHigh); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 12 >> 2, threadParams.detached); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 20 >> 2, threadParams.schedPolicy); + Atomics.store(HEAPU32, pthread.threadInfoStruct + 120 + 24 >> 2, threadParams.schedPrio); + var global_libc = _emscripten_get_global_libc(); + var global_locale = global_libc + 40; + Atomics.store(HEAPU32, pthread.threadInfoStruct + 188 >> 2, global_locale); + worker.pthread = pthread; + var msg = { + cmd: "run", + start_routine: threadParams.startRoutine, + arg: threadParams.arg, + threadInfoStruct: threadParams.pthread_ptr, + selfThreadId: threadParams.pthread_ptr, + parentThreadId: threadParams.parent_pthread_ptr, + stackBase: threadParams.stackBase, + stackSize: threadParams.stackSize + }; + worker.runPthread = function() { + msg.time = performance.now(); + worker.postMessage(msg, threadParams.transferList) + }; + if (worker.loaded) { + worker.runPthread(); + delete worker.runPthread + } +} +function _pthread_getschedparam(thread, policy, schedparam) { + if (!policy && !schedparam) return ERRNO_CODES.EINVAL; + if (!thread) { + err("pthread_getschedparam called with a null thread pointer!"); + return ERRNO_CODES.ESRCH + } + var self = HEAP32[thread + 24 >> 2]; + if (self !== thread) { + err("pthread_getschedparam attempted on thread " + thread + ", which does not point to a valid thread, or does not exist anymore!"); + return ERRNO_CODES.ESRCH + } + var schedPolicy = Atomics.load(HEAPU32, thread + 120 + 20 >> 2); + var schedPrio = Atomics.load(HEAPU32, thread + 120 + 24 >> 2); + if (policy) HEAP32[policy >> 2] = schedPolicy; + if (schedparam) HEAP32[schedparam >> 2] = schedPrio; + return 0 +} +function _pthread_create(pthread_ptr, attr, start_routine, arg) { + if (typeof SharedArrayBuffer === "undefined") { + err("Current environment does not support SharedArrayBuffer, pthreads are not available!"); + return 6 + } + if (!pthread_ptr) { + err("pthread_create called with a null thread pointer!"); + return 28 + } + var transferList = []; + var error = 0; + if (ENVIRONMENT_IS_PTHREAD && (transferList.length === 0 || error)) { + return _emscripten_sync_run_in_main_thread_4(687865856, pthread_ptr, attr, start_routine, arg) + } + if (error) return error; + var stackSize = 0; + var stackBase = 0; + var detached = 0; + var schedPolicy = 0; + var schedPrio = 0; + if (attr) { + stackSize = HEAP32[attr >> 2]; + stackSize += 81920; + stackBase = HEAP32[attr + 8 >> 2]; + detached = HEAP32[attr + 12 >> 2] !== 0; + var inheritSched = HEAP32[attr + 16 >> 2] === 0; + if (inheritSched) { + var prevSchedPolicy = HEAP32[attr + 20 >> 2]; + var prevSchedPrio = HEAP32[attr + 24 >> 2]; + var parentThreadPtr = PThread.currentProxiedOperationCallerThread ? PThread.currentProxiedOperationCallerThread: _pthread_self(); + _pthread_getschedparam(parentThreadPtr, attr + 20, attr + 24); + schedPolicy = HEAP32[attr + 20 >> 2]; + schedPrio = HEAP32[attr + 24 >> 2]; + HEAP32[attr + 20 >> 2] = prevSchedPolicy; + HEAP32[attr + 24 >> 2] = prevSchedPrio + } else { + schedPolicy = HEAP32[attr + 20 >> 2]; + schedPrio = HEAP32[attr + 24 >> 2] + } + } else { + stackSize = 2097152 + } + var allocatedOwnStack = stackBase == 0; + if (allocatedOwnStack) { + stackBase = _memalign(16, stackSize) + } else { + stackBase -= stackSize; + assert(stackBase > 0) + } + var threadInfoStruct = _malloc(244); + for (var i = 0; i < 244 >> 2; ++i) HEAPU32[(threadInfoStruct >> 2) + i] = 0; + HEAP32[pthread_ptr >> 2] = threadInfoStruct; + HEAP32[threadInfoStruct + 24 >> 2] = threadInfoStruct; + var headPtr = threadInfoStruct + 168; + HEAP32[headPtr >> 2] = headPtr; + var threadParams = { + stackBase: stackBase, + stackSize: stackSize, + allocatedOwnStack: allocatedOwnStack, + schedPolicy: schedPolicy, + schedPrio: schedPrio, + detached: detached, + startRoutine: start_routine, + pthread_ptr: threadInfoStruct, + parent_pthread_ptr: _pthread_self(), + arg: arg, + transferList: transferList + }; + if (ENVIRONMENT_IS_PTHREAD) { + threadParams.cmd = "spawnThread"; + postMessage(threadParams, transferList) + } else { + __spawn_thread(threadParams) + } + return 0 +} +function __cleanup_thread(pthread_ptr) { + if (ENVIRONMENT_IS_PTHREAD) throw "Internal Error! _cleanup_thread() can only ever be called from main application thread!"; + if (!pthread_ptr) throw "Internal Error! Null pthread_ptr in _cleanup_thread!"; + HEAP32[pthread_ptr + 24 >> 2] = 0; + var pthread = PThread.pthreads[pthread_ptr]; + if (pthread) { + var worker = pthread.worker; + PThread.returnWorkerToPool(worker) + } +} +function __pthread_testcancel_js() { + if (!ENVIRONMENT_IS_PTHREAD) return; + if (!threadInfoStruct) return; + var cancelDisabled = Atomics.load(HEAPU32, threadInfoStruct + 72 >> 2); + if (cancelDisabled) return; + var canceled = Atomics.load(HEAPU32, threadInfoStruct + 0 >> 2); + if (canceled == 2) throw "Canceled!" +} +function _pthread_join(thread, status) { + if (!thread) { + err("pthread_join attempted on a null thread pointer!"); + return ERRNO_CODES.ESRCH + } + if (ENVIRONMENT_IS_PTHREAD && selfThreadId == thread) { + err("PThread " + thread + " is attempting to join to itself!"); + return ERRNO_CODES.EDEADLK + } else if (!ENVIRONMENT_IS_PTHREAD && PThread.mainThreadBlock == thread) { + err("Main thread " + thread + " is attempting to join to itself!"); + return ERRNO_CODES.EDEADLK + } + var self = HEAP32[thread + 24 >> 2]; + if (self !== thread) { + err("pthread_join attempted on thread " + thread + ", which does not point to a valid thread, or does not exist anymore!"); + return ERRNO_CODES.ESRCH + } + var detached = Atomics.load(HEAPU32, thread + 80 >> 2); + if (detached) { + err("Attempted to join thread " + thread + ", which was already detached!"); + return ERRNO_CODES.EINVAL + } + for (;;) { + var threadStatus = Atomics.load(HEAPU32, thread + 0 >> 2); + if (threadStatus == 1) { + var threadExitCode = Atomics.load(HEAPU32, thread + 4 >> 2); + if (status) HEAP32[status >> 2] = threadExitCode; + Atomics.store(HEAPU32, thread + 80 >> 2, 1); + if (!ENVIRONMENT_IS_PTHREAD) __cleanup_thread(thread); + else postMessage({ + cmd: "cleanupThread", + thread: thread + }); + return 0 + } + __pthread_testcancel_js(); + if (!ENVIRONMENT_IS_PTHREAD) _emscripten_main_thread_process_queued_calls(); + _emscripten_futex_wait(thread + 0, threadStatus, ENVIRONMENT_IS_PTHREAD ? 100 : 1) + } +} +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP: __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP: __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst: __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP: __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01": "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst: __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP: __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01": "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+": "-") + String("0000" + off).slice( - 4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} +function _sysconf(name) { + if (ENVIRONMENT_IS_PTHREAD) return _emscripten_proxy_to_main_thread_js(11, 1, name); + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return - 1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: + { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return - 1 +} +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +if (!ENVIRONMENT_IS_PTHREAD) PThread.initMainThreadBlock(); +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (ENVIRONMENT_IS_PTHREAD) { + _emscripten_get_now = function() { + return performance["now"]() - __performance_now_clock_drift + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (!ENVIRONMENT_IS_PTHREAD) Fetch.staticInit(); +var GLctx; +GL.init(); +var proxiedFunctionTable = [null, ___syscall221, ___syscall3, ___syscall5, _fd_close, _fd_fdstat_get, _fd_seek, _fd_write, _emscripten_set_canvas_element_size_main_thread, _getenv, _tzset, _sysconf]; +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length: lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_i = [0, "jsCall_i_0", "jsCall_i_1", "jsCall_i_2", "jsCall_i_3", "jsCall_i_4", "jsCall_i_5", "jsCall_i_6", "jsCall_i_7", "jsCall_i_8", "jsCall_i_9", "jsCall_i_10", "jsCall_i_11", "jsCall_i_12", "jsCall_i_13", "jsCall_i_14", "jsCall_i_15", "jsCall_i_16", "jsCall_i_17", "jsCall_i_18", "jsCall_i_19", "jsCall_i_20", "jsCall_i_21", "jsCall_i_22", "jsCall_i_23", "jsCall_i_24", "jsCall_i_25", "jsCall_i_26", "jsCall_i_27", "jsCall_i_28", "jsCall_i_29", "jsCall_i_30", "jsCall_i_31", "jsCall_i_32", "jsCall_i_33", "jsCall_i_34", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2837", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "___stdio_close", "___emscripten_stdout_close", "_myThread", "_releaseSniffStreamFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", "___emscripten_thread_main", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare", 0]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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, 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, 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]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "_pushBufferFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiiiiii = [0, "jsCall_iiiiiiiii_0", "jsCall_iiiiiiiii_1", "jsCall_iiiiiiiii_2", "jsCall_iiiiiiiii_3", "jsCall_iiiiiiiii_4", "jsCall_iiiiiiiii_5", "jsCall_iiiiiiiii_6", "jsCall_iiiiiiiii_7", "jsCall_iiiiiiiii_8", "jsCall_iiiiiiiii_9", "jsCall_iiiiiiiii_10", "jsCall_iiiiiiiii_11", "jsCall_iiiiiiiii_12", "jsCall_iiiiiiiii_13", "jsCall_iiiiiiiii_14", "jsCall_iiiiiiiii_15", "jsCall_iiiiiiiii_16", "jsCall_iiiiiiiii_17", "jsCall_iiiiiiiii_18", "jsCall_iiiiiiiii_19", "jsCall_iiiiiiiii_20", "jsCall_iiiiiiiii_21", "jsCall_iiiiiiiii_22", "jsCall_iiiiiiiii_23", "jsCall_iiiiiiiii_24", "jsCall_iiiiiiiii_25", "jsCall_iiiiiiiii_26", "jsCall_iiiiiiiii_27", "jsCall_iiiiiiiii_28", "jsCall_iiiiiiiii_29", "jsCall_iiiiiiiii_30", "jsCall_iiiiiiiii_31", "jsCall_iiiiiiiii_32", "jsCall_iiiiiiiii_33", "jsCall_iiiiiiiii_34", 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]; +var debug_table_iiiiiiiiii = [0, "jsCall_iiiiiiiiii_0", "jsCall_iiiiiiiiii_1", "jsCall_iiiiiiiiii_2", "jsCall_iiiiiiiiii_3", "jsCall_iiiiiiiiii_4", "jsCall_iiiiiiiiii_5", "jsCall_iiiiiiiiii_6", "jsCall_iiiiiiiiii_7", "jsCall_iiiiiiiiii_8", "jsCall_iiiiiiiiii_9", "jsCall_iiiiiiiiii_10", "jsCall_iiiiiiiiii_11", "jsCall_iiiiiiiiii_12", "jsCall_iiiiiiiiii_13", "jsCall_iiiiiiiiii_14", "jsCall_iiiiiiiiii_15", "jsCall_iiiiiiiiii_16", "jsCall_iiiiiiiiii_17", "jsCall_iiiiiiiiii_18", "jsCall_iiiiiiiiii_19", "jsCall_iiiiiiiiii_20", "jsCall_iiiiiiiiii_21", "jsCall_iiiiiiiiii_22", "jsCall_iiiiiiiiii_23", "jsCall_iiiiiiiiii_24", "jsCall_iiiiiiiiii_25", "jsCall_iiiiiiiiii_26", "jsCall_iiiiiiiiii_27", "jsCall_iiiiiiiiii_28", "jsCall_iiiiiiiiii_29", "jsCall_iiiiiiiiii_30", "jsCall_iiiiiiiiii_31", "jsCall_iiiiiiiiii_32", "jsCall_iiiiiiiiii_33", "jsCall_iiiiiiiiii_34", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "_io_read_seek", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", 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]; +var debug_table_vf = [0, "jsCall_vf_0", "jsCall_vf_1", "jsCall_vf_2", "jsCall_vf_3", "jsCall_vf_4", "jsCall_vf_5", "jsCall_vf_6", "jsCall_vf_7", "jsCall_vf_8", "jsCall_vf_9", "jsCall_vf_10", "jsCall_vf_11", "jsCall_vf_12", "jsCall_vf_13", "jsCall_vf_14", "jsCall_vf_15", "jsCall_vf_16", "jsCall_vf_17", "jsCall_vf_18", "jsCall_vf_19", "jsCall_vf_20", "jsCall_vf_21", "jsCall_vf_22", "jsCall_vf_23", "jsCall_vf_24", "jsCall_vf_25", "jsCall_vf_26", "jsCall_vf_27", "jsCall_vf_28", "jsCall_vf_29", "jsCall_vf_30", "jsCall_vf_31", "jsCall_vf_32", "jsCall_vf_33", "jsCall_vf_34", 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]; +var debug_table_vff = [0, "jsCall_vff_0", "jsCall_vff_1", "jsCall_vff_2", "jsCall_vff_3", "jsCall_vff_4", "jsCall_vff_5", "jsCall_vff_6", "jsCall_vff_7", "jsCall_vff_8", "jsCall_vff_9", "jsCall_vff_10", "jsCall_vff_11", "jsCall_vff_12", "jsCall_vff_13", "jsCall_vff_14", "jsCall_vff_15", "jsCall_vff_16", "jsCall_vff_17", "jsCall_vff_18", "jsCall_vff_19", "jsCall_vff_20", "jsCall_vff_21", "jsCall_vff_22", "jsCall_vff_23", "jsCall_vff_24", "jsCall_vff_25", "jsCall_vff_26", "jsCall_vff_27", "jsCall_vff_28", "jsCall_vff_29", "jsCall_vff_30", "jsCall_vff_31", "jsCall_vff_32", "jsCall_vff_33", "jsCall_vff_34", 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]; +var debug_table_vfff = [0, "jsCall_vfff_0", "jsCall_vfff_1", "jsCall_vfff_2", "jsCall_vfff_3", "jsCall_vfff_4", "jsCall_vfff_5", "jsCall_vfff_6", "jsCall_vfff_7", "jsCall_vfff_8", "jsCall_vfff_9", "jsCall_vfff_10", "jsCall_vfff_11", "jsCall_vfff_12", "jsCall_vfff_13", "jsCall_vfff_14", "jsCall_vfff_15", "jsCall_vfff_16", "jsCall_vfff_17", "jsCall_vfff_18", "jsCall_vfff_19", "jsCall_vfff_20", "jsCall_vfff_21", "jsCall_vfff_22", "jsCall_vfff_23", "jsCall_vfff_24", "jsCall_vfff_25", "jsCall_vfff_26", "jsCall_vfff_27", "jsCall_vfff_28", "jsCall_vfff_29", "jsCall_vfff_30", "jsCall_vfff_31", "jsCall_vfff_32", "jsCall_vfff_33", "jsCall_vfff_34", 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]; +var debug_table_vffff = [0, "jsCall_vffff_0", "jsCall_vffff_1", "jsCall_vffff_2", "jsCall_vffff_3", "jsCall_vffff_4", "jsCall_vffff_5", "jsCall_vffff_6", "jsCall_vffff_7", "jsCall_vffff_8", "jsCall_vffff_9", "jsCall_vffff_10", "jsCall_vffff_11", "jsCall_vffff_12", "jsCall_vffff_13", "jsCall_vffff_14", "jsCall_vffff_15", "jsCall_vffff_16", "jsCall_vffff_17", "jsCall_vffff_18", "jsCall_vffff_19", "jsCall_vffff_20", "jsCall_vffff_21", "jsCall_vffff_22", "jsCall_vffff_23", "jsCall_vffff_24", "jsCall_vffff_25", "jsCall_vffff_26", "jsCall_vffff_27", "jsCall_vffff_28", "jsCall_vffff_29", "jsCall_vffff_30", "jsCall_vffff_31", "jsCall_vffff_32", "jsCall_vffff_33", "jsCall_vffff_34", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3837", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", "_undo", 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, 0, 0, 0, 0]; +var debug_table_vif = [0, "jsCall_vif_0", "jsCall_vif_1", "jsCall_vif_2", "jsCall_vif_3", "jsCall_vif_4", "jsCall_vif_5", "jsCall_vif_6", "jsCall_vif_7", "jsCall_vif_8", "jsCall_vif_9", "jsCall_vif_10", "jsCall_vif_11", "jsCall_vif_12", "jsCall_vif_13", "jsCall_vif_14", "jsCall_vif_15", "jsCall_vif_16", "jsCall_vif_17", "jsCall_vif_18", "jsCall_vif_19", "jsCall_vif_20", "jsCall_vif_21", "jsCall_vif_22", "jsCall_vif_23", "jsCall_vif_24", "jsCall_vif_25", "jsCall_vif_26", "jsCall_vif_27", "jsCall_vif_28", "jsCall_vif_29", "jsCall_vif_30", "jsCall_vif_31", "jsCall_vif_32", "jsCall_vif_33", "jsCall_vif_34", 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]; +var debug_table_viff = [0, "jsCall_viff_0", "jsCall_viff_1", "jsCall_viff_2", "jsCall_viff_3", "jsCall_viff_4", "jsCall_viff_5", "jsCall_viff_6", "jsCall_viff_7", "jsCall_viff_8", "jsCall_viff_9", "jsCall_viff_10", "jsCall_viff_11", "jsCall_viff_12", "jsCall_viff_13", "jsCall_viff_14", "jsCall_viff_15", "jsCall_viff_16", "jsCall_viff_17", "jsCall_viff_18", "jsCall_viff_19", "jsCall_viff_20", "jsCall_viff_21", "jsCall_viff_22", "jsCall_viff_23", "jsCall_viff_24", "jsCall_viff_25", "jsCall_viff_26", "jsCall_viff_27", "jsCall_viff_28", "jsCall_viff_29", "jsCall_viff_30", "jsCall_viff_31", "jsCall_viff_32", "jsCall_viff_33", "jsCall_viff_34", 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]; +var debug_table_vifff = [0, "jsCall_vifff_0", "jsCall_vifff_1", "jsCall_vifff_2", "jsCall_vifff_3", "jsCall_vifff_4", "jsCall_vifff_5", "jsCall_vifff_6", "jsCall_vifff_7", "jsCall_vifff_8", "jsCall_vifff_9", "jsCall_vifff_10", "jsCall_vifff_11", "jsCall_vifff_12", "jsCall_vifff_13", "jsCall_vifff_14", "jsCall_vifff_15", "jsCall_vifff_16", "jsCall_vifff_17", "jsCall_vifff_18", "jsCall_vifff_19", "jsCall_vifff_20", "jsCall_vifff_21", "jsCall_vifff_22", "jsCall_vifff_23", "jsCall_vifff_24", "jsCall_vifff_25", "jsCall_vifff_26", "jsCall_vifff_27", "jsCall_vifff_28", "jsCall_vifff_29", "jsCall_vifff_30", "jsCall_vifff_31", "jsCall_vifff_32", "jsCall_vifff_33", "jsCall_vifff_34", 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]; +var debug_table_viffff = [0, "jsCall_viffff_0", "jsCall_viffff_1", "jsCall_viffff_2", "jsCall_viffff_3", "jsCall_viffff_4", "jsCall_viffff_5", "jsCall_viffff_6", "jsCall_viffff_7", "jsCall_viffff_8", "jsCall_viffff_9", "jsCall_viffff_10", "jsCall_viffff_11", "jsCall_viffff_12", "jsCall_viffff_13", "jsCall_viffff_14", "jsCall_viffff_15", "jsCall_viffff_16", "jsCall_viffff_17", "jsCall_viffff_18", "jsCall_viffff_19", "jsCall_viffff_20", "jsCall_viffff_21", "jsCall_viffff_22", "jsCall_viffff_23", "jsCall_viffff_24", "jsCall_viffff_25", "jsCall_viffff_26", "jsCall_viffff_27", "jsCall_viffff_28", "jsCall_viffff_29", "jsCall_viffff_30", "jsCall_viffff_31", "jsCall_viffff_32", "jsCall_viffff_33", "jsCall_viffff_34", 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]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viif = [0, "jsCall_viif_0", "jsCall_viif_1", "jsCall_viif_2", "jsCall_viif_3", "jsCall_viif_4", "jsCall_viif_5", "jsCall_viif_6", "jsCall_viif_7", "jsCall_viif_8", "jsCall_viif_9", "jsCall_viif_10", "jsCall_viif_11", "jsCall_viif_12", "jsCall_viif_13", "jsCall_viif_14", "jsCall_viif_15", "jsCall_viif_16", "jsCall_viif_17", "jsCall_viif_18", "jsCall_viif_19", "jsCall_viif_20", "jsCall_viif_21", "jsCall_viif_22", "jsCall_viif_23", "jsCall_viif_24", "jsCall_viif_25", "jsCall_viif_26", "jsCall_viif_27", "jsCall_viif_28", "jsCall_viif_29", "jsCall_viif_30", "jsCall_viif_31", "jsCall_viif_32", "jsCall_viif_33", "jsCall_viif_34", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiid = [0, "jsCall_viiiid_0", "jsCall_viiiid_1", "jsCall_viiiid_2", "jsCall_viiiid_3", "jsCall_viiiid_4", "jsCall_viiiid_5", "jsCall_viiiid_6", "jsCall_viiiid_7", "jsCall_viiiid_8", "jsCall_viiiid_9", "jsCall_viiiid_10", "jsCall_viiiid_11", "jsCall_viiiid_12", "jsCall_viiiid_13", "jsCall_viiiid_14", "jsCall_viiiid_15", "jsCall_viiiid_16", "jsCall_viiiid_17", "jsCall_viiiid_18", "jsCall_viiiid_19", "jsCall_viiiid_20", "jsCall_viiiid_21", "jsCall_viiiid_22", "jsCall_viiiid_23", "jsCall_viiiid_24", "jsCall_viiiid_25", "jsCall_viiiid_26", "jsCall_viiiid_27", "jsCall_viiiid_28", "jsCall_viiiid_29", "jsCall_viiiid_30", "jsCall_viiiid_31", "jsCall_viiiid_32", "jsCall_viiiid_33", "jsCall_viiiid_34", 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]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", 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, 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, 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, 0, 0]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8"]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8"]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "i": debug_table_i, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiiiiii": debug_table_iiiiiiiii, + "iiiiiiiiii": debug_table_iiiiiiiiii, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vf": debug_table_vf, + "vff": debug_table_vff, + "vfff": debug_table_vfff, + "vffff": debug_table_vffff, + "vi": debug_table_vi, + "vif": debug_table_vif, + "viff": debug_table_viff, + "vifff": debug_table_vifff, + "viffff": debug_table_viffff, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viif": debug_table_viif, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiii": debug_table_viiii, + "viiiid": debug_table_viiiid, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii +}; +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} +function nullFunc_i(x) { + abortFnPtrError(x, "i") +} +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} +function nullFunc_iiiiiiiii(x) { + abortFnPtrError(x, "iiiiiiiii") +} +function nullFunc_iiiiiiiiii(x) { + abortFnPtrError(x, "iiiiiiiiii") +} +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} +function nullFunc_vf(x) { + abortFnPtrError(x, "vf") +} +function nullFunc_vff(x) { + abortFnPtrError(x, "vff") +} +function nullFunc_vfff(x) { + abortFnPtrError(x, "vfff") +} +function nullFunc_vffff(x) { + abortFnPtrError(x, "vffff") +} +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} +function nullFunc_vif(x) { + abortFnPtrError(x, "vif") +} +function nullFunc_viff(x) { + abortFnPtrError(x, "viff") +} +function nullFunc_vifff(x) { + abortFnPtrError(x, "vifff") +} +function nullFunc_viffff(x) { + abortFnPtrError(x, "viffff") +} +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} +function nullFunc_viif(x) { + abortFnPtrError(x, "viif") +} +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} +function nullFunc_viiiid(x) { + abortFnPtrError(x, "viiiid") +} +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} +function jsCall_i(index) { + return functionPointers[index]() +} +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} +function jsCall_iiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} +function jsCall_iiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} +function jsCall_v(index) { + functionPointers[index]() +} +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} +function jsCall_vf(index, a1) { + functionPointers[index](a1) +} +function jsCall_vff(index, a1, a2) { + functionPointers[index](a1, a2) +} +function jsCall_vfff(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} +function jsCall_vffff(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} +function jsCall_vif(index, a1, a2) { + functionPointers[index](a1, a2) +} +function jsCall_viff(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} +function jsCall_vifff(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} +function jsCall_viffff(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} +function jsCall_viif(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} +function jsCall_viiiid(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___assert_fail": ___assert_fail, + "___buildEnvironment": ___buildEnvironment, + "___call_main": ___call_main, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__emscripten_get_fetch_work_queue": __emscripten_get_fetch_work_queue, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_asm_const_ii": _emscripten_asm_const_ii, + "_emscripten_futex_wait": _emscripten_futex_wait, + "_emscripten_futex_wake": _emscripten_futex_wake, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_get_now": _emscripten_get_now, + "_emscripten_has_threading_support": _emscripten_has_threading_support, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_receive_on_main_thread_js": _emscripten_receive_on_main_thread_js, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_set_canvas_element_size": _emscripten_set_canvas_element_size, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_emscripten_syscall": _emscripten_syscall, + "_emscripten_webgl_create_context": _emscripten_webgl_create_context, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_initPthreadsJS": _initPthreadsJS, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_pthread_cleanup_pop": _pthread_cleanup_pop, + "_pthread_cleanup_push": _pthread_cleanup_push, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_i": jsCall_i, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiiiiii": jsCall_iiiiiiiii, + "jsCall_iiiiiiiiii": jsCall_iiiiiiiiii, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vf": jsCall_vf, + "jsCall_vff": jsCall_vff, + "jsCall_vfff": jsCall_vfff, + "jsCall_vffff": jsCall_vffff, + "jsCall_vi": jsCall_vi, + "jsCall_vif": jsCall_vif, + "jsCall_viff": jsCall_viff, + "jsCall_vifff": jsCall_vifff, + "jsCall_viffff": jsCall_viffff, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viif": jsCall_viif, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiid": jsCall_viiiid, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_i": nullFunc_i, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiiiiii": nullFunc_iiiiiiiii, + "nullFunc_iiiiiiiiii": nullFunc_iiiiiiiiii, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vf": nullFunc_vf, + "nullFunc_vff": nullFunc_vff, + "nullFunc_vfff": nullFunc_vfff, + "nullFunc_vffff": nullFunc_vffff, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vif": nullFunc_vif, + "nullFunc_viff": nullFunc_viff, + "nullFunc_vifff": nullFunc_vifff, + "nullFunc_viffff": nullFunc_viffff, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viif": nullFunc_viif, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiid": nullFunc_viiiid, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "setTempRet0": setTempRet0, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___em_js__initPthreadsJS = Module["___em_js__initPthreadsJS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___em_js__initPthreadsJS"].apply(null, arguments) +}; +var ___emscripten_pthread_data_constructor = Module["___emscripten_pthread_data_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_pthread_data_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var ___pthread_tsd_run_dtors = Module["___pthread_tsd_run_dtors"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___pthread_tsd_run_dtors"].apply(null, arguments) +}; +var __emscripten_atomic_fetch_and_add_u64 = Module["__emscripten_atomic_fetch_and_add_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__emscripten_atomic_fetch_and_add_u64"].apply(null, arguments) +}; +var __emscripten_atomic_fetch_and_and_u64 = Module["__emscripten_atomic_fetch_and_and_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__emscripten_atomic_fetch_and_and_u64"].apply(null, arguments) +}; +var __emscripten_atomic_fetch_and_or_u64 = Module["__emscripten_atomic_fetch_and_or_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__emscripten_atomic_fetch_and_or_u64"].apply(null, arguments) +}; +var __emscripten_atomic_fetch_and_sub_u64 = Module["__emscripten_atomic_fetch_and_sub_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__emscripten_atomic_fetch_and_sub_u64"].apply(null, arguments) +}; +var __emscripten_atomic_fetch_and_xor_u64 = Module["__emscripten_atomic_fetch_and_xor_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__emscripten_atomic_fetch_and_xor_u64"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var __register_pthread_ptr = Module["__register_pthread_ptr"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__register_pthread_ptr"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _emscripten_async_queue_call_on_thread = Module["_emscripten_async_queue_call_on_thread"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_async_queue_call_on_thread"].apply(null, arguments) +}; +var _emscripten_async_queue_on_thread_ = Module["_emscripten_async_queue_on_thread_"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_async_queue_on_thread_"].apply(null, arguments) +}; +var _emscripten_async_run_in_main_thread = Module["_emscripten_async_run_in_main_thread"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_async_run_in_main_thread"].apply(null, arguments) +}; +var _emscripten_atomic_add_u64 = Module["_emscripten_atomic_add_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_add_u64"].apply(null, arguments) +}; +var _emscripten_atomic_and_u64 = Module["_emscripten_atomic_and_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_and_u64"].apply(null, arguments) +}; +var _emscripten_atomic_cas_u64 = Module["_emscripten_atomic_cas_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_cas_u64"].apply(null, arguments) +}; +var _emscripten_atomic_exchange_u64 = Module["_emscripten_atomic_exchange_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_exchange_u64"].apply(null, arguments) +}; +var _emscripten_atomic_load_f32 = Module["_emscripten_atomic_load_f32"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_load_f32"].apply(null, arguments) +}; +var _emscripten_atomic_load_f64 = Module["_emscripten_atomic_load_f64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_load_f64"].apply(null, arguments) +}; +var _emscripten_atomic_load_u64 = Module["_emscripten_atomic_load_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_load_u64"].apply(null, arguments) +}; +var _emscripten_atomic_or_u64 = Module["_emscripten_atomic_or_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_or_u64"].apply(null, arguments) +}; +var _emscripten_atomic_store_f32 = Module["_emscripten_atomic_store_f32"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_store_f32"].apply(null, arguments) +}; +var _emscripten_atomic_store_f64 = Module["_emscripten_atomic_store_f64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_store_f64"].apply(null, arguments) +}; +var _emscripten_atomic_store_u64 = Module["_emscripten_atomic_store_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_store_u64"].apply(null, arguments) +}; +var _emscripten_atomic_sub_u64 = Module["_emscripten_atomic_sub_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_sub_u64"].apply(null, arguments) +}; +var _emscripten_atomic_xor_u64 = Module["_emscripten_atomic_xor_u64"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_atomic_xor_u64"].apply(null, arguments) +}; +var _emscripten_current_thread_process_queued_calls = Module["_emscripten_current_thread_process_queued_calls"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_current_thread_process_queued_calls"].apply(null, arguments) +}; +var _emscripten_get_global_libc = Module["_emscripten_get_global_libc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_get_global_libc"].apply(null, arguments) +}; +var _emscripten_main_browser_thread_id = Module["_emscripten_main_browser_thread_id"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_main_browser_thread_id"].apply(null, arguments) +}; +var _emscripten_main_thread_process_queued_calls = Module["_emscripten_main_thread_process_queued_calls"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_main_thread_process_queued_calls"].apply(null, arguments) +}; +var _emscripten_register_main_browser_thread_id = Module["_emscripten_register_main_browser_thread_id"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_register_main_browser_thread_id"].apply(null, arguments) +}; +var _emscripten_run_in_main_runtime_thread_js = Module["_emscripten_run_in_main_runtime_thread_js"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_run_in_main_runtime_thread_js"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread = Module["_emscripten_sync_run_in_main_thread"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_0 = Module["_emscripten_sync_run_in_main_thread_0"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_0"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_1 = Module["_emscripten_sync_run_in_main_thread_1"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_1"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_2 = Module["_emscripten_sync_run_in_main_thread_2"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_2"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_3 = Module["_emscripten_sync_run_in_main_thread_3"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_3"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_4 = Module["_emscripten_sync_run_in_main_thread_4"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_4"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_5 = Module["_emscripten_sync_run_in_main_thread_5"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_5"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_6 = Module["_emscripten_sync_run_in_main_thread_6"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_6"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_7 = Module["_emscripten_sync_run_in_main_thread_7"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_7"].apply(null, arguments) +}; +var _emscripten_sync_run_in_main_thread_xprintf_varargs = Module["_emscripten_sync_run_in_main_thread_xprintf_varargs"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_emscripten_sync_run_in_main_thread_xprintf_varargs"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _memalign = Module["_memalign"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_memalign"].apply(null, arguments) +}; +var _proxy_main = Module["_proxy_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_proxy_main"].apply(null, arguments) +}; +var _pthread_self = Module["_pthread_self"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pthread_self"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var globalCtors = Module["globalCtors"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["globalCtors"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_ii = Module["dynCall_ii"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_ii"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["establishStackSpace"] = establishStackSpace; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["dynCall_ii"] = dynCall_ii; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +if (memoryInitializer && !ENVIRONMENT_IS_PTHREAD) { + if (!isDataURI(memoryInitializer)) { + memoryInitializer = locateFile(memoryInitializer) + } + if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) { + var data = readBinary(memoryInitializer); + HEAPU8.set(data, GLOBAL_BASE) + } else { + addRunDependency("memory initializer"); + var applyMemoryInitializer = function(data) { + if (data.byteLength) data = new Uint8Array(data); + for (var i = 0; i < data.length; i++) { + assert(HEAPU8[GLOBAL_BASE + i] === 0, "area for memory initializer should not have been touched before it's loaded") + } + HEAPU8.set(data, GLOBAL_BASE); + if (Module["memoryInitializerRequest"]) delete Module["memoryInitializerRequest"].response; + removeRunDependency("memory initializer") + }; + var doBrowserLoad = function() { + readAsync(memoryInitializer, applyMemoryInitializer, + function() { + throw "could not load memory initializer " + memoryInitializer + }) + }; + if (Module["memoryInitializerRequest"]) { + var useRequest = function() { + var request = Module["memoryInitializerRequest"]; + var response = request.response; + if (request.status !== 200 && request.status !== 0) { + console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: " + request.status + ", retrying " + memoryInitializer); + doBrowserLoad(); + return + } + applyMemoryInitializer(response) + }; + if (Module["memoryInitializerRequest"].response) { + setTimeout(useRequest, 0) + } else { + Module["memoryInitializerRequest"].addEventListener("load", useRequest) + } + } else { + doBrowserLoad() + } + } +} +var calledRun; +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch(e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, + 1); + doRun() + }, + 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch(e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + PThread.terminateAllThreads(); + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +if (!ENVIRONMENT_IS_PTHREAD) noExitRuntime = true; +if (!ENVIRONMENT_IS_PTHREAD) run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-v20220421.js b/vite_vue_ts/public/dist/missile-v20220421.js deleted file mode 100644 index 9b23c962..00000000 --- a/vite_vue_ts/public/dist/missile-v20220421.js +++ /dev/null @@ -1,2 +0,0 @@ -var ENVIRONMENT_IS_PTHREAD = true; -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";var nodeFS;var nodePath;read_=function shell_read(filename,binary){var ret;if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)};setWindowTitle=function(title){document.title=title}}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments"))Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_")}});if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram"))Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram")}});if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit"))Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_")}});assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");if(!Object.getOwnPropertyDescriptor(Module,"read"))Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_")}});if(!Object.getOwnPropertyDescriptor(Module,"readAsync"))Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync")}});if(!Object.getOwnPropertyDescriptor(Module,"readBinary"))Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary")}});stackSave=stackRestore=stackAlloc=function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")};function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly")}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":function(x,y){return x%y},"debugger":function(){debugger}};var jsCallStartIndex=1;var functionPointers=new Array(35);function addFunction(func,sig){assert(typeof func!=="undefined");var base=0;for(var i=base;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":3968,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;if(u>=2097152)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).");outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var PAGE_SIZE=16384;var WASM_PAGE_SIZE=65536;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=1134400,STACK_MAX=6377280,DYNAMIC_BASE=6377280,DYNAMICTOP_PTR=1134176;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||1073741824;if(!Object.getOwnPropertyDescriptor(Module,"TOTAL_MEMORY"))Object.defineProperty(Module,"TOTAL_MEMORY",{configurable:true,get:function(){abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}});assert(INITIAL_TOTAL_MEMORY>=TOTAL_STACK,"TOTAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE,"maximum":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;assert(INITIAL_TOTAL_MEMORY%WASM_PAGE_SIZE===0);updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){var cookie1=HEAPU32[(STACK_MAX>>2)-1];var cookie2=HEAPU32[(STACK_MAX>>2)-2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+cookie2.toString(16)+" "+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function abortFnPtrError(ptr,sig){var possibleSig="";for(var x in debug_tables){var tbl=debug_tables[x];if(tbl[ptr]){possibleSig+='as sig "'+x+'" pointing to function '+tbl[ptr]+", "}}abort("Invalid function pointer "+ptr+" called with signature '"+sig+"'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: "+possibleSig)}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;throw output}if(!ENVIRONMENT_IS_PTHREAD)addOnPreRun(function(){if(typeof SharedArrayBuffer!=="undefined"){addRunDependency("pthreads");PThread.allocateUnusedWorkers(10,function(){removeRunDependency("pthreads")})}});var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="missile-v20220421.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_unstable":asmLibraryArg,"global":{"NaN":NaN,Infinity:Infinity},"global.Math":Math,"asm2wasm":asm2wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiatedSource(output){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}Module["asm"]=createWasm;var tempDouble;var tempI64;var ASM_CONSTS=[function(){if(typeof window!="undefined"){window.dispatchEvent(new CustomEvent("wasmLoaded"))}else{global.onWASMLoaded&&global.onWASMLoaded()}}];function _emscripten_asm_const_i(code){return ASM_CONSTS[code]()}__ATINIT__.push({func:function(){___emscripten_environ_constructor()}});var tempDoublePtr=1134384;assert(tempDoublePtr%8==0);function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b__Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]="web_user";ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]=(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";ENV["_"]=thisProgram;poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___lock(){}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else err("failed to set errno from JS");return value}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=function(e){done(this.error);e.preventDefault()};transaction.oncomplete=function(e){if(!errored){callback(null)}};create.sort().forEach(function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};var NODEFS={isWindows:false,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={1024:flags["O_APPEND"],64:flags["O_CREAT"],128:flags["O_EXCL"],0:flags["O_RDONLY"],2:flags["O_RDWR"],4096:flags["O_SYNC"],512:flags["O_TRUNC"],1:flags["O_WRONLY"]}},bufferFrom:function(arrayBuffer){return Buffer["alloc"]?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)},convertNodeCode:function(e){var code=e.code;assert(code in ERRNO_CODES);return ERRNO_CODES[code]},mount:function(mount){assert(ENVIRONMENT_HAS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)},createNode:function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(28)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode:function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return stat.mode},realPath:function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)},flagsForNode:function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(28)}},node_ops:{getattr:function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr:function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},lookup:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod:function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return node},rename:function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},unlink:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},rmdir:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readdir:function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},symlink:function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readlink:function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}},stream_ops:{open:function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},close:function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},read:function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},write:function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size},write:function(stream,buffer,offset,length,position){throw new FS.ErrnoError(29)},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(path,opts){path=PATH_FS.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 2}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 2}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(fd){if(fd===undefined)fd=SYSCALLS.get();var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:___setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_close(){return _fd_close.apply(null,arguments)}function _fd_fdstat_get(fd,pbuf){try{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4;HEAP8[pbuf>>0]=type;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_fdstat_get(){return _fd_fdstat_get.apply(null,arguments)}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_seek(){return _fd_seek.apply(null,arguments)}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_write(){return _fd_write.apply(null,arguments)}function __emscripten_fetch_free(id){delete Fetch.xhrs[id-1]}function _abort(){abort()}function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return 0||ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||typeof performance==="object"&&performance&&typeof performance["now"]==="function"}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(28);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function _emscripten_get_heap_size(){return HEAP8.length}function _emscripten_is_main_browser_thread(){return!ENVIRONMENT_IS_WORKER}function abortOnCannotGrowMemory(requestedSize){abort("Cannot enlarge memory arrays to size "+requestedSize+" bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+HEAP8.length+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function _emscripten_resize_heap(requestedSize){abortOnCannotGrowMemory(requestedSize)}var Fetch={xhrs:[],setu64:function(addr,val){HEAPU32[addr>>2]=val;HEAPU32[addr+4>>2]=val/4294967296|0},openDatabase:function(dbname,dbversion,onsuccess,onerror){try{var openRequest=indexedDB.open(dbname,dbversion)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function(event){var db=event.target.result;if(db.objectStoreNames.contains("FILES")){db.deleteObjectStore("FILES")}db.createObjectStore("FILES")};openRequest.onsuccess=function(event){onsuccess(event.target.result)};openRequest.onerror=function(error){onerror(error)}},staticInit:function(){var isMainThread=typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined";var onsuccess=function(db){Fetch.dbInstance=db;if(isMainThread){removeRunDependency("library_fetch_init")}};var onerror=function(){Fetch.dbInstance=false;if(isMainThread){removeRunDependency("library_fetch_init")}};Fetch.openDatabase("emscripten_filesystem",1,onsuccess,onerror);if(typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined"||!ENVIRONMENT_IS_FETCH_WORKER)addRunDependency("library_fetch_init")}};function __emscripten_fetch_xhr(fetch,onsuccess,onerror,onprogress,onreadystatechange){var url=HEAPU32[fetch+8>>2];if(!url){onerror(fetch,0,"no url specified!");return}var url_=UTF8ToString(url);var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);if(!requestMethod)requestMethod="GET";var userData=HEAPU32[fetch_attr+32>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var timeoutMsecs=HEAPU32[fetch_attr+56>>2];var withCredentials=!!HEAPU32[fetch_attr+60>>2];var destinationPath=HEAPU32[fetch_attr+64>>2];var userName=HEAPU32[fetch_attr+68>>2];var password=HEAPU32[fetch_attr+72>>2];var requestHeaders=HEAPU32[fetch_attr+76>>2];var overriddenMimeType=HEAPU32[fetch_attr+80>>2];var dataPtr=HEAPU32[fetch_attr+84>>2];var dataLength=HEAPU32[fetch_attr+88>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var fetchAttrSynchronous=!!(fetchAttributes&64);var fetchAttrWaitable=!!(fetchAttributes&128);var userNameStr=userName?UTF8ToString(userName):undefined;var passwordStr=password?UTF8ToString(password):undefined;var overriddenMimeTypeStr=overriddenMimeType?UTF8ToString(overriddenMimeType):undefined;var xhr=new XMLHttpRequest;xhr.withCredentials=withCredentials;xhr.open(requestMethod,url_,!fetchAttrSynchronous,userNameStr,passwordStr);if(!fetchAttrSynchronous)xhr.timeout=timeoutMsecs;xhr.url_=url_;assert(!fetchAttrStreamData,"streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()");xhr.responseType="arraybuffer";if(overriddenMimeType){xhr.overrideMimeType(overriddenMimeTypeStr)}if(requestHeaders){for(;;){var key=HEAPU32[requestHeaders>>2];if(!key)break;var value=HEAPU32[requestHeaders+4>>2];if(!value)break;requestHeaders+=8;var keyStr=UTF8ToString(key);var valueStr=UTF8ToString(value);xhr.setRequestHeader(keyStr,valueStr)}}Fetch.xhrs.push(xhr);var id=Fetch.xhrs.length;HEAPU32[fetch+0>>2]=id;var data=dataPtr&&dataLength?HEAPU8.slice(dataPtr,dataPtr+dataLength):null;xhr.onload=function(e){var len=xhr.response?xhr.response.byteLength:0;var ptr=0;var ptrLen=0;if(fetchAttrLoadToMemory&&!fetchAttrStreamData){ptrLen=len;ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,0);if(len){Fetch.setu64(fetch+32,len)}HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState===4&&xhr.status===0){if(len>0)xhr.status=200;else xhr.status=404}HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(xhr.status>=200&&xhr.status<300){if(onsuccess)onsuccess(fetch,xhr,e)}else{if(onerror)onerror(fetch,xhr,e)}};xhr.onerror=function(e){var status=xhr.status;if(xhr.readyState===4&&status===0)status=404;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=xhr.readyState;HEAPU16[fetch+42>>1]=status;if(onerror)onerror(fetch,xhr,e)};xhr.ontimeout=function(e){if(onerror)onerror(fetch,xhr,e)};xhr.onprogress=function(e){var ptrLen=fetchAttrLoadToMemory&&fetchAttrStreamData&&xhr.response?xhr.response.byteLength:0;var ptr=0;if(fetchAttrLoadToMemory&&fetchAttrStreamData){ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,e.loaded-ptrLen);Fetch.setu64(fetch+32,e.total);HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=3&&xhr.status===0&&e.loaded>0)xhr.status=200;HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(onprogress)onprogress(fetch,xhr,e)};xhr.onreadystatechange=function(e){HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=2){HEAPU16[fetch+42>>1]=xhr.status}if(onreadystatechange)onreadystatechange(fetch,xhr,e)};try{xhr.send(data)}catch(e){if(onerror)onerror(fetch,xhr,e)}}function __emscripten_fetch_cache_data(db,fetch,data,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var destinationPath=HEAPU32[fetch_attr+64>>2];if(!destinationPath)destinationPath=HEAPU32[fetch+8>>2];var destinationPathStr=UTF8ToString(destinationPath);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var putRequest=packages.put(data,destinationPathStr);putRequest.onsuccess=function(event){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,destinationPathStr)};putRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=413;stringToUTF8("Payload Too Large",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_load_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readonly");var packages=transaction.objectStore("FILES");var getRequest=packages.get(pathStr);getRequest.onsuccess=function(event){if(event.target.result){var value=event.target.result;var len=value.byteLength||value.length;var ptr=_malloc(len);HEAPU8.set(new Uint8Array(value),ptr);HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,len);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,len);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)}else{HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,"no data")}};getRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_delete_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var request=packages.delete(pathStr);request.onsuccess=function(event){var value=event.target.result;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)};request.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function _emscripten_start_fetch(fetch,successcb,errorcb,progresscb,readystatechangecb){if(typeof noExitRuntime!=="undefined")noExitRuntime=true;var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);var onsuccess=HEAPU32[fetch_attr+36>>2];var onerror=HEAPU32[fetch_attr+40>>2];var onprogress=HEAPU32[fetch_attr+44>>2];var onreadystatechange=HEAPU32[fetch_attr+48>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrNoDownload=!!(fetchAttributes&32);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var reportSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var reportProgress=function(fetch,xhr,e){if(onprogress)dynCall_vi(onprogress,fetch);else if(progresscb)progresscb(fetch)};var reportError=function(fetch,xhr,e){if(onerror)dynCall_vi(onerror,fetch);else if(errorcb)errorcb(fetch)};var reportReadyStateChange=function(fetch,xhr,e){if(onreadystatechange)dynCall_vi(onreadystatechange,fetch);else if(readystatechangecb)readystatechangecb(fetch)};var performUncachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,reportSuccess,reportError,reportProgress,reportReadyStateChange)};var cacheResultAndReportSuccess=function(fetch,xhr,e){var storeSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var storeError=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,xhr.response,storeSuccess,storeError)};var performCachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,cacheResultAndReportSuccess,reportError,reportProgress,reportReadyStateChange)};if(requestMethod==="EM_IDB_STORE"){var ptr=HEAPU32[fetch_attr+84>>2];__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,HEAPU8.slice(ptr,ptr+HEAPU32[fetch_attr+88>>2]),reportSuccess,reportError)}else if(requestMethod==="EM_IDB_DELETE"){__emscripten_fetch_delete_cached_data(Fetch.dbInstance,fetch,reportSuccess,reportError)}else if(!fetchAttrReplace){__emscripten_fetch_load_cached_data(Fetch.dbInstance,fetch,reportSuccess,fetchAttrNoDownload?reportError:fetchAttrPersistFile?performCachedXhr:performUncachedXhr)}else if(!fetchAttrNoDownload){__emscripten_fetch_xhr(fetch,fetchAttrPersistFile?cacheResultAndReportSuccess:reportSuccess,reportError,reportProgress,reportReadyStateChange)}else{return 0}return fetch}var _fabs=Math_abs;function _getenv(name){if(name===0)return 0;name=UTF8ToString(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=(stringToUTF8("GMT",1134272,4),1134272);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(a0){return _llvm_exp2_f32(a0)}function _llvm_log2_f32(x){return Math.log(x)/Math.LN2}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);stackRestore(ret)}function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(stackSave());return self.LLVM_SAVEDSTACKS.length-1}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _usleep(useconds){var msec=useconds/1e3;if((ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]){var start=self["performance"]["now"]();while(self["performance"]["now"]()-start>2];var nanoseconds=HEAP32[rqtp+4>>2];if(nanoseconds<0||nanoseconds>999999999||seconds<0){___setErrNo(28);return-1}if(rmtp!==0){HEAP32[rmtp>>2]=0;HEAP32[rmtp+4>>2]=0}return _usleep(seconds*1e6+nanoseconds/1e3)}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_create(){return 6}function _pthread_join(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-65536;maxHeapSize=HEAPU8.length;return maxHeapSize/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(28);return-1}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}FS.staticInit();if(ENVIRONMENT_HAS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof performance==="object"&&performance&&typeof performance["now"]==="function"){_emscripten_get_now=function(){return performance["now"]()}}else{_emscripten_get_now=Date.now}Fetch.staticInit();function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var debug_table_dd=[0,"jsCall_dd_0","jsCall_dd_1","jsCall_dd_2","jsCall_dd_3","jsCall_dd_4","jsCall_dd_5","jsCall_dd_6","jsCall_dd_7","jsCall_dd_8","jsCall_dd_9","jsCall_dd_10","jsCall_dd_11","jsCall_dd_12","jsCall_dd_13","jsCall_dd_14","jsCall_dd_15","jsCall_dd_16","jsCall_dd_17","jsCall_dd_18","jsCall_dd_19","jsCall_dd_20","jsCall_dd_21","jsCall_dd_22","jsCall_dd_23","jsCall_dd_24","jsCall_dd_25","jsCall_dd_26","jsCall_dd_27","jsCall_dd_28","jsCall_dd_29","jsCall_dd_30","jsCall_dd_31","jsCall_dd_32","jsCall_dd_33","jsCall_dd_34","_sinh","_cosh","_tanh","_sin","_cos","_tan","_atan","_asin","_acos","_exp","_log","_fabs","_etime",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_did=[0,"jsCall_did_0","jsCall_did_1","jsCall_did_2","jsCall_did_3","jsCall_did_4","jsCall_did_5","jsCall_did_6","jsCall_did_7","jsCall_did_8","jsCall_did_9","jsCall_did_10","jsCall_did_11","jsCall_did_12","jsCall_did_13","jsCall_did_14","jsCall_did_15","jsCall_did_16","jsCall_did_17","jsCall_did_18","jsCall_did_19","jsCall_did_20","jsCall_did_21","jsCall_did_22","jsCall_did_23","jsCall_did_24","jsCall_did_25","jsCall_did_26","jsCall_did_27","jsCall_did_28","jsCall_did_29","jsCall_did_30","jsCall_did_31","jsCall_did_32","jsCall_did_33","jsCall_did_34",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];var debug_table_didd=[0,"jsCall_didd_0","jsCall_didd_1","jsCall_didd_2","jsCall_didd_3","jsCall_didd_4","jsCall_didd_5","jsCall_didd_6","jsCall_didd_7","jsCall_didd_8","jsCall_didd_9","jsCall_didd_10","jsCall_didd_11","jsCall_didd_12","jsCall_didd_13","jsCall_didd_14","jsCall_didd_15","jsCall_didd_16","jsCall_didd_17","jsCall_didd_18","jsCall_didd_19","jsCall_didd_20","jsCall_didd_21","jsCall_didd_22","jsCall_didd_23","jsCall_didd_24","jsCall_didd_25","jsCall_didd_26","jsCall_didd_27","jsCall_didd_28","jsCall_didd_29","jsCall_didd_30","jsCall_didd_31","jsCall_didd_32","jsCall_didd_33","jsCall_didd_34",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];var debug_table_fii=[0,"jsCall_fii_0","jsCall_fii_1","jsCall_fii_2","jsCall_fii_3","jsCall_fii_4","jsCall_fii_5","jsCall_fii_6","jsCall_fii_7","jsCall_fii_8","jsCall_fii_9","jsCall_fii_10","jsCall_fii_11","jsCall_fii_12","jsCall_fii_13","jsCall_fii_14","jsCall_fii_15","jsCall_fii_16","jsCall_fii_17","jsCall_fii_18","jsCall_fii_19","jsCall_fii_20","jsCall_fii_21","jsCall_fii_22","jsCall_fii_23","jsCall_fii_24","jsCall_fii_25","jsCall_fii_26","jsCall_fii_27","jsCall_fii_28","jsCall_fii_29","jsCall_fii_30","jsCall_fii_31","jsCall_fii_32","jsCall_fii_33","jsCall_fii_34","_sbr_sum_square_c",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];var debug_table_fiii=[0,"jsCall_fiii_0","jsCall_fiii_1","jsCall_fiii_2","jsCall_fiii_3","jsCall_fiii_4","jsCall_fiii_5","jsCall_fiii_6","jsCall_fiii_7","jsCall_fiii_8","jsCall_fiii_9","jsCall_fiii_10","jsCall_fiii_11","jsCall_fiii_12","jsCall_fiii_13","jsCall_fiii_14","jsCall_fiii_15","jsCall_fiii_16","jsCall_fiii_17","jsCall_fiii_18","jsCall_fiii_19","jsCall_fiii_20","jsCall_fiii_21","jsCall_fiii_22","jsCall_fiii_23","jsCall_fiii_24","jsCall_fiii_25","jsCall_fiii_26","jsCall_fiii_27","jsCall_fiii_28","jsCall_fiii_29","jsCall_fiii_30","jsCall_fiii_31","jsCall_fiii_32","jsCall_fiii_33","jsCall_fiii_34","_avpriv_scalarproduct_float_c",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];var debug_table_ii=[0,"jsCall_ii_0","jsCall_ii_1","jsCall_ii_2","jsCall_ii_3","jsCall_ii_4","jsCall_ii_5","jsCall_ii_6","jsCall_ii_7","jsCall_ii_8","jsCall_ii_9","jsCall_ii_10","jsCall_ii_11","jsCall_ii_12","jsCall_ii_13","jsCall_ii_14","jsCall_ii_15","jsCall_ii_16","jsCall_ii_17","jsCall_ii_18","jsCall_ii_19","jsCall_ii_20","jsCall_ii_21","jsCall_ii_22","jsCall_ii_23","jsCall_ii_24","jsCall_ii_25","jsCall_ii_26","jsCall_ii_27","jsCall_ii_28","jsCall_ii_29","jsCall_ii_30","jsCall_ii_31","jsCall_ii_32","jsCall_ii_33","jsCall_ii_34","_avi_probe","_avi_read_header","_avi_read_close","_av_default_item_name","_ff_avio_child_class_next","_flv_probe","_flv_read_header","_flv_read_close","_live_flv_probe","_mov_probe","_mov_read_header","_mov_read_close","_mpegps_probe","_mpegps_read_header","_mpegts_probe","_mpegts_read_header","_mpegts_read_close","_mpegvideo_probe","_ff_raw_video_read_header","_format_to_name","_format_child_class_next","_get_category","_urlcontext_to_name","_ff_urlcontext_child_class_next","_sws_context_to_name","_ff_bsf_child_class_next","_hevc_mp4toannexb_init","_hevc_init_thread_copy","_hevc_decode_init","_hevc_decode_free","_context_to_name","_codec_child_class_next","_get_category_2429","_aac_decode_init","_aac_decode_close","_init","___stdio_close","___emscripten_stdout_close","_initializeDecoderFunc","__getFrame","_closeVideoFunc","_releaseFunc","_initializeDemuxerFunc","_getPacketFunc","_releaseDemuxerFunc","_releaseSniffStreamFunc","_hflv_releaseFunc","_hflv_getBufferLength","_io_short_seek","_avio_rb16","_avio_rl16","_av_buffer_allocz","_av_buffer_alloc","_frame_worker_thread","_thread_worker",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,0,0,0,0];var debug_table_iid=[0,"jsCall_iid_0","jsCall_iid_1","jsCall_iid_2","jsCall_iid_3","jsCall_iid_4","jsCall_iid_5","jsCall_iid_6","jsCall_iid_7","jsCall_iid_8","jsCall_iid_9","jsCall_iid_10","jsCall_iid_11","jsCall_iid_12","jsCall_iid_13","jsCall_iid_14","jsCall_iid_15","jsCall_iid_16","jsCall_iid_17","jsCall_iid_18","jsCall_iid_19","jsCall_iid_20","jsCall_iid_21","jsCall_iid_22","jsCall_iid_23","jsCall_iid_24","jsCall_iid_25","jsCall_iid_26","jsCall_iid_27","jsCall_iid_28","jsCall_iid_29","jsCall_iid_30","jsCall_iid_31","jsCall_iid_32","jsCall_iid_33","jsCall_iid_34","_seekBufferFunc",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];var debug_table_iii=[0,"jsCall_iii_0","jsCall_iii_1","jsCall_iii_2","jsCall_iii_3","jsCall_iii_4","jsCall_iii_5","jsCall_iii_6","jsCall_iii_7","jsCall_iii_8","jsCall_iii_9","jsCall_iii_10","jsCall_iii_11","jsCall_iii_12","jsCall_iii_13","jsCall_iii_14","jsCall_iii_15","jsCall_iii_16","jsCall_iii_17","jsCall_iii_18","jsCall_iii_19","jsCall_iii_20","jsCall_iii_21","jsCall_iii_22","jsCall_iii_23","jsCall_iii_24","jsCall_iii_25","jsCall_iii_26","jsCall_iii_27","jsCall_iii_28","jsCall_iii_29","jsCall_iii_30","jsCall_iii_31","jsCall_iii_32","jsCall_iii_33","jsCall_iii_34","_avi_read_packet","_ff_avio_child_next","_flv_read_packet","_mov_read_packet","_mpegps_read_packet","_mpegts_read_packet","_mpegts_raw_read_packet","_ff_raw_read_partial_packet","_format_child_next","_urlcontext_child_next","_bsf_child_next","_hevc_mp4toannexb_filter","_hevc_update_thread_context","_null_filter","_codec_child_next","_initSniffStreamFunc","_hflv_initFunc","_hflv_getPacketFunc","_descriptor_compare","_io_read_pause","_avcodec_default_get_format","_hls_decode_entry","_ff_startcode_find_candidate_c","_color_table_compare",0,0,0,0];var debug_table_iiii=[0,"jsCall_iiii_0","jsCall_iiii_1","jsCall_iiii_2","jsCall_iiii_3","jsCall_iiii_4","jsCall_iiii_5","jsCall_iiii_6","jsCall_iiii_7","jsCall_iiii_8","jsCall_iiii_9","jsCall_iiii_10","jsCall_iiii_11","jsCall_iiii_12","jsCall_iiii_13","jsCall_iiii_14","jsCall_iiii_15","jsCall_iiii_16","jsCall_iiii_17","jsCall_iiii_18","jsCall_iiii_19","jsCall_iiii_20","jsCall_iiii_21","jsCall_iiii_22","jsCall_iiii_23","jsCall_iiii_24","jsCall_iiii_25","jsCall_iiii_26","jsCall_iiii_27","jsCall_iiii_28","jsCall_iiii_29","jsCall_iiii_30","jsCall_iiii_31","jsCall_iiii_32","jsCall_iiii_33","jsCall_iiii_34","_mov_read_aclr","_mov_read_avid","_mov_read_ares","_mov_read_avss","_mov_read_av1c","_mov_read_chpl","_mov_read_stco","_mov_read_colr","_mov_read_ctts","_mov_read_default","_mov_read_dpxe","_mov_read_dref","_mov_read_elst","_mov_read_enda","_mov_read_fiel","_mov_read_adrm","_mov_read_ftyp","_mov_read_glbl","_mov_read_hdlr","_mov_read_ilst","_mov_read_jp2h","_mov_read_mdat","_mov_read_mdhd","_mov_read_meta","_mov_read_moof","_mov_read_moov","_mov_read_mvhd","_mov_read_svq3","_mov_read_alac","_mov_read_pasp","_mov_read_sidx","_mov_read_stps","_mov_read_strf","_mov_read_stsc","_mov_read_stsd","_mov_read_stss","_mov_read_stsz","_mov_read_stts","_mov_read_tkhd","_mov_read_tfdt","_mov_read_tfhd","_mov_read_trak","_mov_read_tmcd","_mov_read_chap","_mov_read_trex","_mov_read_trun","_mov_read_wave","_mov_read_esds","_mov_read_dac3","_mov_read_dec3","_mov_read_ddts","_mov_read_wide","_mov_read_wfex","_mov_read_cmov","_mov_read_chan","_mov_read_dvc1","_mov_read_sbgp","_mov_read_uuid","_mov_read_targa_y216","_mov_read_free","_mov_read_custom","_mov_read_frma","_mov_read_senc","_mov_read_saiz","_mov_read_saio","_mov_read_pssh","_mov_read_schm","_mov_read_tenc","_mov_read_dfla","_mov_read_st3d","_mov_read_sv3d","_mov_read_dops","_mov_read_smdm","_mov_read_coll","_mov_read_vpcc","_mov_read_mdcv","_mov_read_clli","_h264_split","_hevc_split","___stdio_write","_sn_write","_setCodecTypeFunc","_getSniffStreamPacketFunc","_read_stream_live","_read_stream_vod","_hflv_read_stream_live","_read_packet","_io_write_packet","_io_read_packet","_dyn_buf_write","_avcodec_default_get_buffer2","_mov_read_keys","_mov_read_udta_string","_do_read",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,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,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,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];var debug_table_iiiii=[0,"jsCall_iiiii_0","jsCall_iiiii_1","jsCall_iiiii_2","jsCall_iiiii_3","jsCall_iiiii_4","jsCall_iiiii_5","jsCall_iiiii_6","jsCall_iiiii_7","jsCall_iiiii_8","jsCall_iiiii_9","jsCall_iiiii_10","jsCall_iiiii_11","jsCall_iiiii_12","jsCall_iiiii_13","jsCall_iiiii_14","jsCall_iiiii_15","jsCall_iiiii_16","jsCall_iiiii_17","jsCall_iiiii_18","jsCall_iiiii_19","jsCall_iiiii_20","jsCall_iiiii_21","jsCall_iiiii_22","jsCall_iiiii_23","jsCall_iiiii_24","jsCall_iiiii_25","jsCall_iiiii_26","jsCall_iiiii_27","jsCall_iiiii_28","jsCall_iiiii_29","jsCall_iiiii_30","jsCall_iiiii_31","jsCall_iiiii_32","jsCall_iiiii_33","jsCall_iiiii_34","_hevc_decode_frame","_aac_decode_frame","_demuxBoxFunc","_hflv_pushBufferFunc","_mov_metadata_int8_no_padding","_mov_metadata_track_or_disc_number","_mov_metadata_gnre","_mov_metadata_int8_bypass_padding","_gamma_convert","_lum_convert","_lum_h_scale","_chr_convert","_chr_h_scale","_no_chr_scale","_lum_planar_vscale","_chr_planar_vscale","_any_vscale","_packed_vscale","_hls_decode_entry_wpp",0,0,0,0,0,0,0,0,0];var debug_table_iiiiii=[0,"jsCall_iiiiii_0","jsCall_iiiiii_1","jsCall_iiiiii_2","jsCall_iiiiii_3","jsCall_iiiiii_4","jsCall_iiiiii_5","jsCall_iiiiii_6","jsCall_iiiiii_7","jsCall_iiiiii_8","jsCall_iiiiii_9","jsCall_iiiiii_10","jsCall_iiiiii_11","jsCall_iiiiii_12","jsCall_iiiiii_13","jsCall_iiiiii_14","jsCall_iiiiii_15","jsCall_iiiiii_16","jsCall_iiiiii_17","jsCall_iiiiii_18","jsCall_iiiiii_19","jsCall_iiiiii_20","jsCall_iiiiii_21","jsCall_iiiiii_22","jsCall_iiiiii_23","jsCall_iiiiii_24","jsCall_iiiiii_25","jsCall_iiiiii_26","jsCall_iiiiii_27","jsCall_iiiiii_28","jsCall_iiiiii_29","jsCall_iiiiii_30","jsCall_iiiiii_31","jsCall_iiiiii_32","jsCall_iiiiii_33","jsCall_iiiiii_34","_decodeCodecContextFunc","_pushBufferFunc","_avcodec_default_execute2","_io_open_default","_thread_execute2","_sbr_lf_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiii=[0,"jsCall_iiiiiii_0","jsCall_iiiiiii_1","jsCall_iiiiiii_2","jsCall_iiiiiii_3","jsCall_iiiiiii_4","jsCall_iiiiiii_5","jsCall_iiiiiii_6","jsCall_iiiiiii_7","jsCall_iiiiiii_8","jsCall_iiiiiii_9","jsCall_iiiiiii_10","jsCall_iiiiiii_11","jsCall_iiiiiii_12","jsCall_iiiiiii_13","jsCall_iiiiiii_14","jsCall_iiiiiii_15","jsCall_iiiiiii_16","jsCall_iiiiiii_17","jsCall_iiiiiii_18","jsCall_iiiiiii_19","jsCall_iiiiiii_20","jsCall_iiiiiii_21","jsCall_iiiiiii_22","jsCall_iiiiiii_23","jsCall_iiiiiii_24","jsCall_iiiiiii_25","jsCall_iiiiiii_26","jsCall_iiiiiii_27","jsCall_iiiiiii_28","jsCall_iiiiiii_29","jsCall_iiiiiii_30","jsCall_iiiiiii_31","jsCall_iiiiiii_32","jsCall_iiiiiii_33","jsCall_iiiiiii_34","_h264_parse","_hevc_parse","_hflv_decodeVideoFrameFunc","_avcodec_default_execute","_thread_execute","_sbr_x_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiiii=[0,"jsCall_iiiiiiii_0","jsCall_iiiiiiii_1","jsCall_iiiiiiii_2","jsCall_iiiiiiii_3","jsCall_iiiiiiii_4","jsCall_iiiiiiii_5","jsCall_iiiiiiii_6","jsCall_iiiiiiii_7","jsCall_iiiiiiii_8","jsCall_iiiiiiii_9","jsCall_iiiiiiii_10","jsCall_iiiiiiii_11","jsCall_iiiiiiii_12","jsCall_iiiiiiii_13","jsCall_iiiiiiii_14","jsCall_iiiiiiii_15","jsCall_iiiiiiii_16","jsCall_iiiiiiii_17","jsCall_iiiiiiii_18","jsCall_iiiiiiii_19","jsCall_iiiiiiii_20","jsCall_iiiiiiii_21","jsCall_iiiiiiii_22","jsCall_iiiiiiii_23","jsCall_iiiiiiii_24","jsCall_iiiiiiii_25","jsCall_iiiiiiii_26","jsCall_iiiiiiii_27","jsCall_iiiiiiii_28","jsCall_iiiiiiii_29","jsCall_iiiiiiii_30","jsCall_iiiiiiii_31","jsCall_iiiiiiii_32","jsCall_iiiiiiii_33","jsCall_iiiiiiii_34","_decodeVideoFrameFunc","_setSniffStreamCodecTypeFunc","_hflv_setSniffStreamCodecTypeFunc","_ff_sws_alphablendaway","_planarToP01xWrapper","_planar8ToP01xleWrapper","_yvu9ToYv12Wrapper","_bgr24ToYv12Wrapper","_rgbToRgbWrapper","_planarRgbToplanarRgbWrapper","_planarRgbToRgbWrapper","_planarRgbaToRgbWrapper","_Rgb16ToPlanarRgb16Wrapper","_planarRgb16ToRgb16Wrapper","_rgbToPlanarRgbWrapper","_bayer_to_rgb24_wrapper","_bayer_to_yv12_wrapper","_bswap_16bpc","_palToRgbWrapper","_yuv422pToYuy2Wrapper","_yuv422pToUyvyWrapper","_uint_y_to_float_y_wrapper","_float_y_to_uint_y_wrapper","_planarToYuy2Wrapper","_planarToUyvyWrapper","_yuyvToYuv420Wrapper","_uyvyToYuv420Wrapper","_yuyvToYuv422Wrapper","_uyvyToYuv422Wrapper","_packedCopyWrapper","_planarCopyWrapper","_swscale","_planarToNv12Wrapper","_planarToNv24Wrapper","_nv12ToPlanarWrapper","_nv24ToPlanarWrapper","_yuv2rgb_c_32","_yuva2rgba_c","_yuv2rgb_c_bgr48","_yuv2rgb_c_48","_yuva2argb_c","_yuv2rgb_c_24_rgb","_yuv2rgb_c_24_bgr","_yuv2rgb_c_16_ordered_dither","_yuv2rgb_c_15_ordered_dither","_yuv2rgb_c_12_ordered_dither","_yuv2rgb_c_8_ordered_dither","_yuv2rgb_c_4_ordered_dither","_yuv2rgb_c_4b_ordered_dither","_yuv2rgb_c_1_ordered_dither",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,0,0,0,0,0,0,0,0,0];var debug_table_iiiiij=[0,"jsCall_iiiiij_0","jsCall_iiiiij_1","jsCall_iiiiij_2","jsCall_iiiiij_3","jsCall_iiiiij_4","jsCall_iiiiij_5","jsCall_iiiiij_6","jsCall_iiiiij_7","jsCall_iiiiij_8","jsCall_iiiiij_9","jsCall_iiiiij_10","jsCall_iiiiij_11","jsCall_iiiiij_12","jsCall_iiiiij_13","jsCall_iiiiij_14","jsCall_iiiiij_15","jsCall_iiiiij_16","jsCall_iiiiij_17","jsCall_iiiiij_18","jsCall_iiiiij_19","jsCall_iiiiij_20","jsCall_iiiiij_21","jsCall_iiiiij_22","jsCall_iiiiij_23","jsCall_iiiiij_24","jsCall_iiiiij_25","jsCall_iiiiij_26","jsCall_iiiiij_27","jsCall_iiiiij_28","jsCall_iiiiij_29","jsCall_iiiiij_30","jsCall_iiiiij_31","jsCall_iiiiij_32","jsCall_iiiiij_33","jsCall_iiiiij_34","_mpegts_push_data",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];var debug_table_iiiji=[0,"jsCall_iiiji_0","jsCall_iiiji_1","jsCall_iiiji_2","jsCall_iiiji_3","jsCall_iiiji_4","jsCall_iiiji_5","jsCall_iiiji_6","jsCall_iiiji_7","jsCall_iiiji_8","jsCall_iiiji_9","jsCall_iiiji_10","jsCall_iiiji_11","jsCall_iiiji_12","jsCall_iiiji_13","jsCall_iiiji_14","jsCall_iiiji_15","jsCall_iiiji_16","jsCall_iiiji_17","jsCall_iiiji_18","jsCall_iiiji_19","jsCall_iiiji_20","jsCall_iiiji_21","jsCall_iiiji_22","jsCall_iiiji_23","jsCall_iiiji_24","jsCall_iiiji_25","jsCall_iiiji_26","jsCall_iiiji_27","jsCall_iiiji_28","jsCall_iiiji_29","jsCall_iiiji_30","jsCall_iiiji_31","jsCall_iiiji_32","jsCall_iiiji_33","jsCall_iiiji_34","_avi_read_seek","_flv_read_seek","_mov_read_seek",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];var debug_table_iiijjji=[0,"jsCall_iiijjji_0","jsCall_iiijjji_1","jsCall_iiijjji_2","jsCall_iiijjji_3","jsCall_iiijjji_4","jsCall_iiijjji_5","jsCall_iiijjji_6","jsCall_iiijjji_7","jsCall_iiijjji_8","jsCall_iiijjji_9","jsCall_iiijjji_10","jsCall_iiijjji_11","jsCall_iiijjji_12","jsCall_iiijjji_13","jsCall_iiijjji_14","jsCall_iiijjji_15","jsCall_iiijjji_16","jsCall_iiijjji_17","jsCall_iiijjji_18","jsCall_iiijjji_19","jsCall_iiijjji_20","jsCall_iiijjji_21","jsCall_iiijjji_22","jsCall_iiijjji_23","jsCall_iiijjji_24","jsCall_iiijjji_25","jsCall_iiijjji_26","jsCall_iiijjji_27","jsCall_iiijjji_28","jsCall_iiijjji_29","jsCall_iiijjji_30","jsCall_iiijjji_31","jsCall_iiijjji_32","jsCall_iiijjji_33","jsCall_iiijjji_34",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];var debug_table_jiiij=[0,"jsCall_jiiij_0","jsCall_jiiij_1","jsCall_jiiij_2","jsCall_jiiij_3","jsCall_jiiij_4","jsCall_jiiij_5","jsCall_jiiij_6","jsCall_jiiij_7","jsCall_jiiij_8","jsCall_jiiij_9","jsCall_jiiij_10","jsCall_jiiij_11","jsCall_jiiij_12","jsCall_jiiij_13","jsCall_jiiij_14","jsCall_jiiij_15","jsCall_jiiij_16","jsCall_jiiij_17","jsCall_jiiij_18","jsCall_jiiij_19","jsCall_jiiij_20","jsCall_jiiij_21","jsCall_jiiij_22","jsCall_jiiij_23","jsCall_jiiij_24","jsCall_jiiij_25","jsCall_jiiij_26","jsCall_jiiij_27","jsCall_jiiij_28","jsCall_jiiij_29","jsCall_jiiij_30","jsCall_jiiij_31","jsCall_jiiij_32","jsCall_jiiij_33","jsCall_jiiij_34","_mpegps_read_dts","_mpegts_get_dts",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];var debug_table_jiiji=[0,"jsCall_jiiji_0","jsCall_jiiji_1","jsCall_jiiji_2","jsCall_jiiji_3","jsCall_jiiji_4","jsCall_jiiji_5","jsCall_jiiji_6","jsCall_jiiji_7","jsCall_jiiji_8","jsCall_jiiji_9","jsCall_jiiji_10","jsCall_jiiji_11","jsCall_jiiji_12","jsCall_jiiji_13","jsCall_jiiji_14","jsCall_jiiji_15","jsCall_jiiji_16","jsCall_jiiji_17","jsCall_jiiji_18","jsCall_jiiji_19","jsCall_jiiji_20","jsCall_jiiji_21","jsCall_jiiji_22","jsCall_jiiji_23","jsCall_jiiji_24","jsCall_jiiji_25","jsCall_jiiji_26","jsCall_jiiji_27","jsCall_jiiji_28","jsCall_jiiji_29","jsCall_jiiji_30","jsCall_jiiji_31","jsCall_jiiji_32","jsCall_jiiji_33","jsCall_jiiji_34","_io_read_seek",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];var debug_table_jiji=[0,"jsCall_jiji_0","jsCall_jiji_1","jsCall_jiji_2","jsCall_jiji_3","jsCall_jiji_4","jsCall_jiji_5","jsCall_jiji_6","jsCall_jiji_7","jsCall_jiji_8","jsCall_jiji_9","jsCall_jiji_10","jsCall_jiji_11","jsCall_jiji_12","jsCall_jiji_13","jsCall_jiji_14","jsCall_jiji_15","jsCall_jiji_16","jsCall_jiji_17","jsCall_jiji_18","jsCall_jiji_19","jsCall_jiji_20","jsCall_jiji_21","jsCall_jiji_22","jsCall_jiji_23","jsCall_jiji_24","jsCall_jiji_25","jsCall_jiji_26","jsCall_jiji_27","jsCall_jiji_28","jsCall_jiji_29","jsCall_jiji_30","jsCall_jiji_31","jsCall_jiji_32","jsCall_jiji_33","jsCall_jiji_34","___stdio_seek","___emscripten_stdout_seek","_seek_in_buffer","_io_seek","_dyn_buf_seek",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_v=[0,"jsCall_v_0","jsCall_v_1","jsCall_v_2","jsCall_v_3","jsCall_v_4","jsCall_v_5","jsCall_v_6","jsCall_v_7","jsCall_v_8","jsCall_v_9","jsCall_v_10","jsCall_v_11","jsCall_v_12","jsCall_v_13","jsCall_v_14","jsCall_v_15","jsCall_v_16","jsCall_v_17","jsCall_v_18","jsCall_v_19","jsCall_v_20","jsCall_v_21","jsCall_v_22","jsCall_v_23","jsCall_v_24","jsCall_v_25","jsCall_v_26","jsCall_v_27","jsCall_v_28","jsCall_v_29","jsCall_v_30","jsCall_v_31","jsCall_v_32","jsCall_v_33","jsCall_v_34","_init_ff_cos_tabs_16","_init_ff_cos_tabs_32","_init_ff_cos_tabs_64","_init_ff_cos_tabs_128","_init_ff_cos_tabs_256","_init_ff_cos_tabs_512","_init_ff_cos_tabs_1024","_init_ff_cos_tabs_2048","_init_ff_cos_tabs_4096","_init_ff_cos_tabs_8192","_init_ff_cos_tabs_16384","_init_ff_cos_tabs_32768","_init_ff_cos_tabs_65536","_init_ff_cos_tabs_131072","_introduceMineFunc","_introduce_mine",0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_vdiidiiiii=[0,"jsCall_vdiidiiiii_0","jsCall_vdiidiiiii_1","jsCall_vdiidiiiii_2","jsCall_vdiidiiiii_3","jsCall_vdiidiiiii_4","jsCall_vdiidiiiii_5","jsCall_vdiidiiiii_6","jsCall_vdiidiiiii_7","jsCall_vdiidiiiii_8","jsCall_vdiidiiiii_9","jsCall_vdiidiiiii_10","jsCall_vdiidiiiii_11","jsCall_vdiidiiiii_12","jsCall_vdiidiiiii_13","jsCall_vdiidiiiii_14","jsCall_vdiidiiiii_15","jsCall_vdiidiiiii_16","jsCall_vdiidiiiii_17","jsCall_vdiidiiiii_18","jsCall_vdiidiiiii_19","jsCall_vdiidiiiii_20","jsCall_vdiidiiiii_21","jsCall_vdiidiiiii_22","jsCall_vdiidiiiii_23","jsCall_vdiidiiiii_24","jsCall_vdiidiiiii_25","jsCall_vdiidiiiii_26","jsCall_vdiidiiiii_27","jsCall_vdiidiiiii_28","jsCall_vdiidiiiii_29","jsCall_vdiidiiiii_30","jsCall_vdiidiiiii_31","jsCall_vdiidiiiii_32","jsCall_vdiidiiiii_33","jsCall_vdiidiiiii_34",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];var debug_table_vi=[0,"jsCall_vi_0","jsCall_vi_1","jsCall_vi_2","jsCall_vi_3","jsCall_vi_4","jsCall_vi_5","jsCall_vi_6","jsCall_vi_7","jsCall_vi_8","jsCall_vi_9","jsCall_vi_10","jsCall_vi_11","jsCall_vi_12","jsCall_vi_13","jsCall_vi_14","jsCall_vi_15","jsCall_vi_16","jsCall_vi_17","jsCall_vi_18","jsCall_vi_19","jsCall_vi_20","jsCall_vi_21","jsCall_vi_22","jsCall_vi_23","jsCall_vi_24","jsCall_vi_25","jsCall_vi_26","jsCall_vi_27","jsCall_vi_28","jsCall_vi_29","jsCall_vi_30","jsCall_vi_31","jsCall_vi_32","jsCall_vi_33","jsCall_vi_34","_free_geobtag","_free_apic","_free_chapter","_free_priv","_hevc_decode_flush","_flush","_h264_close","_hevc_parser_close","_fft4","_fft8","_fft16","_fft32","_fft64","_fft128","_fft256","_fft512","_fft1024","_fft2048","_fft4096","_fft8192","_fft16384","_fft32768","_fft65536","_fft131072","_logRequest_downloadSucceeded","_logRequest_downloadFailed","_downloadSucceeded","_downloadFailed","_transform_4x4_luma_9","_idct_4x4_dc_9","_idct_8x8_dc_9","_idct_16x16_dc_9","_idct_32x32_dc_9","_transform_4x4_luma_10","_idct_4x4_dc_10","_idct_8x8_dc_10","_idct_16x16_dc_10","_idct_32x32_dc_10","_transform_4x4_luma_12","_idct_4x4_dc_12","_idct_8x8_dc_12","_idct_16x16_dc_12","_idct_32x32_dc_12","_transform_4x4_luma_8","_idct_4x4_dc_8","_idct_8x8_dc_8","_idct_16x16_dc_8","_idct_32x32_dc_8","_main_function","_sbr_sum64x5_c","_sbr_neg_odd_64_c","_sbr_qmf_pre_shuffle_c",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,0,0,0,0,0,0,0];var debug_table_vii=[0,"jsCall_vii_0","jsCall_vii_1","jsCall_vii_2","jsCall_vii_3","jsCall_vii_4","jsCall_vii_5","jsCall_vii_6","jsCall_vii_7","jsCall_vii_8","jsCall_vii_9","jsCall_vii_10","jsCall_vii_11","jsCall_vii_12","jsCall_vii_13","jsCall_vii_14","jsCall_vii_15","jsCall_vii_16","jsCall_vii_17","jsCall_vii_18","jsCall_vii_19","jsCall_vii_20","jsCall_vii_21","jsCall_vii_22","jsCall_vii_23","jsCall_vii_24","jsCall_vii_25","jsCall_vii_26","jsCall_vii_27","jsCall_vii_28","jsCall_vii_29","jsCall_vii_30","jsCall_vii_31","jsCall_vii_32","jsCall_vii_33","jsCall_vii_34","_sha1_transform","_io_close_default","_lumRangeFromJpeg_c","_lumRangeToJpeg_c","_lumRangeFromJpeg16_c","_lumRangeToJpeg16_c","_decode_data_free","_dequant_9","_idct_4x4_9","_idct_8x8_9","_idct_16x16_9","_idct_32x32_9","_dequant_10","_idct_4x4_10","_idct_8x8_10","_idct_16x16_10","_idct_32x32_10","_dequant_12","_idct_4x4_12","_idct_8x8_12","_idct_16x16_12","_idct_32x32_12","_dequant_8","_idct_4x4_8","_idct_8x8_8","_idct_16x16_8","_idct_32x32_8","_imdct_and_windowing","_apply_ltp","_update_ltp","_imdct_and_windowing_ld","_imdct_and_windowing_eld","_imdct_and_windowing_960","_sbr_qmf_post_shuffle_c","_sbr_qmf_deint_neg_c","_sbr_autocorrelate_c","_ff_h264_chroma_dc_dequant_idct_8_c","_hevc_pps_free","_fft_permute_c","_fft_calc_c","_av_buffer_default_free","_pool_release_buffer",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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viidi=[0,"jsCall_viidi_0","jsCall_viidi_1","jsCall_viidi_2","jsCall_viidi_3","jsCall_viidi_4","jsCall_viidi_5","jsCall_viidi_6","jsCall_viidi_7","jsCall_viidi_8","jsCall_viidi_9","jsCall_viidi_10","jsCall_viidi_11","jsCall_viidi_12","jsCall_viidi_13","jsCall_viidi_14","jsCall_viidi_15","jsCall_viidi_16","jsCall_viidi_17","jsCall_viidi_18","jsCall_viidi_19","jsCall_viidi_20","jsCall_viidi_21","jsCall_viidi_22","jsCall_viidi_23","jsCall_viidi_24","jsCall_viidi_25","jsCall_viidi_26","jsCall_viidi_27","jsCall_viidi_28","jsCall_viidi_29","jsCall_viidi_30","jsCall_viidi_31","jsCall_viidi_32","jsCall_viidi_33","jsCall_viidi_34","_vector_dmac_scalar_c","_vector_dmul_scalar_c",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];var debug_table_viifi=[0,"jsCall_viifi_0","jsCall_viifi_1","jsCall_viifi_2","jsCall_viifi_3","jsCall_viifi_4","jsCall_viifi_5","jsCall_viifi_6","jsCall_viifi_7","jsCall_viifi_8","jsCall_viifi_9","jsCall_viifi_10","jsCall_viifi_11","jsCall_viifi_12","jsCall_viifi_13","jsCall_viifi_14","jsCall_viifi_15","jsCall_viifi_16","jsCall_viifi_17","jsCall_viifi_18","jsCall_viifi_19","jsCall_viifi_20","jsCall_viifi_21","jsCall_viifi_22","jsCall_viifi_23","jsCall_viifi_24","jsCall_viifi_25","jsCall_viifi_26","jsCall_viifi_27","jsCall_viifi_28","jsCall_viifi_29","jsCall_viifi_30","jsCall_viifi_31","jsCall_viifi_32","jsCall_viifi_33","jsCall_viifi_34","_vector_fmac_scalar_c","_vector_fmul_scalar_c",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];var debug_table_viii=[0,"jsCall_viii_0","jsCall_viii_1","jsCall_viii_2","jsCall_viii_3","jsCall_viii_4","jsCall_viii_5","jsCall_viii_6","jsCall_viii_7","jsCall_viii_8","jsCall_viii_9","jsCall_viii_10","jsCall_viii_11","jsCall_viii_12","jsCall_viii_13","jsCall_viii_14","jsCall_viii_15","jsCall_viii_16","jsCall_viii_17","jsCall_viii_18","jsCall_viii_19","jsCall_viii_20","jsCall_viii_21","jsCall_viii_22","jsCall_viii_23","jsCall_viii_24","jsCall_viii_25","jsCall_viii_26","jsCall_viii_27","jsCall_viii_28","jsCall_viii_29","jsCall_viii_30","jsCall_viii_31","jsCall_viii_32","jsCall_viii_33","jsCall_viii_34","_avcHandleFrame","_handleFrame","_sdt_cb","_pat_cb","_pmt_cb","_scte_data_cb","_m4sl_cb","_chrRangeFromJpeg_c","_chrRangeToJpeg_c","_chrRangeFromJpeg16_c","_chrRangeToJpeg16_c","_rgb15to16_c","_rgb15tobgr24_c","_rgb15to32_c","_rgb16tobgr24_c","_rgb16to32_c","_rgb16to15_c","_rgb24tobgr16_c","_rgb24tobgr15_c","_rgb24tobgr32_c","_rgb32to16_c","_rgb32to15_c","_rgb32tobgr24_c","_rgb24to15_c","_rgb24to16_c","_rgb24tobgr24_c","_shuffle_bytes_0321_c","_shuffle_bytes_2103_c","_shuffle_bytes_1230_c","_shuffle_bytes_3012_c","_shuffle_bytes_3210_c","_rgb32tobgr16_c","_rgb32tobgr15_c","_rgb48tobgr48_bswap","_rgb48tobgr64_bswap","_rgb48to64_bswap","_rgb64to48_bswap","_rgb48tobgr48_nobswap","_rgb48tobgr64_nobswap","_rgb48to64_nobswap","_rgb64tobgr48_nobswap","_rgb64tobgr48_bswap","_rgb64to48_nobswap","_rgb12to15","_rgb15to24","_rgb16to24","_rgb32to24","_rgb24to32","_rgb12tobgr12","_rgb15tobgr15","_rgb16tobgr15","_rgb15tobgr16","_rgb16tobgr16","_rgb15tobgr32","_rgb16tobgr32","_just_return","_add_residual4x4_9","_add_residual8x8_9","_add_residual16x16_9","_add_residual32x32_9","_transform_rdpcm_9","_add_residual4x4_10","_add_residual8x8_10","_add_residual16x16_10","_add_residual32x32_10","_transform_rdpcm_10","_add_residual4x4_12","_add_residual8x8_12","_add_residual16x16_12","_add_residual32x32_12","_transform_rdpcm_12","_add_residual4x4_8","_add_residual8x8_8","_add_residual16x16_8","_add_residual32x32_8","_transform_rdpcm_8","_bswap_buf","_bswap16_buf","_ps_add_squares_c","_sbr_qmf_deint_bfly_c","_ff_h264_add_pixels4_8_c","_ff_h264_add_pixels8_8_c","_ff_h264_idct_add_8_c","_ff_h264_idct8_add_8_c","_ff_h264_idct_dc_add_8_c","_ff_h264_idct8_dc_add_8_c","_ff_h264_luma_dc_dequant_idct_8_c","_ff_imdct_calc_c","_ff_imdct_half_c","_ff_mdct_calc_c","_butterflies_float_c",0];var debug_table_viiii=[0,"jsCall_viiii_0","jsCall_viiii_1","jsCall_viiii_2","jsCall_viiii_3","jsCall_viiii_4","jsCall_viiii_5","jsCall_viiii_6","jsCall_viiii_7","jsCall_viiii_8","jsCall_viiii_9","jsCall_viiii_10","jsCall_viiii_11","jsCall_viiii_12","jsCall_viiii_13","jsCall_viiii_14","jsCall_viiii_15","jsCall_viiii_16","jsCall_viiii_17","jsCall_viiii_18","jsCall_viiii_19","jsCall_viiii_20","jsCall_viiii_21","jsCall_viiii_22","jsCall_viiii_23","jsCall_viiii_24","jsCall_viiii_25","jsCall_viiii_26","jsCall_viiii_27","jsCall_viiii_28","jsCall_viiii_29","jsCall_viiii_30","jsCall_viiii_31","jsCall_viiii_32","jsCall_viiii_33","jsCall_viiii_34","_planar_rgb9le_to_y","_planar_rgb10le_to_a","_planar_rgb10le_to_y","_planar_rgb12le_to_a","_planar_rgb12le_to_y","_planar_rgb14le_to_y","_planar_rgb16le_to_a","_planar_rgb16le_to_y","_planar_rgb9be_to_y","_planar_rgb10be_to_a","_planar_rgb10be_to_y","_planar_rgb12be_to_a","_planar_rgb12be_to_y","_planar_rgb14be_to_y","_planar_rgb16be_to_a","_planar_rgb16be_to_y","_planar_rgb_to_a","_planar_rgb_to_y","_gray8aToPacked32","_gray8aToPacked32_1","_gray8aToPacked24","_sws_convertPalette8ToPacked32","_sws_convertPalette8ToPacked24","_intra_pred_2_9","_intra_pred_3_9","_intra_pred_4_9","_intra_pred_5_9","_pred_planar_0_9","_pred_planar_1_9","_pred_planar_2_9","_pred_planar_3_9","_intra_pred_2_10","_intra_pred_3_10","_intra_pred_4_10","_intra_pred_5_10","_pred_planar_0_10","_pred_planar_1_10","_pred_planar_2_10","_pred_planar_3_10","_intra_pred_2_12","_intra_pred_3_12","_intra_pred_4_12","_intra_pred_5_12","_pred_planar_0_12","_pred_planar_1_12","_pred_planar_2_12","_pred_planar_3_12","_intra_pred_2_8","_intra_pred_3_8","_intra_pred_4_8","_intra_pred_5_8","_pred_planar_0_8","_pred_planar_1_8","_pred_planar_2_8","_pred_planar_3_8","_apply_tns","_windowing_and_mdct_ltp","_ps_mul_pair_single_c","_ps_hybrid_analysis_ileave_c","_ps_hybrid_synthesis_deint_c","_h264_v_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_mbaff_intra_8_c","_h264_v_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_mbaff_intra_8_c","_fft15_c","_mdct15","_imdct15_half","_vector_fmul_c","_vector_dmul_c","_vector_fmul_reverse_c",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiid=[0,"jsCall_viiiid_0","jsCall_viiiid_1","jsCall_viiiid_2","jsCall_viiiid_3","jsCall_viiiid_4","jsCall_viiiid_5","jsCall_viiiid_6","jsCall_viiiid_7","jsCall_viiiid_8","jsCall_viiiid_9","jsCall_viiiid_10","jsCall_viiiid_11","jsCall_viiiid_12","jsCall_viiiid_13","jsCall_viiiid_14","jsCall_viiiid_15","jsCall_viiiid_16","jsCall_viiiid_17","jsCall_viiiid_18","jsCall_viiiid_19","jsCall_viiiid_20","jsCall_viiiid_21","jsCall_viiiid_22","jsCall_viiiid_23","jsCall_viiiid_24","jsCall_viiiid_25","jsCall_viiiid_26","jsCall_viiiid_27","jsCall_viiiid_28","jsCall_viiiid_29","jsCall_viiiid_30","jsCall_viiiid_31","jsCall_viiiid_32","jsCall_viiiid_33","jsCall_viiiid_34",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];var debug_table_viiiifii=[0,"jsCall_viiiifii_0","jsCall_viiiifii_1","jsCall_viiiifii_2","jsCall_viiiifii_3","jsCall_viiiifii_4","jsCall_viiiifii_5","jsCall_viiiifii_6","jsCall_viiiifii_7","jsCall_viiiifii_8","jsCall_viiiifii_9","jsCall_viiiifii_10","jsCall_viiiifii_11","jsCall_viiiifii_12","jsCall_viiiifii_13","jsCall_viiiifii_14","jsCall_viiiifii_15","jsCall_viiiifii_16","jsCall_viiiifii_17","jsCall_viiiifii_18","jsCall_viiiifii_19","jsCall_viiiifii_20","jsCall_viiiifii_21","jsCall_viiiifii_22","jsCall_viiiifii_23","jsCall_viiiifii_24","jsCall_viiiifii_25","jsCall_viiiifii_26","jsCall_viiiifii_27","jsCall_viiiifii_28","jsCall_viiiifii_29","jsCall_viiiifii_30","jsCall_viiiifii_31","jsCall_viiiifii_32","jsCall_viiiifii_33","jsCall_viiiifii_34","_sbr_hf_gen_c",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];var debug_table_viiiii=[0,"jsCall_viiiii_0","jsCall_viiiii_1","jsCall_viiiii_2","jsCall_viiiii_3","jsCall_viiiii_4","jsCall_viiiii_5","jsCall_viiiii_6","jsCall_viiiii_7","jsCall_viiiii_8","jsCall_viiiii_9","jsCall_viiiii_10","jsCall_viiiii_11","jsCall_viiiii_12","jsCall_viiiii_13","jsCall_viiiii_14","jsCall_viiiii_15","jsCall_viiiii_16","jsCall_viiiii_17","jsCall_viiiii_18","jsCall_viiiii_19","jsCall_viiiii_20","jsCall_viiiii_21","jsCall_viiiii_22","jsCall_viiiii_23","jsCall_viiiii_24","jsCall_viiiii_25","jsCall_viiiii_26","jsCall_viiiii_27","jsCall_viiiii_28","jsCall_viiiii_29","jsCall_viiiii_30","jsCall_viiiii_31","jsCall_viiiii_32","jsCall_viiiii_33","jsCall_viiiii_34","_planar_rgb9le_to_uv","_planar_rgb10le_to_uv","_planar_rgb12le_to_uv","_planar_rgb14le_to_uv","_planar_rgb16le_to_uv","_planar_rgb9be_to_uv","_planar_rgb10be_to_uv","_planar_rgb12be_to_uv","_planar_rgb14be_to_uv","_planar_rgb16be_to_uv","_planar_rgb_to_uv","_yuv2p010l1_LE_c","_yuv2p010l1_BE_c","_yuv2plane1_16LE_c","_yuv2plane1_16BE_c","_yuv2plane1_9LE_c","_yuv2plane1_9BE_c","_yuv2plane1_10LE_c","_yuv2plane1_10BE_c","_yuv2plane1_12LE_c","_yuv2plane1_12BE_c","_yuv2plane1_14LE_c","_yuv2plane1_14BE_c","_yuv2plane1_floatBE_c","_yuv2plane1_floatLE_c","_yuv2plane1_8_c","_bayer_bggr8_to_rgb24_copy","_bayer_bggr8_to_rgb24_interpolate","_bayer_bggr16le_to_rgb24_copy","_bayer_bggr16le_to_rgb24_interpolate","_bayer_bggr16be_to_rgb24_copy","_bayer_bggr16be_to_rgb24_interpolate","_bayer_rggb8_to_rgb24_copy","_bayer_rggb8_to_rgb24_interpolate","_bayer_rggb16le_to_rgb24_copy","_bayer_rggb16le_to_rgb24_interpolate","_bayer_rggb16be_to_rgb24_copy","_bayer_rggb16be_to_rgb24_interpolate","_bayer_gbrg8_to_rgb24_copy","_bayer_gbrg8_to_rgb24_interpolate","_bayer_gbrg16le_to_rgb24_copy","_bayer_gbrg16le_to_rgb24_interpolate","_bayer_gbrg16be_to_rgb24_copy","_bayer_gbrg16be_to_rgb24_interpolate","_bayer_grbg8_to_rgb24_copy","_bayer_grbg8_to_rgb24_interpolate","_bayer_grbg16le_to_rgb24_copy","_bayer_grbg16le_to_rgb24_interpolate","_bayer_grbg16be_to_rgb24_copy","_bayer_grbg16be_to_rgb24_interpolate","_hevc_h_loop_filter_chroma_9","_hevc_v_loop_filter_chroma_9","_hevc_h_loop_filter_chroma_10","_hevc_v_loop_filter_chroma_10","_hevc_h_loop_filter_chroma_12","_hevc_v_loop_filter_chroma_12","_hevc_h_loop_filter_chroma_8","_hevc_v_loop_filter_chroma_8","_worker_func","_ps_hybrid_analysis_c","_ps_stereo_interpolate_c","_ps_stereo_interpolate_ipdopd_c","_sbr_hf_g_filt_c","_sbr_hf_assemble","_sbr_hf_inverse_filter","_ff_h264_idct_add16_8_c","_ff_h264_idct8_add4_8_c","_ff_h264_idct_add8_8_c","_ff_h264_idct_add16intra_8_c","_h264_v_loop_filter_luma_8_c","_h264_h_loop_filter_luma_8_c","_h264_h_loop_filter_luma_mbaff_8_c","_h264_v_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_mbaff_8_c","_postrotate_c","_vector_fmul_window_c","_vector_fmul_add_c",0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiidd=[0,"jsCall_viiiiidd_0","jsCall_viiiiidd_1","jsCall_viiiiidd_2","jsCall_viiiiidd_3","jsCall_viiiiidd_4","jsCall_viiiiidd_5","jsCall_viiiiidd_6","jsCall_viiiiidd_7","jsCall_viiiiidd_8","jsCall_viiiiidd_9","jsCall_viiiiidd_10","jsCall_viiiiidd_11","jsCall_viiiiidd_12","jsCall_viiiiidd_13","jsCall_viiiiidd_14","jsCall_viiiiidd_15","jsCall_viiiiidd_16","jsCall_viiiiidd_17","jsCall_viiiiidd_18","jsCall_viiiiidd_19","jsCall_viiiiidd_20","jsCall_viiiiidd_21","jsCall_viiiiidd_22","jsCall_viiiiidd_23","jsCall_viiiiidd_24","jsCall_viiiiidd_25","jsCall_viiiiidd_26","jsCall_viiiiidd_27","jsCall_viiiiidd_28","jsCall_viiiiidd_29","jsCall_viiiiidd_30","jsCall_viiiiidd_31","jsCall_viiiiidd_32","jsCall_viiiiidd_33","jsCall_viiiiidd_34",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];var debug_table_viiiiii=[0,"jsCall_viiiiii_0","jsCall_viiiiii_1","jsCall_viiiiii_2","jsCall_viiiiii_3","jsCall_viiiiii_4","jsCall_viiiiii_5","jsCall_viiiiii_6","jsCall_viiiiii_7","jsCall_viiiiii_8","jsCall_viiiiii_9","jsCall_viiiiii_10","jsCall_viiiiii_11","jsCall_viiiiii_12","jsCall_viiiiii_13","jsCall_viiiiii_14","jsCall_viiiiii_15","jsCall_viiiiii_16","jsCall_viiiiii_17","jsCall_viiiiii_18","jsCall_viiiiii_19","jsCall_viiiiii_20","jsCall_viiiiii_21","jsCall_viiiiii_22","jsCall_viiiiii_23","jsCall_viiiiii_24","jsCall_viiiiii_25","jsCall_viiiiii_26","jsCall_viiiiii_27","jsCall_viiiiii_28","jsCall_viiiiii_29","jsCall_viiiiii_30","jsCall_viiiiii_31","jsCall_viiiiii_32","jsCall_viiiiii_33","jsCall_viiiiii_34","_read_geobtag","_read_apic","_read_chapter","_read_priv","_ff_hyscale_fast_c","_bswap16Y_c","_read_ya16le_gray_c","_read_ya16be_gray_c","_read_ayuv64le_Y_c","_yuy2ToY_c","_uyvyToY_c","_bgr24ToY_c","_bgr16leToY_c","_bgr16beToY_c","_bgr15leToY_c","_bgr15beToY_c","_bgr12leToY_c","_bgr12beToY_c","_rgb24ToY_c","_rgb16leToY_c","_rgb16beToY_c","_rgb15leToY_c","_rgb15beToY_c","_rgb12leToY_c","_rgb12beToY_c","_palToY_c","_monoblack2Y_c","_monowhite2Y_c","_bgr32ToY_c","_bgr321ToY_c","_rgb32ToY_c","_rgb321ToY_c","_rgb48BEToY_c","_rgb48LEToY_c","_bgr48BEToY_c","_bgr48LEToY_c","_rgb64BEToY_c","_rgb64LEToY_c","_bgr64BEToY_c","_bgr64LEToY_c","_p010LEToY_c","_p010BEToY_c","_grayf32ToY16_c","_grayf32ToY16_bswap_c","_rgba64leToA_c","_rgba64beToA_c","_rgbaToA_c","_abgrToA_c","_read_ya16le_alpha_c","_read_ya16be_alpha_c","_read_ayuv64le_A_c","_palToA_c","_pred_dc_9","_pred_angular_0_9","_pred_angular_1_9","_pred_angular_2_9","_pred_angular_3_9","_pred_dc_10","_pred_angular_0_10","_pred_angular_1_10","_pred_angular_2_10","_pred_angular_3_10","_pred_dc_12","_pred_angular_0_12","_pred_angular_1_12","_pred_angular_2_12","_pred_angular_3_12","_pred_dc_8","_pred_angular_0_8","_pred_angular_1_8","_pred_angular_2_8","_pred_angular_3_8","_put_pcm_9","_hevc_h_loop_filter_luma_9","_hevc_v_loop_filter_luma_9","_put_pcm_10","_hevc_h_loop_filter_luma_10","_hevc_v_loop_filter_luma_10","_put_pcm_12","_hevc_h_loop_filter_luma_12","_hevc_v_loop_filter_luma_12","_put_pcm_8","_hevc_h_loop_filter_luma_8","_hevc_v_loop_filter_luma_8","_sbr_hf_apply_noise_0","_sbr_hf_apply_noise_1","_sbr_hf_apply_noise_2","_sbr_hf_apply_noise_3","_weight_h264_pixels16_8_c","_weight_h264_pixels8_8_c","_weight_h264_pixels4_8_c","_weight_h264_pixels2_8_c","_aes_decrypt","_aes_encrypt",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,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,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,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];var debug_table_viiiiiifi=[0,"jsCall_viiiiiifi_0","jsCall_viiiiiifi_1","jsCall_viiiiiifi_2","jsCall_viiiiiifi_3","jsCall_viiiiiifi_4","jsCall_viiiiiifi_5","jsCall_viiiiiifi_6","jsCall_viiiiiifi_7","jsCall_viiiiiifi_8","jsCall_viiiiiifi_9","jsCall_viiiiiifi_10","jsCall_viiiiiifi_11","jsCall_viiiiiifi_12","jsCall_viiiiiifi_13","jsCall_viiiiiifi_14","jsCall_viiiiiifi_15","jsCall_viiiiiifi_16","jsCall_viiiiiifi_17","jsCall_viiiiiifi_18","jsCall_viiiiiifi_19","jsCall_viiiiiifi_20","jsCall_viiiiiifi_21","jsCall_viiiiiifi_22","jsCall_viiiiiifi_23","jsCall_viiiiiifi_24","jsCall_viiiiiifi_25","jsCall_viiiiiifi_26","jsCall_viiiiiifi_27","jsCall_viiiiiifi_28","jsCall_viiiiiifi_29","jsCall_viiiiiifi_30","jsCall_viiiiiifi_31","jsCall_viiiiiifi_32","jsCall_viiiiiifi_33","jsCall_viiiiiifi_34","_ps_decorrelate_c",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];var debug_table_viiiiiii=[0,"jsCall_viiiiiii_0","jsCall_viiiiiii_1","jsCall_viiiiiii_2","jsCall_viiiiiii_3","jsCall_viiiiiii_4","jsCall_viiiiiii_5","jsCall_viiiiiii_6","jsCall_viiiiiii_7","jsCall_viiiiiii_8","jsCall_viiiiiii_9","jsCall_viiiiiii_10","jsCall_viiiiiii_11","jsCall_viiiiiii_12","jsCall_viiiiiii_13","jsCall_viiiiiii_14","jsCall_viiiiiii_15","jsCall_viiiiiii_16","jsCall_viiiiiii_17","jsCall_viiiiiii_18","jsCall_viiiiiii_19","jsCall_viiiiiii_20","jsCall_viiiiiii_21","jsCall_viiiiiii_22","jsCall_viiiiiii_23","jsCall_viiiiiii_24","jsCall_viiiiiii_25","jsCall_viiiiiii_26","jsCall_viiiiiii_27","jsCall_viiiiiii_28","jsCall_viiiiiii_29","jsCall_viiiiiii_30","jsCall_viiiiiii_31","jsCall_viiiiiii_32","jsCall_viiiiiii_33","jsCall_viiiiiii_34","_hScale8To15_c","_hScale8To19_c","_hScale16To19_c","_hScale16To15_c","_yuy2ToUV_c","_yvy2ToUV_c","_uyvyToUV_c","_nv12ToUV_c","_nv21ToUV_c","_palToUV_c","_bswap16UV_c","_read_ayuv64le_UV_c","_p010LEToUV_c","_p010BEToUV_c","_p016LEToUV_c","_p016BEToUV_c","_gbr24pToUV_half_c","_rgb64BEToUV_half_c","_rgb64LEToUV_half_c","_bgr64BEToUV_half_c","_bgr64LEToUV_half_c","_rgb48BEToUV_half_c","_rgb48LEToUV_half_c","_bgr48BEToUV_half_c","_bgr48LEToUV_half_c","_bgr32ToUV_half_c","_bgr321ToUV_half_c","_bgr24ToUV_half_c","_bgr16leToUV_half_c","_bgr16beToUV_half_c","_bgr15leToUV_half_c","_bgr15beToUV_half_c","_bgr12leToUV_half_c","_bgr12beToUV_half_c","_rgb32ToUV_half_c","_rgb321ToUV_half_c","_rgb24ToUV_half_c","_rgb16leToUV_half_c","_rgb16beToUV_half_c","_rgb15leToUV_half_c","_rgb15beToUV_half_c","_rgb12leToUV_half_c","_rgb12beToUV_half_c","_rgb64BEToUV_c","_rgb64LEToUV_c","_bgr64BEToUV_c","_bgr64LEToUV_c","_rgb48BEToUV_c","_rgb48LEToUV_c","_bgr48BEToUV_c","_bgr48LEToUV_c","_bgr32ToUV_c","_bgr321ToUV_c","_bgr24ToUV_c","_bgr16leToUV_c","_bgr16beToUV_c","_bgr15leToUV_c","_bgr15beToUV_c","_bgr12leToUV_c","_bgr12beToUV_c","_rgb32ToUV_c","_rgb321ToUV_c","_rgb24ToUV_c","_rgb16leToUV_c","_rgb16beToUV_c","_rgb15leToUV_c","_rgb15beToUV_c","_rgb12leToUV_c","_rgb12beToUV_c","_yuv2p010lX_LE_c","_yuv2p010lX_BE_c","_yuv2p010cX_c","_yuv2planeX_16LE_c","_yuv2planeX_16BE_c","_yuv2p016cX_c","_yuv2planeX_9LE_c","_yuv2planeX_9BE_c","_yuv2planeX_10LE_c","_yuv2planeX_10BE_c","_yuv2planeX_12LE_c","_yuv2planeX_12BE_c","_yuv2planeX_14LE_c","_yuv2planeX_14BE_c","_yuv2planeX_floatBE_c","_yuv2planeX_floatLE_c","_yuv2planeX_8_c","_yuv2nv12cX_c","_sao_edge_filter_9","_put_hevc_pel_pixels_9","_put_hevc_qpel_h_9","_put_hevc_qpel_v_9","_put_hevc_qpel_hv_9","_put_hevc_epel_h_9","_put_hevc_epel_v_9","_put_hevc_epel_hv_9","_sao_edge_filter_10","_put_hevc_pel_pixels_10","_put_hevc_qpel_h_10","_put_hevc_qpel_v_10","_put_hevc_qpel_hv_10","_put_hevc_epel_h_10","_put_hevc_epel_v_10","_put_hevc_epel_hv_10","_sao_edge_filter_12","_put_hevc_pel_pixels_12","_put_hevc_qpel_h_12","_put_hevc_qpel_v_12","_put_hevc_qpel_hv_12","_put_hevc_epel_h_12","_put_hevc_epel_v_12","_put_hevc_epel_hv_12","_sao_edge_filter_8","_put_hevc_pel_pixels_8","_put_hevc_qpel_h_8","_put_hevc_qpel_v_8","_put_hevc_qpel_hv_8","_put_hevc_epel_h_8","_put_hevc_epel_v_8","_put_hevc_epel_hv_8",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,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,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,0,0];var debug_table_viiiiiiii=[0,"jsCall_viiiiiiii_0","jsCall_viiiiiiii_1","jsCall_viiiiiiii_2","jsCall_viiiiiiii_3","jsCall_viiiiiiii_4","jsCall_viiiiiiii_5","jsCall_viiiiiiii_6","jsCall_viiiiiiii_7","jsCall_viiiiiiii_8","jsCall_viiiiiiii_9","jsCall_viiiiiiii_10","jsCall_viiiiiiii_11","jsCall_viiiiiiii_12","jsCall_viiiiiiii_13","jsCall_viiiiiiii_14","jsCall_viiiiiiii_15","jsCall_viiiiiiii_16","jsCall_viiiiiiii_17","jsCall_viiiiiiii_18","jsCall_viiiiiiii_19","jsCall_viiiiiiii_20","jsCall_viiiiiiii_21","jsCall_viiiiiiii_22","jsCall_viiiiiiii_23","jsCall_viiiiiiii_24","jsCall_viiiiiiii_25","jsCall_viiiiiiii_26","jsCall_viiiiiiii_27","jsCall_viiiiiiii_28","jsCall_viiiiiiii_29","jsCall_viiiiiiii_30","jsCall_viiiiiiii_31","jsCall_viiiiiiii_32","jsCall_viiiiiiii_33","jsCall_viiiiiiii_34","_ff_hcscale_fast_c","_bayer_bggr8_to_yv12_copy","_bayer_bggr8_to_yv12_interpolate","_bayer_bggr16le_to_yv12_copy","_bayer_bggr16le_to_yv12_interpolate","_bayer_bggr16be_to_yv12_copy","_bayer_bggr16be_to_yv12_interpolate","_bayer_rggb8_to_yv12_copy","_bayer_rggb8_to_yv12_interpolate","_bayer_rggb16le_to_yv12_copy","_bayer_rggb16le_to_yv12_interpolate","_bayer_rggb16be_to_yv12_copy","_bayer_rggb16be_to_yv12_interpolate","_bayer_gbrg8_to_yv12_copy","_bayer_gbrg8_to_yv12_interpolate","_bayer_gbrg16le_to_yv12_copy","_bayer_gbrg16le_to_yv12_interpolate","_bayer_gbrg16be_to_yv12_copy","_bayer_gbrg16be_to_yv12_interpolate","_bayer_grbg8_to_yv12_copy","_bayer_grbg8_to_yv12_interpolate","_bayer_grbg16le_to_yv12_copy","_bayer_grbg16le_to_yv12_interpolate","_bayer_grbg16be_to_yv12_copy","_bayer_grbg16be_to_yv12_interpolate","_sao_band_filter_9","_put_hevc_pel_uni_pixels_9","_put_hevc_qpel_uni_h_9","_put_hevc_qpel_uni_v_9","_put_hevc_qpel_uni_hv_9","_put_hevc_epel_uni_h_9","_put_hevc_epel_uni_v_9","_put_hevc_epel_uni_hv_9","_sao_band_filter_10","_put_hevc_pel_uni_pixels_10","_put_hevc_qpel_uni_h_10","_put_hevc_qpel_uni_v_10","_put_hevc_qpel_uni_hv_10","_put_hevc_epel_uni_h_10","_put_hevc_epel_uni_v_10","_put_hevc_epel_uni_hv_10","_sao_band_filter_12","_put_hevc_pel_uni_pixels_12","_put_hevc_qpel_uni_h_12","_put_hevc_qpel_uni_v_12","_put_hevc_qpel_uni_hv_12","_put_hevc_epel_uni_h_12","_put_hevc_epel_uni_v_12","_put_hevc_epel_uni_hv_12","_sao_band_filter_8","_put_hevc_pel_uni_pixels_8","_put_hevc_qpel_uni_h_8","_put_hevc_qpel_uni_v_8","_put_hevc_qpel_uni_hv_8","_put_hevc_epel_uni_h_8","_put_hevc_epel_uni_v_8","_put_hevc_epel_uni_hv_8","_biweight_h264_pixels16_8_c","_biweight_h264_pixels8_8_c","_biweight_h264_pixels4_8_c","_biweight_h264_pixels2_8_c",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];var debug_table_viiiiiiiid=[0,"jsCall_viiiiiiiid_0","jsCall_viiiiiiiid_1","jsCall_viiiiiiiid_2","jsCall_viiiiiiiid_3","jsCall_viiiiiiiid_4","jsCall_viiiiiiiid_5","jsCall_viiiiiiiid_6","jsCall_viiiiiiiid_7","jsCall_viiiiiiiid_8","jsCall_viiiiiiiid_9","jsCall_viiiiiiiid_10","jsCall_viiiiiiiid_11","jsCall_viiiiiiiid_12","jsCall_viiiiiiiid_13","jsCall_viiiiiiiid_14","jsCall_viiiiiiiid_15","jsCall_viiiiiiiid_16","jsCall_viiiiiiiid_17","jsCall_viiiiiiiid_18","jsCall_viiiiiiiid_19","jsCall_viiiiiiiid_20","jsCall_viiiiiiiid_21","jsCall_viiiiiiiid_22","jsCall_viiiiiiiid_23","jsCall_viiiiiiiid_24","jsCall_viiiiiiiid_25","jsCall_viiiiiiiid_26","jsCall_viiiiiiiid_27","jsCall_viiiiiiiid_28","jsCall_viiiiiiiid_29","jsCall_viiiiiiiid_30","jsCall_viiiiiiiid_31","jsCall_viiiiiiiid_32","jsCall_viiiiiiiid_33","jsCall_viiiiiiiid_34",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];var debug_table_viiiiiiiidi=[0,"jsCall_viiiiiiiidi_0","jsCall_viiiiiiiidi_1","jsCall_viiiiiiiidi_2","jsCall_viiiiiiiidi_3","jsCall_viiiiiiiidi_4","jsCall_viiiiiiiidi_5","jsCall_viiiiiiiidi_6","jsCall_viiiiiiiidi_7","jsCall_viiiiiiiidi_8","jsCall_viiiiiiiidi_9","jsCall_viiiiiiiidi_10","jsCall_viiiiiiiidi_11","jsCall_viiiiiiiidi_12","jsCall_viiiiiiiidi_13","jsCall_viiiiiiiidi_14","jsCall_viiiiiiiidi_15","jsCall_viiiiiiiidi_16","jsCall_viiiiiiiidi_17","jsCall_viiiiiiiidi_18","jsCall_viiiiiiiidi_19","jsCall_viiiiiiiidi_20","jsCall_viiiiiiiidi_21","jsCall_viiiiiiiidi_22","jsCall_viiiiiiiidi_23","jsCall_viiiiiiiidi_24","jsCall_viiiiiiiidi_25","jsCall_viiiiiiiidi_26","jsCall_viiiiiiiidi_27","jsCall_viiiiiiiidi_28","jsCall_viiiiiiiidi_29","jsCall_viiiiiiiidi_30","jsCall_viiiiiiiidi_31","jsCall_viiiiiiiidi_32","jsCall_viiiiiiiidi_33","jsCall_viiiiiiiidi_34",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];var debug_table_viiiiiiiii=[0,"jsCall_viiiiiiiii_0","jsCall_viiiiiiiii_1","jsCall_viiiiiiiii_2","jsCall_viiiiiiiii_3","jsCall_viiiiiiiii_4","jsCall_viiiiiiiii_5","jsCall_viiiiiiiii_6","jsCall_viiiiiiiii_7","jsCall_viiiiiiiii_8","jsCall_viiiiiiiii_9","jsCall_viiiiiiiii_10","jsCall_viiiiiiiii_11","jsCall_viiiiiiiii_12","jsCall_viiiiiiiii_13","jsCall_viiiiiiiii_14","jsCall_viiiiiiiii_15","jsCall_viiiiiiiii_16","jsCall_viiiiiiiii_17","jsCall_viiiiiiiii_18","jsCall_viiiiiiiii_19","jsCall_viiiiiiiii_20","jsCall_viiiiiiiii_21","jsCall_viiiiiiiii_22","jsCall_viiiiiiiii_23","jsCall_viiiiiiiii_24","jsCall_viiiiiiiii_25","jsCall_viiiiiiiii_26","jsCall_viiiiiiiii_27","jsCall_viiiiiiiii_28","jsCall_viiiiiiiii_29","jsCall_viiiiiiiii_30","jsCall_viiiiiiiii_31","jsCall_viiiiiiiii_32","jsCall_viiiiiiiii_33","jsCall_viiiiiiiii_34","_yuv2rgba32_full_1_c","_yuv2rgbx32_full_1_c","_yuv2argb32_full_1_c","_yuv2xrgb32_full_1_c","_yuv2bgra32_full_1_c","_yuv2bgrx32_full_1_c","_yuv2abgr32_full_1_c","_yuv2xbgr32_full_1_c","_yuv2rgba64le_full_1_c","_yuv2rgbx64le_full_1_c","_yuv2rgba64be_full_1_c","_yuv2rgbx64be_full_1_c","_yuv2bgra64le_full_1_c","_yuv2bgrx64le_full_1_c","_yuv2bgra64be_full_1_c","_yuv2bgrx64be_full_1_c","_yuv2rgb24_full_1_c","_yuv2bgr24_full_1_c","_yuv2rgb48le_full_1_c","_yuv2bgr48le_full_1_c","_yuv2rgb48be_full_1_c","_yuv2bgr48be_full_1_c","_yuv2bgr4_byte_full_1_c","_yuv2rgb4_byte_full_1_c","_yuv2bgr8_full_1_c","_yuv2rgb8_full_1_c","_yuv2rgbx64le_1_c","_yuv2rgba64le_1_c","_yuv2rgbx64be_1_c","_yuv2rgba64be_1_c","_yuv2bgrx64le_1_c","_yuv2bgra64le_1_c","_yuv2bgrx64be_1_c","_yuv2bgra64be_1_c","_yuv2rgba32_1_c","_yuv2rgbx32_1_c","_yuv2rgba32_1_1_c","_yuv2rgbx32_1_1_c","_yuv2rgb16_1_c","_yuv2rgb15_1_c","_yuv2rgb12_1_c","_yuv2rgb8_1_c","_yuv2rgb4_1_c","_yuv2rgb4b_1_c","_yuv2rgb48le_1_c","_yuv2rgb48be_1_c","_yuv2bgr48le_1_c","_yuv2bgr48be_1_c","_yuv2rgb24_1_c","_yuv2bgr24_1_c","_yuv2monowhite_1_c","_yuv2monoblack_1_c","_yuv2yuyv422_1_c","_yuv2yvyu422_1_c","_yuv2uyvy422_1_c","_yuv2ya8_1_c","_yuv2ya16le_1_c","_yuv2ya16be_1_c","_put_hevc_pel_bi_pixels_9","_put_hevc_qpel_bi_h_9","_put_hevc_qpel_bi_v_9","_put_hevc_qpel_bi_hv_9","_put_hevc_epel_bi_h_9","_put_hevc_epel_bi_v_9","_put_hevc_epel_bi_hv_9","_put_hevc_pel_bi_pixels_10","_put_hevc_qpel_bi_h_10","_put_hevc_qpel_bi_v_10","_put_hevc_qpel_bi_hv_10","_put_hevc_epel_bi_h_10","_put_hevc_epel_bi_v_10","_put_hevc_epel_bi_hv_10","_put_hevc_pel_bi_pixels_12","_put_hevc_qpel_bi_h_12","_put_hevc_qpel_bi_v_12","_put_hevc_qpel_bi_hv_12","_put_hevc_epel_bi_h_12","_put_hevc_epel_bi_v_12","_put_hevc_epel_bi_hv_12","_put_hevc_pel_bi_pixels_8","_put_hevc_qpel_bi_h_8","_put_hevc_qpel_bi_v_8","_put_hevc_qpel_bi_hv_8","_put_hevc_epel_bi_h_8","_put_hevc_epel_bi_v_8","_put_hevc_epel_bi_hv_8",0,0,0,0,0,0];var debug_table_viiiiiiiiii=[0,"jsCall_viiiiiiiiii_0","jsCall_viiiiiiiiii_1","jsCall_viiiiiiiiii_2","jsCall_viiiiiiiiii_3","jsCall_viiiiiiiiii_4","jsCall_viiiiiiiiii_5","jsCall_viiiiiiiiii_6","jsCall_viiiiiiiiii_7","jsCall_viiiiiiiiii_8","jsCall_viiiiiiiiii_9","jsCall_viiiiiiiiii_10","jsCall_viiiiiiiiii_11","jsCall_viiiiiiiiii_12","jsCall_viiiiiiiiii_13","jsCall_viiiiiiiiii_14","jsCall_viiiiiiiiii_15","jsCall_viiiiiiiiii_16","jsCall_viiiiiiiiii_17","jsCall_viiiiiiiiii_18","jsCall_viiiiiiiiii_19","jsCall_viiiiiiiiii_20","jsCall_viiiiiiiiii_21","jsCall_viiiiiiiiii_22","jsCall_viiiiiiiiii_23","jsCall_viiiiiiiiii_24","jsCall_viiiiiiiiii_25","jsCall_viiiiiiiiii_26","jsCall_viiiiiiiiii_27","jsCall_viiiiiiiiii_28","jsCall_viiiiiiiiii_29","jsCall_viiiiiiiiii_30","jsCall_viiiiiiiiii_31","jsCall_viiiiiiiiii_32","jsCall_viiiiiiiiii_33","jsCall_viiiiiiiiii_34","_yuv2rgba32_full_2_c","_yuv2rgbx32_full_2_c","_yuv2argb32_full_2_c","_yuv2xrgb32_full_2_c","_yuv2bgra32_full_2_c","_yuv2bgrx32_full_2_c","_yuv2abgr32_full_2_c","_yuv2xbgr32_full_2_c","_yuv2rgba64le_full_2_c","_yuv2rgbx64le_full_2_c","_yuv2rgba64be_full_2_c","_yuv2rgbx64be_full_2_c","_yuv2bgra64le_full_2_c","_yuv2bgrx64le_full_2_c","_yuv2bgra64be_full_2_c","_yuv2bgrx64be_full_2_c","_yuv2rgb24_full_2_c","_yuv2bgr24_full_2_c","_yuv2rgb48le_full_2_c","_yuv2bgr48le_full_2_c","_yuv2rgb48be_full_2_c","_yuv2bgr48be_full_2_c","_yuv2bgr4_byte_full_2_c","_yuv2rgb4_byte_full_2_c","_yuv2bgr8_full_2_c","_yuv2rgb8_full_2_c","_yuv2rgbx64le_2_c","_yuv2rgba64le_2_c","_yuv2rgbx64be_2_c","_yuv2rgba64be_2_c","_yuv2bgrx64le_2_c","_yuv2bgra64le_2_c","_yuv2bgrx64be_2_c","_yuv2bgra64be_2_c","_yuv2rgba32_2_c","_yuv2rgbx32_2_c","_yuv2rgba32_1_2_c","_yuv2rgbx32_1_2_c","_yuv2rgb16_2_c","_yuv2rgb15_2_c","_yuv2rgb12_2_c","_yuv2rgb8_2_c","_yuv2rgb4_2_c","_yuv2rgb4b_2_c","_yuv2rgb48le_2_c","_yuv2rgb48be_2_c","_yuv2bgr48le_2_c","_yuv2bgr48be_2_c","_yuv2rgb24_2_c","_yuv2bgr24_2_c","_yuv2monowhite_2_c","_yuv2monoblack_2_c","_yuv2yuyv422_2_c","_yuv2yvyu422_2_c","_yuv2uyvy422_2_c","_yuv2ya8_2_c","_yuv2ya16le_2_c","_yuv2ya16be_2_c","_ff_emulated_edge_mc_8","_ff_emulated_edge_mc_16",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];var debug_table_viiiiiiiiiii=[0,"jsCall_viiiiiiiiiii_0","jsCall_viiiiiiiiiii_1","jsCall_viiiiiiiiiii_2","jsCall_viiiiiiiiiii_3","jsCall_viiiiiiiiiii_4","jsCall_viiiiiiiiiii_5","jsCall_viiiiiiiiiii_6","jsCall_viiiiiiiiiii_7","jsCall_viiiiiiiiiii_8","jsCall_viiiiiiiiiii_9","jsCall_viiiiiiiiiii_10","jsCall_viiiiiiiiiii_11","jsCall_viiiiiiiiiii_12","jsCall_viiiiiiiiiii_13","jsCall_viiiiiiiiiii_14","jsCall_viiiiiiiiiii_15","jsCall_viiiiiiiiiii_16","jsCall_viiiiiiiiiii_17","jsCall_viiiiiiiiiii_18","jsCall_viiiiiiiiiii_19","jsCall_viiiiiiiiiii_20","jsCall_viiiiiiiiiii_21","jsCall_viiiiiiiiiii_22","jsCall_viiiiiiiiiii_23","jsCall_viiiiiiiiiii_24","jsCall_viiiiiiiiiii_25","jsCall_viiiiiiiiiii_26","jsCall_viiiiiiiiiii_27","jsCall_viiiiiiiiiii_28","jsCall_viiiiiiiiiii_29","jsCall_viiiiiiiiiii_30","jsCall_viiiiiiiiiii_31","jsCall_viiiiiiiiiii_32","jsCall_viiiiiiiiiii_33","jsCall_viiiiiiiiiii_34","_put_hevc_pel_uni_w_pixels_9","_put_hevc_qpel_uni_w_h_9","_put_hevc_qpel_uni_w_v_9","_put_hevc_qpel_uni_w_hv_9","_put_hevc_epel_uni_w_h_9","_put_hevc_epel_uni_w_v_9","_put_hevc_epel_uni_w_hv_9","_put_hevc_pel_uni_w_pixels_10","_put_hevc_qpel_uni_w_h_10","_put_hevc_qpel_uni_w_v_10","_put_hevc_qpel_uni_w_hv_10","_put_hevc_epel_uni_w_h_10","_put_hevc_epel_uni_w_v_10","_put_hevc_epel_uni_w_hv_10","_put_hevc_pel_uni_w_pixels_12","_put_hevc_qpel_uni_w_h_12","_put_hevc_qpel_uni_w_v_12","_put_hevc_qpel_uni_w_hv_12","_put_hevc_epel_uni_w_h_12","_put_hevc_epel_uni_w_v_12","_put_hevc_epel_uni_w_hv_12","_put_hevc_pel_uni_w_pixels_8","_put_hevc_qpel_uni_w_h_8","_put_hevc_qpel_uni_w_v_8","_put_hevc_qpel_uni_w_hv_8","_put_hevc_epel_uni_w_h_8","_put_hevc_epel_uni_w_v_8","_put_hevc_epel_uni_w_hv_8"];var debug_table_viiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiii_0","jsCall_viiiiiiiiiiii_1","jsCall_viiiiiiiiiiii_2","jsCall_viiiiiiiiiiii_3","jsCall_viiiiiiiiiiii_4","jsCall_viiiiiiiiiiii_5","jsCall_viiiiiiiiiiii_6","jsCall_viiiiiiiiiiii_7","jsCall_viiiiiiiiiiii_8","jsCall_viiiiiiiiiiii_9","jsCall_viiiiiiiiiiii_10","jsCall_viiiiiiiiiiii_11","jsCall_viiiiiiiiiiii_12","jsCall_viiiiiiiiiiii_13","jsCall_viiiiiiiiiiii_14","jsCall_viiiiiiiiiiii_15","jsCall_viiiiiiiiiiii_16","jsCall_viiiiiiiiiiii_17","jsCall_viiiiiiiiiiii_18","jsCall_viiiiiiiiiiii_19","jsCall_viiiiiiiiiiii_20","jsCall_viiiiiiiiiiii_21","jsCall_viiiiiiiiiiii_22","jsCall_viiiiiiiiiiii_23","jsCall_viiiiiiiiiiii_24","jsCall_viiiiiiiiiiii_25","jsCall_viiiiiiiiiiii_26","jsCall_viiiiiiiiiiii_27","jsCall_viiiiiiiiiiii_28","jsCall_viiiiiiiiiiii_29","jsCall_viiiiiiiiiiii_30","jsCall_viiiiiiiiiiii_31","jsCall_viiiiiiiiiiii_32","jsCall_viiiiiiiiiiii_33","jsCall_viiiiiiiiiiii_34","_yuv2rgba32_full_X_c","_yuv2rgbx32_full_X_c","_yuv2argb32_full_X_c","_yuv2xrgb32_full_X_c","_yuv2bgra32_full_X_c","_yuv2bgrx32_full_X_c","_yuv2abgr32_full_X_c","_yuv2xbgr32_full_X_c","_yuv2rgba64le_full_X_c","_yuv2rgbx64le_full_X_c","_yuv2rgba64be_full_X_c","_yuv2rgbx64be_full_X_c","_yuv2bgra64le_full_X_c","_yuv2bgrx64le_full_X_c","_yuv2bgra64be_full_X_c","_yuv2bgrx64be_full_X_c","_yuv2rgb24_full_X_c","_yuv2bgr24_full_X_c","_yuv2rgb48le_full_X_c","_yuv2bgr48le_full_X_c","_yuv2rgb48be_full_X_c","_yuv2bgr48be_full_X_c","_yuv2bgr4_byte_full_X_c","_yuv2rgb4_byte_full_X_c","_yuv2bgr8_full_X_c","_yuv2rgb8_full_X_c","_yuv2gbrp_full_X_c","_yuv2gbrp16_full_X_c","_yuv2rgbx64le_X_c","_yuv2rgba64le_X_c","_yuv2rgbx64be_X_c","_yuv2rgba64be_X_c","_yuv2bgrx64le_X_c","_yuv2bgra64le_X_c","_yuv2bgrx64be_X_c","_yuv2bgra64be_X_c","_yuv2rgba32_X_c","_yuv2rgbx32_X_c","_yuv2rgba32_1_X_c","_yuv2rgbx32_1_X_c","_yuv2rgb16_X_c","_yuv2rgb15_X_c","_yuv2rgb12_X_c","_yuv2rgb8_X_c","_yuv2rgb4_X_c","_yuv2rgb4b_X_c","_yuv2rgb48le_X_c","_yuv2rgb48be_X_c","_yuv2bgr48le_X_c","_yuv2bgr48be_X_c","_yuv2rgb24_X_c","_yuv2bgr24_X_c","_yuv2monowhite_X_c","_yuv2ayuv64le_X_c","_yuv2monoblack_X_c","_yuv2yuyv422_X_c","_yuv2yvyu422_X_c","_yuv2uyvy422_X_c","_yuv2ya8_X_c","_yuv2ya16le_X_c","_yuv2ya16be_X_c","_sao_edge_restore_0_9","_sao_edge_restore_1_9","_sao_edge_restore_0_10","_sao_edge_restore_1_10","_sao_edge_restore_0_12","_sao_edge_restore_1_12","_sao_edge_restore_0_8","_sao_edge_restore_1_8",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiiiii_0","jsCall_viiiiiiiiiiiiii_1","jsCall_viiiiiiiiiiiiii_2","jsCall_viiiiiiiiiiiiii_3","jsCall_viiiiiiiiiiiiii_4","jsCall_viiiiiiiiiiiiii_5","jsCall_viiiiiiiiiiiiii_6","jsCall_viiiiiiiiiiiiii_7","jsCall_viiiiiiiiiiiiii_8","jsCall_viiiiiiiiiiiiii_9","jsCall_viiiiiiiiiiiiii_10","jsCall_viiiiiiiiiiiiii_11","jsCall_viiiiiiiiiiiiii_12","jsCall_viiiiiiiiiiiiii_13","jsCall_viiiiiiiiiiiiii_14","jsCall_viiiiiiiiiiiiii_15","jsCall_viiiiiiiiiiiiii_16","jsCall_viiiiiiiiiiiiii_17","jsCall_viiiiiiiiiiiiii_18","jsCall_viiiiiiiiiiiiii_19","jsCall_viiiiiiiiiiiiii_20","jsCall_viiiiiiiiiiiiii_21","jsCall_viiiiiiiiiiiiii_22","jsCall_viiiiiiiiiiiiii_23","jsCall_viiiiiiiiiiiiii_24","jsCall_viiiiiiiiiiiiii_25","jsCall_viiiiiiiiiiiiii_26","jsCall_viiiiiiiiiiiiii_27","jsCall_viiiiiiiiiiiiii_28","jsCall_viiiiiiiiiiiiii_29","jsCall_viiiiiiiiiiiiii_30","jsCall_viiiiiiiiiiiiii_31","jsCall_viiiiiiiiiiiiii_32","jsCall_viiiiiiiiiiiiii_33","jsCall_viiiiiiiiiiiiii_34","_put_hevc_pel_bi_w_pixels_9","_put_hevc_qpel_bi_w_h_9","_put_hevc_qpel_bi_w_v_9","_put_hevc_qpel_bi_w_hv_9","_put_hevc_epel_bi_w_h_9","_put_hevc_epel_bi_w_v_9","_put_hevc_epel_bi_w_hv_9","_put_hevc_pel_bi_w_pixels_10","_put_hevc_qpel_bi_w_h_10","_put_hevc_qpel_bi_w_v_10","_put_hevc_qpel_bi_w_hv_10","_put_hevc_epel_bi_w_h_10","_put_hevc_epel_bi_w_v_10","_put_hevc_epel_bi_w_hv_10","_put_hevc_pel_bi_w_pixels_12","_put_hevc_qpel_bi_w_h_12","_put_hevc_qpel_bi_w_v_12","_put_hevc_qpel_bi_w_hv_12","_put_hevc_epel_bi_w_h_12","_put_hevc_epel_bi_w_v_12","_put_hevc_epel_bi_w_hv_12","_put_hevc_pel_bi_w_pixels_8","_put_hevc_qpel_bi_w_h_8","_put_hevc_qpel_bi_w_v_8","_put_hevc_qpel_bi_w_hv_8","_put_hevc_epel_bi_w_h_8","_put_hevc_epel_bi_w_v_8","_put_hevc_epel_bi_w_hv_8"];var debug_tables={"dd":debug_table_dd,"did":debug_table_did,"didd":debug_table_didd,"fii":debug_table_fii,"fiii":debug_table_fiii,"ii":debug_table_ii,"iid":debug_table_iid,"iii":debug_table_iii,"iiii":debug_table_iiii,"iiiii":debug_table_iiiii,"iiiiii":debug_table_iiiiii,"iiiiiii":debug_table_iiiiiii,"iiiiiiii":debug_table_iiiiiiii,"iiiiij":debug_table_iiiiij,"iiiji":debug_table_iiiji,"iiijjji":debug_table_iiijjji,"jiiij":debug_table_jiiij,"jiiji":debug_table_jiiji,"jiji":debug_table_jiji,"v":debug_table_v,"vdiidiiiii":debug_table_vdiidiiiii,"vi":debug_table_vi,"vii":debug_table_vii,"viidi":debug_table_viidi,"viifi":debug_table_viifi,"viii":debug_table_viii,"viiii":debug_table_viiii,"viiiid":debug_table_viiiid,"viiiifii":debug_table_viiiifii,"viiiii":debug_table_viiiii,"viiiiidd":debug_table_viiiiidd,"viiiiii":debug_table_viiiiii,"viiiiiifi":debug_table_viiiiiifi,"viiiiiii":debug_table_viiiiiii,"viiiiiiii":debug_table_viiiiiiii,"viiiiiiiid":debug_table_viiiiiiiid,"viiiiiiiidi":debug_table_viiiiiiiidi,"viiiiiiiii":debug_table_viiiiiiiii,"viiiiiiiiii":debug_table_viiiiiiiiii,"viiiiiiiiiii":debug_table_viiiiiiiiiii,"viiiiiiiiiiii":debug_table_viiiiiiiiiiii,"viiiiiiiiiiiiii":debug_table_viiiiiiiiiiiiii};function nullFunc_dd(x){abortFnPtrError(x,"dd")}function nullFunc_did(x){abortFnPtrError(x,"did")}function nullFunc_didd(x){abortFnPtrError(x,"didd")}function nullFunc_fii(x){abortFnPtrError(x,"fii")}function nullFunc_fiii(x){abortFnPtrError(x,"fiii")}function nullFunc_ii(x){abortFnPtrError(x,"ii")}function nullFunc_iid(x){abortFnPtrError(x,"iid")}function nullFunc_iii(x){abortFnPtrError(x,"iii")}function nullFunc_iiii(x){abortFnPtrError(x,"iiii")}function nullFunc_iiiii(x){abortFnPtrError(x,"iiiii")}function nullFunc_iiiiii(x){abortFnPtrError(x,"iiiiii")}function nullFunc_iiiiiii(x){abortFnPtrError(x,"iiiiiii")}function nullFunc_iiiiiiii(x){abortFnPtrError(x,"iiiiiiii")}function nullFunc_iiiiij(x){abortFnPtrError(x,"iiiiij")}function nullFunc_iiiji(x){abortFnPtrError(x,"iiiji")}function nullFunc_iiijjji(x){abortFnPtrError(x,"iiijjji")}function nullFunc_jiiij(x){abortFnPtrError(x,"jiiij")}function nullFunc_jiiji(x){abortFnPtrError(x,"jiiji")}function nullFunc_jiji(x){abortFnPtrError(x,"jiji")}function nullFunc_v(x){abortFnPtrError(x,"v")}function nullFunc_vdiidiiiii(x){abortFnPtrError(x,"vdiidiiiii")}function nullFunc_vi(x){abortFnPtrError(x,"vi")}function nullFunc_vii(x){abortFnPtrError(x,"vii")}function nullFunc_viidi(x){abortFnPtrError(x,"viidi")}function nullFunc_viifi(x){abortFnPtrError(x,"viifi")}function nullFunc_viii(x){abortFnPtrError(x,"viii")}function nullFunc_viiii(x){abortFnPtrError(x,"viiii")}function nullFunc_viiiid(x){abortFnPtrError(x,"viiiid")}function nullFunc_viiiifii(x){abortFnPtrError(x,"viiiifii")}function nullFunc_viiiii(x){abortFnPtrError(x,"viiiii")}function nullFunc_viiiiidd(x){abortFnPtrError(x,"viiiiidd")}function nullFunc_viiiiii(x){abortFnPtrError(x,"viiiiii")}function nullFunc_viiiiiifi(x){abortFnPtrError(x,"viiiiiifi")}function nullFunc_viiiiiii(x){abortFnPtrError(x,"viiiiiii")}function nullFunc_viiiiiiii(x){abortFnPtrError(x,"viiiiiiii")}function nullFunc_viiiiiiiid(x){abortFnPtrError(x,"viiiiiiiid")}function nullFunc_viiiiiiiidi(x){abortFnPtrError(x,"viiiiiiiidi")}function nullFunc_viiiiiiiii(x){abortFnPtrError(x,"viiiiiiiii")}function nullFunc_viiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiii")}function nullFunc_viiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiii")}function nullFunc_viiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiii")}function nullFunc_viiiiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiiiii")}function jsCall_dd(index,a1){return functionPointers[index](a1)}function jsCall_did(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_didd(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_fii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_fiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_ii(index,a1){return functionPointers[index](a1)}function jsCall_iid(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_iiiii(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiiiii(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiiiii(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){return functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_iiiiij(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiijjji(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_jiiij(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiji(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_v(index){functionPointers[index]()}function jsCall_vdiidiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_vi(index,a1){functionPointers[index](a1)}function jsCall_vii(index,a1,a2){functionPointers[index](a1,a2)}function jsCall_viidi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viifi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viii(index,a1,a2,a3){functionPointers[index](a1,a2,a3)}function jsCall_viiii(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viiiid(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiifii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiii(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiiidd(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiii(index,a1,a2,a3,a4,a5,a6){functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_viiiiiifi(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiiiid(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiidi(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}function jsCall_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}function jsCall_viiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}var asmGlobalArg={};var asmLibraryArg={"___buildEnvironment":___buildEnvironment,"___lock":___lock,"___syscall221":___syscall221,"___syscall3":___syscall3,"___syscall5":___syscall5,"___unlock":___unlock,"___wasi_fd_close":___wasi_fd_close,"___wasi_fd_fdstat_get":___wasi_fd_fdstat_get,"___wasi_fd_seek":___wasi_fd_seek,"___wasi_fd_write":___wasi_fd_write,"__emscripten_fetch_free":__emscripten_fetch_free,"__memory_base":1024,"__table_base":0,"_abort":_abort,"_clock":_clock,"_clock_gettime":_clock_gettime,"_emscripten_asm_const_i":_emscripten_asm_const_i,"_emscripten_get_heap_size":_emscripten_get_heap_size,"_emscripten_is_main_browser_thread":_emscripten_is_main_browser_thread,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_emscripten_resize_heap":_emscripten_resize_heap,"_emscripten_start_fetch":_emscripten_start_fetch,"_fabs":_fabs,"_getenv":_getenv,"_gettimeofday":_gettimeofday,"_gmtime_r":_gmtime_r,"_llvm_exp2_f64":_llvm_exp2_f64,"_llvm_log2_f32":_llvm_log2_f32,"_llvm_stackrestore":_llvm_stackrestore,"_llvm_stacksave":_llvm_stacksave,"_llvm_trunc_f64":_llvm_trunc_f64,"_localtime_r":_localtime_r,"_nanosleep":_nanosleep,"_pthread_cond_destroy":_pthread_cond_destroy,"_pthread_cond_init":_pthread_cond_init,"_pthread_create":_pthread_create,"_pthread_join":_pthread_join,"_strftime":_strftime,"_sysconf":_sysconf,"_time":_time,"abortStackOverflow":abortStackOverflow,"getTempRet0":getTempRet0,"jsCall_dd":jsCall_dd,"jsCall_did":jsCall_did,"jsCall_didd":jsCall_didd,"jsCall_fii":jsCall_fii,"jsCall_fiii":jsCall_fiii,"jsCall_ii":jsCall_ii,"jsCall_iid":jsCall_iid,"jsCall_iii":jsCall_iii,"jsCall_iiii":jsCall_iiii,"jsCall_iiiii":jsCall_iiiii,"jsCall_iiiiii":jsCall_iiiiii,"jsCall_iiiiiii":jsCall_iiiiiii,"jsCall_iiiiiiii":jsCall_iiiiiiii,"jsCall_iiiiij":jsCall_iiiiij,"jsCall_iiiji":jsCall_iiiji,"jsCall_iiijjji":jsCall_iiijjji,"jsCall_jiiij":jsCall_jiiij,"jsCall_jiiji":jsCall_jiiji,"jsCall_jiji":jsCall_jiji,"jsCall_v":jsCall_v,"jsCall_vdiidiiiii":jsCall_vdiidiiiii,"jsCall_vi":jsCall_vi,"jsCall_vii":jsCall_vii,"jsCall_viidi":jsCall_viidi,"jsCall_viifi":jsCall_viifi,"jsCall_viii":jsCall_viii,"jsCall_viiii":jsCall_viiii,"jsCall_viiiid":jsCall_viiiid,"jsCall_viiiifii":jsCall_viiiifii,"jsCall_viiiii":jsCall_viiiii,"jsCall_viiiiidd":jsCall_viiiiidd,"jsCall_viiiiii":jsCall_viiiiii,"jsCall_viiiiiifi":jsCall_viiiiiifi,"jsCall_viiiiiii":jsCall_viiiiiii,"jsCall_viiiiiiii":jsCall_viiiiiiii,"jsCall_viiiiiiiid":jsCall_viiiiiiiid,"jsCall_viiiiiiiidi":jsCall_viiiiiiiidi,"jsCall_viiiiiiiii":jsCall_viiiiiiiii,"jsCall_viiiiiiiiii":jsCall_viiiiiiiiii,"jsCall_viiiiiiiiiii":jsCall_viiiiiiiiiii,"jsCall_viiiiiiiiiiii":jsCall_viiiiiiiiiiii,"jsCall_viiiiiiiiiiiiii":jsCall_viiiiiiiiiiiiii,"memory":wasmMemory,"nullFunc_dd":nullFunc_dd,"nullFunc_did":nullFunc_did,"nullFunc_didd":nullFunc_didd,"nullFunc_fii":nullFunc_fii,"nullFunc_fiii":nullFunc_fiii,"nullFunc_ii":nullFunc_ii,"nullFunc_iid":nullFunc_iid,"nullFunc_iii":nullFunc_iii,"nullFunc_iiii":nullFunc_iiii,"nullFunc_iiiii":nullFunc_iiiii,"nullFunc_iiiiii":nullFunc_iiiiii,"nullFunc_iiiiiii":nullFunc_iiiiiii,"nullFunc_iiiiiiii":nullFunc_iiiiiiii,"nullFunc_iiiiij":nullFunc_iiiiij,"nullFunc_iiiji":nullFunc_iiiji,"nullFunc_iiijjji":nullFunc_iiijjji,"nullFunc_jiiij":nullFunc_jiiij,"nullFunc_jiiji":nullFunc_jiiji,"nullFunc_jiji":nullFunc_jiji,"nullFunc_v":nullFunc_v,"nullFunc_vdiidiiiii":nullFunc_vdiidiiiii,"nullFunc_vi":nullFunc_vi,"nullFunc_vii":nullFunc_vii,"nullFunc_viidi":nullFunc_viidi,"nullFunc_viifi":nullFunc_viifi,"nullFunc_viii":nullFunc_viii,"nullFunc_viiii":nullFunc_viiii,"nullFunc_viiiid":nullFunc_viiiid,"nullFunc_viiiifii":nullFunc_viiiifii,"nullFunc_viiiii":nullFunc_viiiii,"nullFunc_viiiiidd":nullFunc_viiiiidd,"nullFunc_viiiiii":nullFunc_viiiiii,"nullFunc_viiiiiifi":nullFunc_viiiiiifi,"nullFunc_viiiiiii":nullFunc_viiiiiii,"nullFunc_viiiiiiii":nullFunc_viiiiiiii,"nullFunc_viiiiiiiid":nullFunc_viiiiiiiid,"nullFunc_viiiiiiiidi":nullFunc_viiiiiiiidi,"nullFunc_viiiiiiiii":nullFunc_viiiiiiiii,"nullFunc_viiiiiiiiii":nullFunc_viiiiiiiiii,"nullFunc_viiiiiiiiiii":nullFunc_viiiiiiiiiii,"nullFunc_viiiiiiiiiiii":nullFunc_viiiiiiiiiiii,"nullFunc_viiiiiiiiiiiiii":nullFunc_viiiiiiiiiiiiii,"table":wasmTable};var asm=Module["asm"](asmGlobalArg,asmLibraryArg,buffer);Module["asm"]=asm;var _AVSniffHttpFlvInit=Module["_AVSniffHttpFlvInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffHttpFlvInit"].apply(null,arguments)};var _AVSniffStreamInit=Module["_AVSniffStreamInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffStreamInit"].apply(null,arguments)};var ___emscripten_environ_constructor=Module["___emscripten_environ_constructor"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___emscripten_environ_constructor"].apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___errno_location"].apply(null,arguments)};var __get_daylight=Module["__get_daylight"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_daylight"].apply(null,arguments)};var __get_timezone=Module["__get_timezone"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_timezone"].apply(null,arguments)};var __get_tzname=Module["__get_tzname"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_tzname"].apply(null,arguments)};var _closeVideo=Module["_closeVideo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_closeVideo"].apply(null,arguments)};var _decodeCodecContext=Module["_decodeCodecContext"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeCodecContext"].apply(null,arguments)};var _decodeHttpFlvVideoFrame=Module["_decodeHttpFlvVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null,arguments)};var _decodeVideoFrame=Module["_decodeVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeVideoFrame"].apply(null,arguments)};var _demuxBox=Module["_demuxBox"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_demuxBox"].apply(null,arguments)};var _exitMissile=Module["_exitMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitMissile"].apply(null,arguments)};var _exitTsMissile=Module["_exitTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitTsMissile"].apply(null,arguments)};var _fflush=Module["_fflush"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_fflush"].apply(null,arguments)};var _free=Module["_free"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_free"].apply(null,arguments)};var _getAudioCodecID=Module["_getAudioCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getAudioCodecID"].apply(null,arguments)};var _getBufferLengthApi=Module["_getBufferLengthApi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getBufferLengthApi"].apply(null,arguments)};var _getExtensionInfo=Module["_getExtensionInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getExtensionInfo"].apply(null,arguments)};var _getMediaInfo=Module["_getMediaInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getMediaInfo"].apply(null,arguments)};var _getPPS=Module["_getPPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPS"].apply(null,arguments)};var _getPPSLen=Module["_getPPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPSLen"].apply(null,arguments)};var _getPacket=Module["_getPacket"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPacket"].apply(null,arguments)};var _getSEI=Module["_getSEI"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEI"].apply(null,arguments)};var _getSEILen=Module["_getSEILen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEILen"].apply(null,arguments)};var _getSPS=Module["_getSPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPS"].apply(null,arguments)};var _getSPSLen=Module["_getSPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPSLen"].apply(null,arguments)};var _getSniffHttpFlvPkg=Module["_getSniffHttpFlvPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkg"].apply(null,arguments)};var _getSniffHttpFlvPkgNoCheckProbe=Module["_getSniffHttpFlvPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null,arguments)};var _getSniffStreamPkg=Module["_getSniffStreamPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkg"].apply(null,arguments)};var _getSniffStreamPkgNoCheckProbe=Module["_getSniffStreamPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null,arguments)};var _getVLC=Module["_getVLC"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLC"].apply(null,arguments)};var _getVLCLen=Module["_getVLCLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLCLen"].apply(null,arguments)};var _getVPS=Module["_getVPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPS"].apply(null,arguments)};var _getVPSLen=Module["_getVPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPSLen"].apply(null,arguments)};var _getVideoCodecID=Module["_getVideoCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVideoCodecID"].apply(null,arguments)};var _initMissile=Module["_initMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initMissile"].apply(null,arguments)};var _initTsMissile=Module["_initTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initTsMissile"].apply(null,arguments)};var _initializeDecoder=Module["_initializeDecoder"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDecoder"].apply(null,arguments)};var _initializeDemuxer=Module["_initializeDemuxer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDemuxer"].apply(null,arguments)};var _initializeSniffHttpFlvModule=Module["_initializeSniffHttpFlvModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null,arguments)};var _initializeSniffHttpFlvModuleWithAOpt=Module["_initializeSniffHttpFlvModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null,arguments)};var _initializeSniffStreamModule=Module["_initializeSniffStreamModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModule"].apply(null,arguments)};var _initializeSniffStreamModuleWithAOpt=Module["_initializeSniffStreamModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null,arguments)};var _main=Module["_main"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_main"].apply(null,arguments)};var _malloc=Module["_malloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_malloc"].apply(null,arguments)};var _pushSniffHttpFlvData=Module["_pushSniffHttpFlvData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffHttpFlvData"].apply(null,arguments)};var _pushSniffStreamData=Module["_pushSniffStreamData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffStreamData"].apply(null,arguments)};var _registerPlayer=Module["_registerPlayer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_registerPlayer"].apply(null,arguments)};var _release=Module["_release"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_release"].apply(null,arguments)};var _releaseHttpFLV=Module["_releaseHttpFLV"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseHttpFLV"].apply(null,arguments)};var _releaseSniffHttpFlv=Module["_releaseSniffHttpFlv"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffHttpFlv"].apply(null,arguments)};var _releaseSniffStream=Module["_releaseSniffStream"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffStream"].apply(null,arguments)};var _setCodecType=Module["_setCodecType"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_setCodecType"].apply(null,arguments)};var establishStackSpace=Module["establishStackSpace"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["establishStackSpace"].apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackAlloc"].apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackRestore"].apply(null,arguments)};var stackSave=Module["stackSave"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackSave"].apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_v"].apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_vi"].apply(null,arguments)};Module["asm"]=asm;if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromString"))Module["intArrayFromString"]=function(){abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=function(){abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["ccall"]=ccall;Module["cwrap"]=cwrap;if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=function(){abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=function(){abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=function(){abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getMemory"))Module["getMemory"]=function(){abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=function(){abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=function(){abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=function(){abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=function(){abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=function(){abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=function(){abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=function(){abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=function(){abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=function(){abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=function(){abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=function(){abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=function(){abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=function(){abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=function(){abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=function(){abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=function(){abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=function(){abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=function(){abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=function(){abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=function(){abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=function(){abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=function(){abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=function(){abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=function(){abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=function(){abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=function(){abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS"))Module["FS"]=function(){abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=function(){abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=function(){abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=function(){abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=function(){abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=function(){abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=function(){abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=function(){abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=function(){abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=function(){abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynamicAlloc"))Module["dynamicAlloc"]=function(){abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadDynamicLibrary"))Module["loadDynamicLibrary"]=function(){abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadWebAssemblyModule"))Module["loadWebAssemblyModule"]=function(){abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=function(){abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=function(){abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=function(){abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=function(){abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["addFunction"]=addFunction;Module["removeFunction"]=removeFunction;if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=function(){abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=function(){abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"makeBigInt"))Module["makeBigInt"]=function(){abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=function(){abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=function(){abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=function(){abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=function(){abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=function(){abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"establishStackSpace"))Module["establishStackSpace"]=function(){abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=function(){abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=function(){abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=function(){abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=function(){abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=function(){abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=function(){abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Pointer_stringify"))Module["Pointer_stringify"]=function(){abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=function(){abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_DYNAMIC"))Object.defineProperty(Module,"ALLOC_DYNAMIC",{configurable:true,get:function(){abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NONE"))Object.defineProperty(Module,"ALLOC_NONE",{configurable:true,get:function(){abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"calledRun"))Object.defineProperty(Module,"calledRun",{configurable:true,get:function(){abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){assert(runDependencies==0,'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])');assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=Module["_main"](argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}writeStackCookie();preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var print=out;var printErr=err;var has=false;out=err=function(x){has=true};try{var flush=Module["_fflush"];if(flush)flush(0);["stdout","stderr"].forEach(function(name){var info=FS.analyzePath("/dev/"+name);if(!info)return;var stream=info.object;var rdev=stream.rdev;var tty=TTY.ttys[rdev];if(tty&&tty.output&&tty.output.length){has=true}})}catch(e){}out=print;err=printErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.")}}function exit(status,implicit){checkUnflushedContent();if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){if(!implicit){err("exit("+status+") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)")}}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run(); diff --git a/vite_vue_ts/public/dist/missile-v20220421.wasm b/vite_vue_ts/public/dist/missile-v20220421.wasm deleted file mode 100644 index 6f1e27f73830f3aa026d60eee0923de6b1fccbb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1859591 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

    #Y48HX4dni}oVW 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 mZl!euP=A=Gm-J24)FCo~*5P@A(qP>_Iv0 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ϒ=D^E#y7^e@r*HU{9=q7uNdRTCo2A{MLs5N z!zjM4#&Yhj&oDg*2zs&tg;rZ5hG@h}v$-P<2=kI8YrpliXqz?ndVsRPWbL-_-7^uS z#ty=L3*w7y4IaG0a%j+~X9NpAW`}-Fkc&F2XF4Qml?c@6gXV+vyoD zd#6}adp=%4{H$jnWsV4xx`q_5kD_M%LufU(o#4b?EH^Syg*Q2F?9_fuxBLr6W=z)4 z)rd(OB{YPI64a+9A~ZvQ<^~atuN;EEK^$B}Z4u-K7!#E=(mQ3k39S{g87&}KQpB?B z)ip7ZnQZRmPBr&(c_tDqO%#N=kQd?k{F8!p_2f?W-ovp1AYnuA4_hdAs@oFp1u~4)w|!(;a@am{Z?M`pIX-7cCbZe@uG^|H zW9PVoF({zl*!*5y8C~d%bfMkl&O+FT-Msia`n?o3sB7!GOJV&U`U~!t7Nsk<3o^~H zQ~pl&_U$gPL$s7rn`R zj*H7#xh%OpIxtg56=ygoXp?+gYF@Jnk!RlCU_y;oe`Q;&{#sAuO|?_){NNi_7UG54 zkHiO$f!bQ7VU9)V)DfX4Q)n6f5%h2;8$~n{E$_H9HU%{qjPlB??*WVc@xJQ`iNUU` zx70+tkzce+&msy!C>W~&(HHArg4X>#etY_Q5je|~(?gJdaWQj#!M9aTn`I@ghE7IMu!uSLSt^XP0 zlislL3FmJZ9HG0URj<$!c}cV0$V=MwMqbjeH}aB}y^)tR?Tx&oZExfyje8?6Y26!n zN%LOieLi=3IO@(4M*xv)&RL-bJIMCBoer2J~hrFLfgaI1VK47C6f2$VY_ z-p!ni2E}f-B&S%|UKN}H*_ucehe;KhRxpHYkU+}J?jN&K?cx%xUD*eLU*OjF<8z5k znOt_0Lpy}bMN%_XeI+lc8XI{@-Pp)8#%YK|CADLtobfP2<&2jZ$^(Q~kjA8jY}A)j zkyYLy>ME#{(KBKu@AzDgD)=)VXy`jhe^$LuxuipD??Nwc}>MAyW2 zuc$<|xW_lY`1Y^<=H+{k(z^3cJn+^BC(grh()@vIe(cJ@w1TTb*9ZhM$ZcFcos~EW zzsC7aL;vh8IrA%C!j_dCgsGSaiCiWzo5JG{c+*_S8Nx-*goson+1U}!g^$%zos#zY zOBA=QE>`1^CD{N=Miv$lmUw_j_%GI4x5jg{U&resA;uSIpuFgrSdC;vG(Tl>1q*=O zlZ)G(F;#Sb9lfKDzQ2y%RYyNiM-SA|kJiz9+=?igKcyykLxz8iJrqzT)Et2%q2-uP zC^@DRI*#dtieoyVtC&uxDy9>fis^)+VmhHGrLWG}1d3wLFo0@SI03IfBEe%3T7+d_ zJZ!{k9vIdO0Fe;}{E)?xGfFPiDx^u4ik27r-enPLOnXegWsnknjEzjVF{Tq;o(m`*q^rW3x4>4fWII^nsPPB>2K+oy`PSGDBeQ})X2mewYF4`i~_kW?oINn{N_ z(h>-?4T(U2+Z_o6&>#r}lK)UnLC&Q8LY0NwU{=V8df+&$%_`>}oNS5)#cPMkH|y%`}y#Y!fzcA6ltf*asUqXOH~3ai4td zoA}UXe(-hD-hb|;)s$~7@1Zuy3guO*pC*O&&iy7b4K}C-+-L2xCoDU+IW<_>T7HWc zrR%d7<0r}oAG-PLVV`A6P^^Pu6JtB zo&!zx$xY?wcw>$C9Hgp^e&3$wooFlq2iW5A zR#ay2+6VKQF)jPMU1U*2QcJ7hWg5AqCCAb<2m4pFmX+Ls;!^p>&dY1wdh_zsf&<2} zrX-Rv_a-K(C34|YmDJJ|3sV*1^gyq{?(6J#OR`K4=atA3VyR7At4aVhcBWP3nCZ_B zQo?Tc_`W4pHR{mVNc)*Kw?_>T@}h}#8tbM1zYmfKl~&b~uRB1fT92c^85?&q8bFfK zN|)0bE!Mcy49%ak1s2d0zrym5nBREfj*w>5PB~CD6QX`+@7GoMr zM%U^zU#Zh;8k`>t#$9=roPJdz<%AVEiPKAE60etX61V3$AJ0+26$iZ@OEhi}ubqly zuGrSvR%n%dFh|j8DlrakwZ!@8Zb{Z0@(DQBubCR_mJi?a-d~;A&N`i#pO$4DJSu+ zDJOBSDJSu-DJL;6DJQWnDJL;7DJQWoDJL;8p7Xn{V$#Q6^5hD}qmc2TnI8Zh5DV9p zncbt=b*k@@DLHJJWJ-iguGv9Zz&OKzmhT3T%`Q%FRC{uT=&tC%TXOUb98670GPqV( z62P$j0k5{C@6oGK-@`kiC%l9=Gd^LoK*saQDt-xSBBaMH+J&gR_799Ln05|*y5i6= z7)l(vvF29}W}HKx7Ke`2@-hxxd^W2Yt(WR_S~g&7P_1J$ znUqBlg7e$uhd89Nl1>jod$sgZt@2BM3DpJZ{JLKSF4KIsqXoti+nMGxF`g+Wv7RX> zF`p?Xv7ad?@qQ^MaepZ%@qZ~Naeyf&@qnIls0+gK%Dl~0+ZqYo<4SK5f0*7*9Ae5z zJYvd8Tw=;ed}7K;_%G!o4488A75FP*K`*m$86ITru+iup-Q5_AB_aR*Op@@96-uoC z>sf92k~wfas)KsF)hD<{hf@pI$lMd;$O=@sFYsNa^|3^j#uFR@T&r!lL= zmMn9}G*HL#HP=F=HK3=SfsU3o{Pdm|T(ZCwmqvoBDw1hvCj8T&7YX*rZV-)Tc7t*> zvm4~2ncbiv&FlubXl6HPMl-uXIGWiF>e0+@kdS6}gN`(_8^olU4S3ot0MpHE@b-%A z^($yg@0c!`{pDpna|o$><`7Ev%prtM=KjL(FCKZw+nksoKc5Up5S*4t;6W@G0Kp*} z00BF?!nIZY$>KDgHh?KxgQq4{BWe}x1fW%vhnU|2mRu<*h1GQ&sJ@3BDi<&rYu0B_ zt7o6nv!&jjI+HDji*?5^VC#E9UYhas0d(28K6 zzWZ9tpo-Y0s;G=Sn1LbU=i@p=`aE-p@OkDC+4IaHqUV`IB+oO4D3oUo(I?LwqE4PU zM4QNb({%py>i+6`TTNB`y^EINd1^ z5C+1#2>XP05Do}$Cp?PqR>GqR@j#2xxR5J(*z%&>OQ=Hwi-fBPA1|b-E6PU+Iq+CM zOeo*g4-n$$ue_gd9pSx%a?*DX;ReD3gt`hr*S;S@sO#Q!9k#A}mxt0@31OPcn+WF! zZy?mB>t4bq5iSxQLHIZ-nqvqbAY=!tJU}?5=Y$i42o6AxREGw#Hx+g|g6cIk$KsB+ z2*=u83ZU4s(|eZyoPGCGV@x(9p4Z}TEyWD}Lir`2Uj9cbYIz(UZCb}?rhnwJyHH+z z=PI1$)CD%-T89EgZ#Pv1p42F?IdID6_{@mH=Bj|MIIBMK$*nMu9DI3VD2HCTUx$0=h?`s^R#6D*5=#44jXz3d}YNoPZ}?3fSi1 z2~`2zky_PoA~%mvz~rYBs{*?4v?{O_H4X*L)NE^2K-ZC01#qCL0vs>Hi)K|o*P2!Z zp32<}6tJ@-Ppt~*dWNdN({M3K0ka@`T2)|eqrgdc)~0~@r$4DGAf0Db!;f;livnC9 zg*&3EfRsg5fs;82MuF8TaB@{Z3ZtsPDVzkMfVs;#r7EBUAXR}=Ia5o4HLBs%s=!R6 zz|*nqpuk!cczRVpc5hV;r?EvvfpscyT2;Vo2_uYt>ee;kXkKtzb<3PB{}sSJip)~> zjDqItiqb4&?0Khr_Zy};-^TL`6&+q5C{HXhL7zTwhqy*EUt8p@Y6EShs3_ePV=gh4xfb zEGn#IiBfDcEzKY+7yrF=N!iE+2YMoPC&~sgGseO=Qc9-hi3x)RSE;*>ozA5}72 zk@@M|XLY2ti-6rVl76z#RFTceg!MzMrorzgtj7e)OhqGztobOTYRbvncAI>@Y|czN z6wI{CYZo~QvWod?+r(+!m^2pib&Il>)&YpD-0N}6e~ZU4OU}w)v$*X8xC)QF!Sa5x znl?8^F5FHBBOAs(l~3(d|j6#Lre95k`{ZW6-SSy9A;xuu#q+ ze#aZJ&U}X+mxsoxxcJ!j=y@IO3OoCEU+038HjT!$<2WY96W7Ki-o@k>ALFdrTKUmf zS{DBq>KLO=(hHtmCbSJMpXsV(B+$I1sX@#JILa)QT|rU%w{j9qfn3u#To z69SB(EW9ujD_?(o6zfbk{oJr-zQe_Lju_FzvzyXxfe3ZX1F~t21+`){ioY(Y=dH7{ zs^n4%Y0s6TQzVu{`px-Wr)T!}=(BG7!@=59InTyX{P|sb1{&FlZNYgy7#d-LH51Jo zIyz0C`)GMy~QB_>0Y`rp93F?)d-BIbm5812f z<-KCVOPn9nFwQY!pgA^Q1p-7aPvJAh3Dy8iA%+8{`ApL`RcC~$D=UX&+o5$#fgw3} zWq~1?cV&Sg`FCZ3Az653fg!ngWq~1vXk~#R=4fSsAx3Fsfgz@8sKEQCi#b0kHV(R5 zX)T}DrgJglEND%`Fxitmu?~!(T?9cY9GD-5R{7R26x-DDP z2k(FPEfd@M+*|XrFEPvQ+^x{S7l!EB;D?d-N~A(vSI$XE#Mqe~6kEVtq{SI~PG4U_ zE;4dC$Bl-pv-&019aR`;BfCH*HH`;k#CF&yrPt#unP@08Et9P3^Ro9zHGyI~<+E3Q z{*d(fXY=`I^Lb7+R-fO*bs5swR-d1RkeGbTnCbJg`urPzIa(v+^F6Z&t6rxjF+tDZ z%vF_T8H2HByH`NhL@Mcj_EA?|lLT$vk@-zu_?eausM#K~%0u46T^i`kcP!s4Cb!Sc;_#7ROnm}6v zv~wqI)UiFaQFzzdC~~C5W(tl;q?Njjn0^X$ID2sBj5My(;y&zXWc&Y6_b%XeR@J@t zds%C*wfEYWl@K5jgm*1b5+N9^3SP`i+}M9MiQBpZkn zuML9At-1-&5KY>6M+FI9YLJWZdaxoyMVkWFRPCqM3*YZQ#(dwk*4|O8^?Xmiy_5aU zcfRvF=9puSG3J`KWs*8IFBnv1)fp7*Tpj1kD+-|N+we5RD>FwM%{uob?gwK zHg41uvt-hF8a!9m;T>N-d2p0lcuV2%VnKf&0q5+~+J z=JQK{4FC$2Zt6GZZtAyv zQ=b8vBVo^J7zyS`+w&95k-X<8m?MSHPmunq5lnt*f`xO$+V=4+qB{L~JgS%z^_jZ6 zlhOgtc|1=Rd3KIdEVc^-{A}m2sE|8w5w|00qVgtX^NeK)h)6%6oTS!F<{Y`!61i9V zITP7VdPW~ia=wzzb-vP&NHn79Hxkgx>2f^XcJDXW_BLOoCK4}{i`CJxwNzUexwATm zb>eYgswH!o+Yv;xPR9RXkwvYS(IK1hP}+$%>)N3Kn<5?5Gbs}hOntzY)G6Wmzr=#c zmJ_*J)AGwLj1YNPob&?QO{wnKkvJww2J66o?%2VTT5*_PpHzp0b9zw_GM8;!#%xuU zFIHg&UDE-zk~|*Hs%ojC@BjmKO85*7GO=MeWK&qD>VQ6wt4;IZrVQ3RPRFfTkAy|^ znqmlkjgVq5(qcLR6~?g?4MF3@rLPCvKT)_u31nl5Q#$hu&Biu`b`jc&nofw{E4wT) z1xT9M#PVheH0f>@hp*Ep5r2FjF_IjK#CxMYL!{-$(TF{?OTOG7{bcwq8O(rL18c^G zb$82juW_FV9ldgE5^R_)NV8D2N%b2xKl+ zJIWe&Pg-a>%fmajj-v8^SSr*!++4ksXvWr|ufo{UEe<;Xdu2+`GMS^Ez-01N;O=SSW{y0Yn>iA(h1_nw z|3ju+YMqXbsvZuDpX&Ow$MsHpQd=kDC*2ktwtl$G1-L~7IMykymMYfhh$r)Xi114- zjKY!dT0?%?sEwWsdS#qViO2&2wIj@c2<=e=LbFE=h{+x`AQ*epfGF%y1AL4}4R9_V zHNdNQ)Btxv)F<<7$OUPcJj}CdwJD$b(sG<5q_l6}XQX7dAmSkHh&yvO>AKIpRqKsJ zs=@UpI(`-n7ALolLxa!Co-l(x<&s(FSgjT-En3b-r! zjJyY)v7q6!0B4DB`Uw_IyoYZ-^pzX)X=aczl@_+CRwFGlIY%>Su+(z8>jkwN69ziU zdT72nho!>GMLelQB72V2Q!M}AT&NBk{Hju0D38$SQL`ij4FW*F0kGHvQ`<{-8ww|4 z9|pKeAL{`=(xV1AM~@od6+LQzJM^dle$b-^I5CeJ;JrL*fZOt@0se}pcV%|!5Z$#H z8_W@Ux@(LFO5OF5upe}`F+T1PT8hSM@T zChfQ>aB?$oU}coX65O_d7Ws62H;xpBr*>ZK|;QKR86ek%6f80EgLL+9IOUOXCs6+=#yQ*i-ba#vakP7JEeB zN=(F#G|PYatpM>lfc~vTKWg2-7X{xbmF>`EOs7%Rzx0Z1`)O9YTUmccvI$1r$AAG_cYeawPK^sx#a z(Z?uwMBm!r5q&FzNA#@=9?`cd5HU~I`n(xX(}BLF!ZY?Q6duvHOn5}!BHgTW3JqZQ^L>Ae zsB|_CR%>Av3cNy=0-p9rnV6=Nrmi%?LJOfNrl-gVZ5U&bq#26PzIB!+Y;|Vtsq#!p zB+&&31r7pGRDu?~h~AH$(lP~tqB9mvh1b4aTjSJivsz!V&Crynhs$O%ByGFsDHF1T z_tj|dSl-baGk z%UaLLQYgc`4%H6bArZ&O1>8ZdP_qK9Fqej`$^8l{2eOO_RdxpxG_o-u_(HtvUO~$^~zs znPIoZBken*Ar+l@CP#xQIde}c@r7nRH<6jE*}lrEhQ%+7C5dvkxxAhtR9hD8l9b4; zT>1^>p15ShXOi*teBCpF-_1go$GN$@Jz&D!T;3jw{jKoFQh%)Q$0=&|zbC)uC@nRA z?u~HRlvK5F|9-a_v(ub2o+hV_$Pfq|vR9yarIe!a_Iyxz zkS;@=*P>(6n=RhpZ?#}JT2;%1zgCNdzgA0yzg7!{zgEkHzgDY(zgBC3zg8=OzgFu2 zum1%i5_xnuCC2yy#((1!fA-eU^Hhr});zc4{vGNGMG7f5t_VZ1S%w4vA|yo#SNHyJ z^J9mO7YkGShTraC4xBi+IwiGajN`sY|=6oF#LBRHX4mq2+ zUN|IdfQ4o9oAM9w-&07FAiKg{UqHL28$3jWVqPY<<~If=!YrlwD^l4#ALY7f2$-7C zJ_iAzZe}v?@(^H%wBI`$DZjr&y6-QM>ibKi`Ti0qzQ4q2>o0NA`b(U${t_oFFQ@iT zD#?-(f`1K+pa*ffd&zOK`%9ea{t_p;zr<BY)(=NfL|QcC z#@3JyO5g#S3CtDBRyA%njlNay;=&}h*d8OcFxm%oBlgT%UDSWqL^hprs#L#Gbt+3$ z^cC2R=$PvV>AV@H^mm?ck!boxdgP-Ksgb`#TI4U068TG{L;ez}kiSH#;xCb=_)7|m zAtC+}=?O2lJ+rn9MlHSAuKN;yGgI%A$7kyD9g>G@Y&$y-SMWsF5@vW}Djt5sSp|&F z!$F={r-uVPF=G$=d1CJ#9^i>#eBf+F2Mc;TBOx<_J-lPIZ)YUr(N1S1u=2Mv5;9Ah zK!-PsW{9iF1>r3xvnPm6Ysey#y)V} zUH>YN-c|zm>B*+Y&qxq|ej7h2)~?t8hzoM07YH)N2sgcXta{}*5&Dey4YnocOy6tY z(BC*TRDDU5K0FL6g7Q1l({)3Ie0G@X$8#7b>)3{dZ_9#Y}oM+cV8cC+Huc^ z6-1Bbz?ql*U2h&!*_LkJ$Jgz~qk365yBK+R}VVk}B*wOCZU|BzR{KMz2N5(a{-E$=}?!aJ?{s;G1i!I%} zkGp@;?m@v?yl3|AM`Mfs?k!c&`Y|u}wtIS+YXXbqn3wGFYT)I)+y_g0a0h{}HggVJdRP|ZB0;F0 z*~FGi!APxk6K-N1bXeHuDg3u)*wr}H_AKiMeT zt-{cVkALo?CGJ0bm!F)4&^&r~NiKGL-GVl05J01bJ50f%u9BM z5vk=i4Ilnsc=JTHgl)!QAAmUdnOb@ZlkQtOm4 z+XAcv@R85o_tkO`|MBiJXbA=jqTBb~+nd%lTXrbNykrOZx)8e!J^f~^#VQ=k zL$~iV@_wR$%DVlXhpto(b=xw}%W?UAMingGypJGO4|lA~k3aOLdtwWI@c4b7h(#L; z&&z$SlSoT9@8hla&MkV!S6^E~(}IIpIIeM5AG-7!GnkBco7gBLa6r!DthG2S(xqnN zonfB7$%>_YbJqf!E3k_3)cFPE4%o8GYMQS9Q^IP>d|nV9N!nk|r@O{S#*)5IN!o4n zl1#HOnVLdb7E35OMsY}6vag*=k_l$Vi05P65`P9g!C(oHnfJaVNoG#I`lFqbjOtXc z&**>cEJx0HhAuQ5Do%P{4*dyx)9?`r^m`4LQ%I8hA;>vWEXSrf@dS61V5B_@m>Pv0 zXR~bg5!)cPXrj&_3%6Q)rsao^YvHS(vD16zX9ZU*H2X^=ui5R11_=r94T^UcD!)R~ zQgJaY2+%FYU|YK_T_r9Ay{h5U>6`oSzRBDGU=O?Zt=Grkj(_;tRRnDg-+fCNv}}V| z0B7^B_xft5bn`yG4&*Z);w#@OOR=)&C){l<+o5#xKK>oEqc=T#5xyG(Su=GFKX|-q zw{>AKJ5>8~bE&N5n3wDWMlDXVDJ?1spmu!v10{5JsKUWKP?(?h&6HXzG8&evVl;;O z8I68wN%ltuviC6>PEtPp;djSA9{juetRb-m8?~~AzZ>tb;qK4&_)hx%NFUEdg>zY% z&v~(Q)oPg6zq|WZ9*6rUzNCg2W+?N#9QVZ~Qt9S>gbVJCqxEse-LJhT_VKaLeCwmJ z=3r3G3@A&jxWzkm4U>0cj?moKjjrr$qeWC1}GSABaa1EQ4 zZr(@cTd#9QHg|mY?s8*f$EWXjERypbUwds8eC+OWnK1!ouuO*UO?`~1G5R}{V_vfF z42*K(bNs`q#Rf_h&dc*x&fS0iA=1tJ_>KNWBd&?enyNRSwV)NQjt%A)Vt>Y`z0%G5 z2%FIZlmY$+kL)Uowps?WFjOD6x#=9a=Xm_X%Apom=6N}^G_$Y^6hBbfc?ne5F6*WZ z=|A4_lQ=#sqh({h|BwZ(pBl@-LKvT2pKd#_NjLA~0|P+xbY|WlKE`U9m*u*C8dT+& zm+bLAaP%0$Pv3Z1oJt4pe{C7up^gm}!1y4&No2CgVw{oXn3wFff$8rg@w0bVMXSQW zJPg%a`r78R>RWGpLpiIId0vjMMv|d)^FCfuaYj%tCYZdNCaXKg()e7|(0@&zBz~lG zB9a7)#FQV{wo%pnkk zM%ufx(m&3Sr7wo5ceU)sj|+`6u}lmv3YbYP&5C7gr<}N*Yp`^&18^#?u$L{9uYdoo z2M+GN>ekn7UdR16I#h+V|B5i<_qNjl4(;KjGagd2kon@Z5NEs41MBPJlXGtGRj80B zI14S+t+5tbadN)GL#Ldap8~{JPQweWobE4m&B-~2An~lhMIPE{x@6o?+r}J2EC>$i ziXK)cAFyI%*TvlvWpKja|NfX@E=_fV+qF-eti7T*mYcNMp>n{pTj2yk%Hr?RUGr zVGKcyi?+^i)QG-=aK(w+J0pffx2C7tq}d>CEN(*tvx!g-k5R!A<1U>T2voX0iyAfX zBT+N##U|#t7ben~aC$u+E@AVtXq?`ixBz*ZX)rw%a!&a)qB0oGuxeBuQw9^3B69?F zEEh93rWWMMQT5(TDke%*&G?Z?y`I+R{^T{3Wy5qjUBzRjc?PC8+Parz4<{CeWYCO4 zL9LfMLB>R8wFu3?vPU9<=Bn;rLI0ETuB^{bXeQ0)Dhqm_YhP^NH&WZ@pRgnGGFa5z z$^3>UH{vb{d+usXEl)6C$Dk-+7`J39)c*`qq@nZJ^+%G)FC>13vM-$8&?}xkx6Z1q zq-8mYsy12KjSIu6>uFP8aunPwaN~-evJ@ER1jc*b9TUd9DRD{sd!N_J+$=*_2<@h~sg@Vl^DEM%=Kk zRV<#{h^4qZ!~;9Jvah7(JT9$vbi-?yL z%T)fm*wQ*;Zuw8gQHv$P*GxOyL;3R3!sfHECuJ~4*mm!vUL+!|Upzy!8=onaIopvm zCek62!Y16j-P+W4Yq?5X8@Rq-w$Me!g*}n+Fee&^6}UsG6=R_=f$=b#(nhN!Fpl+= z0Sfplua; z&^8J^XxoGyv`s<}+7_V)ZG+H*wms-U+Z^Rt+j<_fO+63VmYxS~L(hY@ zo##Q@%=6$_uS27~Aj4kv*f#Mzt!*cH&^D7iXj@4hw2dSW+BT90Z4=3ZwuR(D+d%SQ z+N&*zL5xtl3WBfZ)S`Xj{9`Q^WdkypDsD~pXRK^_MA^Np%ATheRoV3PqHN#>i;ug! z{l!=IJ-v*TjZZJCGS}!uRVEuT>hd9Otu&v^huT1QIyTC=Ugi#j=66B)e%s?3C*b&U zG?O~svh4eg6t3<4OKM%6VHCw?ZtIL28XP}Kiv9Em=lAizld4QS?~p(~1jMj{IBtIA zIc@5&U`?jD&}S(dav$_Za|mRptk>*xM#Dj4BDj$VQc?`b8xaSjE9N3zi-iw_7-G|w zMQj9}+qybs`FlyzL1 zCp*XO8MBsEZ=&UEz8S2NS-RSd(ft+dTn9}&!p&7+&hV=BV+q@1nWgyjys*I$1QI(-oFRC(@>P1xsQ@yBYO(6i3 zB&af+>O~nj9;7!$mItGZJP$@ymPoy_Dr=-(RArIWi>j=WdQp{SQZK5qPU=NP+kpNK zMGJxcC?oTIO}*u?>~OzJMECOU@Aoa^cZoE@1NcY5+lb^iA%yu$nc#^}K+bIFj*$gC zIA*bs2Z#Pd$JmqCy?c-|dabh}Iv@Waf}lBOfhCZ?rU9Wi*JMN$&Xj3lB(Or^*se^mrYNg;x#^*xG|>Kp z^3(OFd-h_LygO_bPgTPj1LhFAAo+}whbzLpSNX|9@vc@jw2rn(%7+H78Dp6U`>^wa z0BSPXB!lp|SehgfWs%$#BdRQxbBY;)r`vOXLflN@ku#gm*swv-`>`|R&#Da@RIK)K z9~b?kP8&TsiqWV5*6bcBb%CH0GM%4HRpp7H2Bc4PwL1M@+8xmu8$vJD{ZF*%Y+ePE z`~nzky08<76Mt{IQ&O-T?eMl%)S7#8*Y*-7#Uk}o2qMgSsbnb<7!yy9E9j=caJ6mo z6JWjO{fj{E~_D+qKkY7BLYepINjdaQvK6fa)YWe&|cLy7GWQUEv~ zHn)F{t1o97@{UXo^hqir!-pd{c1LRrABGF?vni(>?Qj`mXNT{O-0mf>V#Ok1qKjk* zDa@SF@nD-XHkp`xn{5HpSC&hzuge`;EGgW?k^DYQ!r6$Tp(6#4Fr(PbVEEt zqAQ|xH(^&%Te&nI3S&2jLd-SKvv7r_BT-~3!H3mEzj02qO17C1Qf`=Jj_XbZ5vfGe z8{14q0xgUG2!9?Fuc?XKVO*KXP&71u%d#J&I^AT!pAy8u6!@S`T%0(f|H4(IMR1NG z;TQkJuOTt5##CFX$xVWP;*88msGxi09fORzA%lr?D2V zckUzAwMA&lI!P{QEmc(4EWdN}v8f?}F)gnx8Wt6x#8>J{N0v^{Ko{L35G!XHQ%sAF zGqWUihkFgAx-=4&S4<1(Z8-zt0xd;q-}((#`_XFC7;q-lI!5xvQt9=Q?I4*BRAacI zNex}#dlvSNOz9nOhN_g>&j5y-ZRjXNCbf*Se~k5gnu6p-RrRS=D6;r+gXzw6F~fJ3 zM&4HJop{OihfgvP)0P~;ntGrdc*E?78->9$8_&Lh$45H3!Z#m$>-E}J4kZZW$^IL>*XLQ)Bqbhqg!*kWv@HqbB&%x6=sb z6cqimDC}|iT38*_W(bzIzgm~CB0e0g?Fa@e>Cn?oBDjMOHBoonY{hW(UO1gLRU~JP zL7`L<8RUVKwSeNREGW2gk`KA8(7|S^%cqOsY34&@;MExM@EWN&7~9|KXW-raAvkJ- zA+-1+U*shPWfgNiCjTL0XHJ9!qVg`6atst#o`6%Fyp1c)SY$Pa#xtZ9!zzIEM^$Q) z<*iChV!=WQ+ZJ>+i3MFvV!0p`P+kZ3_dCqqZw|BT;_`H6R|cPl z@!Z365zpIr;#wid(DQJfxAHuK=Pb`7dCIU86Y(&^lN%Jwuv4D*WY~!Zh9KwHS~T|Y z#92d-vukO9_wdxZDreU$Gh!=^yKFN7>fw72-Ek8JU$d;y67z1&gbq3mGMjbN@darz z_>+SBsN0;R;$K)qpdBuM+bHU`H-Z*`{Z)XU3iJ(68$w3I6y0~n)ip!hXjiwRIda$V zM8ZXow`QvEHZxdO?f#qdEHX`>$;9|P4z9|(Z9a>*Cc;YaR)TVVsp-q@gqi4}6}I?v z@DQ}KOZHf4?Go8xuZB4#X5==|cnkzJg|u0&sVDEDCpx2JD$+5dEsFj$(RR8!6W2g% zYxo1lF&RzMR)!jcub@-HgQRme$}~RK&-5k37A+Gz-7Zg~(0!7}GWQ70pv#O)Q{>%A zv)Cyup`$x=u9K41G!J&5qzfMpp%dv=mzbA%d9nDYNVf^`6HMFK%1)uE+n_ka*`iHZ z8p$;L#a1)M9t|tB=922_T%<>9?5OZniw2lsW5U<1c~@utsgqMZ#;!30KzYp)@oUHO ziRESiY&a~ZEaG)a=wom9BkX-vgq>sY(IK)@rccRkV_hipa{8dpIzJ(A?pCJGS7omW zo2Inlj};3!M95xM_ozNf%6KnS_w-v9;9EEg{9r|R;^OJ(cb7emo_(q}W}&%3DUNFI zU8beN8d$}Bw{Ba8a+HD%Rr594<{-dd^!giKkR-GSE(E}8-@}qEbd@wpAu`bpoRruH zc{xe3!8%H&I{=$a1{N|PhMBiAg2CuKDy5PRqa9NmOBPvPj-dgDBPxgLW$d)&j>(8w zHmE||9|ChZP=}J%Im*q*vB9_)K5m6)q>0u&AJReSiwCoh4Y4%>I`WXK*+*@2lIBG= z&_cF3X(8L3v=F>B3O=Q?%}EQ{=A?yebJ9YmXmipyOUcLmrP}7CwH$(Sk@q2PPSPdy z@g4MW#QW&&Eu30tu`w7hC1oC`jWiH;T$61}s^v)Q3z$h9&^9F?^9z*GbfYzqPh z*rtnZzjxpRH<|H57Jl&eZ^AT{Ws%QZdQJi5Bs)e?SIhcYv3l7mcG(-HvfJ#3K#*%; zzv&f2V?AUUfpJ-O+R6ED4Ktd=-F7w}{Q=ZAY5&bq2fVg!!|V1zW5|%V|CZ=@#fqwm zUc`V)Y--iMkwdmmv4?8k!fJ_=pU-Co(>B44Fjgv!ns z2wR6}HEXA)LKpDTQs_C$Nx>;N0IQjzyI6#Ly$)IO4#&;4JkYli^5rC|AYaas^R@Wu zNJv~npDblh6ut40w>W(1G2cmKL|81FO0MxgbBWmG^G!t&2|Goylu69%j<7A8P(LrV zaH(roHV*ZUNaXGwGnv@Ej&hU?I^x;5;1;8N=ceKqKSXRd z&U=M|ZD$1bz;`;ui?h>dgP~Crg-s=t5qh?TM29#TwKV%AJ>b-?f_n)*n`pInX1{5J za4p4NcKd2gh;or0WyX<)YXHsvzX~tguHpfX^@CGITE&kLTPAzfnJm1E*`+;I))pc@ zbj_&Bz9QrFsqqjLYe?m)Ce&&d+6wl@;q$_tf7--Fw#eFA(q`nmF??f!CH_F;Pni!= zopHX*lk009zVJWJ1Jpm>$nK;Pk$#4si(Va$eGP+%zohi6CED|r+j~IO`#8dzebf@F zVs9VydMLD)N{%`$m7T%;X=D8cmM`>n;p*8hCE?MJPSBN!Rrn){J->^dA1=#Zutw`} z+oo$78n$>?HjcY!A(e=>H{J0!WCi!!RRT0aFHWk5a(1% z0WBo3yi2o<)OXeW$r|deB;5g(9|CjOO9ORp3W!EAk85gWYHE)rfbkN3jG10LVPp#D%2AV$dSW1lqVh^{Rzu%w{YC%E}UV*^<(>ZZ^?A$ce9<{ zV>VAVH@||_jGXYruo;v2<(rCPGwXLne}_0UD2W>znq$TAE)p?EBh4E89r`2_8chp) zkE@wneT@%@zLr7*`&(MGmNH{eLYMRK*J~?ze|1|A^R{vcP=8yck+rtc(D#?iK_+Sn zEE(h>d}^u_yG48=^_3_hid@B5^%)MkdmxGjVOX*M(M<|`phP*%3^0u>^guaX=sGh! zlC?|jC;5{J=4 zCcJqtA(teP`&L_04w-)EV0v(Y4Ua>n+&!3*YnLeb{lB2(3fZ&{3ExC#r3yu?$C(GK zPMr+ukFA+L?stOLng#8j`>d-KnW2U`ZusaOB(YI zQmx}lHrrHA(!P`(+gM@mEpG0iAaE-PlmFcc!h*JW?z#fEg0NV(g0P@lL0HhOAS~!s z5EgVR2n)Iu#PZh7EiTxt>2hQF^gh(ZBu)G{H6?14{=A#JI(=3^!dN*NN@V=(9@li&PZw_`Za>-?CCx}_Lt2b(VGE8_YJ>r06}kpW72EXa{;yw_p*rN8 z4__bMfA=L^Tbb9(S3dIEIx5r^CC%KNCMKvEAtWLuwX>G&>W)k{F$ZN1X|XAPkwUmp zQa3UP!?F^?q@S%YEbCzy!H8j+(^(I@Vj2OwE@C!_U0DyivL1HDD#)W81K5TCxe~i# z-k7SwF5!Z*RS1^#5G;1XM_*}5%`~Xr3{!^Io!^a6-hI{D3nvZp+q07kRD1-BRCYLmXF{2g6jNv>j+8h^S;LFQ# za0)^^OaISYg3u&~YO%{gA8L`P8_{PapB#5U&qr7ur2)4%Ay6+)MQYyE&s<{oL_$Vb zEw(wpmxqOh4<}Y79qj+qYYR=QK8PbMv9B1BKOaLt$?fzU!EH4KKI=>~F=Q`=jkIq5 zG8pfCX9pq<*^`XDQ_>yDxl&|1q@MP~+uUt2PnzL7`*gRvzm38qzV#zD$x1Nwldy9m zMe7`Adf?6%ha0br?gm9{rDc{w?X<<3V8#ASSq9N0l)j6OP0RZa(!0G{j>H)3g)*S%q0l?`2faw81=>Y)g0l?@1fan20=mDu>tU$o$0f0wf z%s^M9=)j-xLA?RLzBho__ZIE?V#;XJr?)fbSqm9E!WoP3;QPnhe~X@=X9aXo`1C)I zcpRzv&4a*vHNmzfss=@yz*uQC2aIpV#8fGbkE!0G{a;KOP5dmH8^=31wdb3GYz1h5~ z-fU`BZ#KKCH=AJ9o6WK6&8AuPmJSTQO*a45ib&I5@xd11j!i=k8^XkR-+1zP-+A(| zZ#{X~_ntiL+^L71J@v5jryh0&)x*xAde~W14?B|CmcolW(yQ$PgJ0bM2Q$i0rDfF<@LJvDJ^srMy4?8*Zu+u{iJ3;iYjZ=iV zjgrDRpMfS8n%K|mcO+#m<+Ofg>&HV`-CX(gi-$O0VHGmn@NGya+DfTOF1w9oNqV2X zO-aC*;b@z-7WTN|B^xcI%%Uio@r6~crtQ_eoXGrt?*E2e3mGF}yRv)HOW2AoZAUS* zCd%m2ys)w8nGt{5uSJg_PMU>NZD6655Ol8u_F8+3m;kJsq_%e64$cmxwCk>$Z0uqo zbIuZU6nXpYSr=Uu_c$rJ?R6B5RTv&ApXZ=bv$=&^ncS>9$<<%fSgIV`o8uR1=S{Hxt`ifxdz%xxdhrvxdPftxd7Trx&GNpx%}Bn zx%$~lx%fS^wTU|>eWs(61uryyY}xY{JQV^G4VomTtq6PGpTdLPk_kTGOJ)d?qo8O{ zX4-KpBXo7ORFjsu1MX%*3J8{vqOTMIpj>*bVdcteFXh5(FXg&xFXggpFXgIhFXf_Z zFXftRFXfVJFXf8+%+|G;JIj-2tV5|N+{!eY+-&_5sM-S)I}^BU3(d5J%%nt+Sqg56 zG-ft`H4S@FIx4p{YtPhyjLpYnOvlO)8DPj0x0K_FS7USYZ{q?P0*H(W@c$5pmt^Ny zGw>%<;ntR0cdEkDj~e==Xy&P{dl4Q@W+l!`YfmVUNV%JN%4`5CDpW-Zkyc8BQ}QAP zw2~FEmy#2)my!{&my!>$my!*!my!#ymy!vw7tO72$>HZQ01l+6pau4ePHjHhf~p3ZZYrxwjCcrqiy4E^QFlSRtzzNSq#6+vvdtrXJYf=uvRJ2Sbj&S9FopeLQS^ zNCr}Om}MC&$70(L#9SrmuA5Ayh9umaY{pP~vKB){_w31BVIE8tHpx(f);c=BuuhGj z2hw8KCUZ4nmG;ZN_)+j*y9uht48y|T+#Wrha3G-!GN!^x39;Y)B-2DWRCc(*_n@1s z0kPS)WJL?)jRsW`Evz?0D?@MccGlX`G#>WzeVpEM+36TFH(Lon)-pGxpf%lHXH@Iz z+}yxP#L#oDcD5y^<5KW{dHl`)YOKy+Hcs7k&ZZmDYV&Nf0**=C+6UYj625`X@icMxLKoGQ*K)_!E0e_HvMD?K!`<)m=aZqNnFqm75|Qvxn11QeNX z*arJkbT&~j?=NEr-erU`4pq1J4XQJ@Bls z+XKH7-tU2Dhub{xoN&7bo*VXf;NWj3s>a~~{u?1Y@l z<9mbsM}@+BK+uQ7t2TgO=iJe^eRo;ONB-!EQZ8*v3II*fZ~2mZVbJMKE=-6k6l>T1K6a|4H{;FDglr zSJhTp_>b?qFBIqARQ2fKOI~F?A_+f#B&i{`culdiI9DxRqZVI#N2^#$i%}^S=e!61 z1e!)=RjU1b=O);WjZIpX&tQdj{$Q$$=BK)XR2OmNy2^-%14+OGzHZ-hZe4c!OB1Q+ z`_gsO6PT4%5C7X38}&5qc|-y?=2^7$%RRo<-NG z^A={4V&%3kUnaWBn!}C1mrZ6?-@H0rqB{BzRBN9muM7#bbWLWLX|o|=z)Cpjf-@SP zbj~PX^&ya#!u*KhM;@r=tWfO#H6LpglT^|w&M;XsVYR4=Vh7~7srFV|#@G{4rRs(n zATt_Rx%OVDw~R^o$nH?M?Lnw8Tiu}0%0iRLjGDP@0~j5BUYLClm+A-%wCcuGcUz97 zg1VfT@s-TJQI4XFajTgDi&X3-g2Rr9{45A;E2)KAsd2er-rb- zg*kzhqhCQO)Xv%G&*Z)($sEghChkHr` zMFbYc2e-Sn!6G6L9^m@H?M2OdzU)P#Icjrye7N+93!SyxbT)kN<6pZh^P#0Me~qBT zCz9$=Dyz7c%3fnCJP^f}2y3i0HGqI)y07_uX>7K3a{8O>n>?0k{wFasGi_J}%d%yL zQK$5=vcFKnA#INK10Z1+Rp|JgUpDlM{{J)d=JuKqjpz`*aNRAJW`c;&^b0#bbzRPQ zFj+VI3x>H^D_VRDO-i}uomp^F^W=mRYI-#N(e}sU;&`1JYyZqp@k|{@`!N*fcnBzf zmUWPD6|c=-(wZ>(;_mX5y!)`ZP|YlRkeT?_*)bP$FG@ioBukETe1j{frQE3 zSGXvk&fHke?Otw`Qwe$D&d5W5Mqeqzxd=dd#_c?olAz76EHKOZ>Mx+JY7$F8BrlfV z?%4swdPGsDBqp1EysFV6_|+%P9hcIvmV9cd_pgmpyVr>bmN(7&5XsT&=6#41=#qIK zcw4xcgFffqsN^9Bn`gvqm#(Ve70rGADS+{y0c8`{ndn z!?wRR%^BgcGZjNE-mr?Dgz-cGvx@f5tq5Brn?9HcR2d8=dn6QErnk?`&txB%b$tX_ zC|ouKexn1m7-i)%vskfa)_yl_u#RCZJ3Zb?hRUB52C^@|@hhOwSibtPF+n2r-+36Bc! zJH>Jfi3L2#Lag@1Gc3gNRjjZO#%#qiEz}_NEDJRW{f>oTJc?&qNFL^%VH^{C1~1AZZ9`$g`4qhs?nw{0LnrtdapI zkHBGg!k0O=!hnT8etx3S%1H%KWL967CAJ~VaH!K$c#7U+njSw&IF}ElCF12}fXG1< z#0r-qiQ#=ZIJ1TtFs&_N$+VnxXomQwD8j3C27U*S|d?FB4!p_-h?1s}oW)lENe>NTFKmO(Z5bHy#dQkLd;Gq_2e?v-Q>R zRp}ZjV#@)f{Ib1Fy-at!A_70ad@FI@@UhTvO6`*nF_A>FoF9iU zGZ&mxCEld!Kq>s%ZO@jHai24JeLca|AY*$4Q>@C2)J1jm@N_M>*@@7XClcE?&%@K5 zAzfZ_!DXpvGh<)nx-dLldjER(J?=!wrJ&e|>Y~V&i)bxRbQ6=FI)2tUbV&jPNl}DK)&2T#t3*CYa14(5d;n?2)iFY>5 zarroL7V%QZKXhlSSjqG^pCPxg4g%y?GE-aa`%#uqs5QNqm_}gF&(!wc+_q`=UM1Z~ zNkN1JB1xkLpxhgKtlR91Sp0btZLSK)WnxZqtCJbMkMJm(N||aKEs0-UH-TKimy+JS zw0N4Wfy({TRw%+-_OyzpMIpwgdy8=%3440HE!vfCegYc$b58qTi~eTy*Z=31Q~#*8 zvB;zD?ck}X39E3uIHy%oqIU-;K|k#2;kpyc@*ibv8MGw19N@YkPs72B8V49!%ZQVk z2JHRfLCb2wovrV<@H#o4!Fte){W;IZK{49L#XMy?Dem%~tH39RZ+w=sB8)tDz2Vl> zbnm^ii~U2D8(VeromFrc#*Pl@Y-VrLEX)7Xz~?=QfA^_*INJ~qf{e)vDji;o>6psl znu>OrVOgsvVCTuc?;U54TXhX}sCH8jvES z^Ujifz3|fPfKbF+2WzNN2cNZPg+_oa0p1{_K)W|WQry1S&PA2&U6x-#%(JPs7qdH^ zQ#oI~`aTk~EawdQ*;+;4kLIT)mtf3BHR7lOzce)-3u#NBQQ-sN;Zf#s5k+jAv(H;q zECNK~52r%=42~o%&1Q6s=$Y%K9z?q<4Ieup$p93@)96>tnMgA6Gq5ssaWgeU5gE)f zBal5ZM8J?sV~1E=q)Vh;u4Ca!$hF6j;v!V?&NP#rW#zQMm-H~Ai;Jf{DH{))H%^Y9 z%f{}es``Kg+)9%q%aSBbGX`cd?W~(b_t2Wm2&i0(Nn7>!1X?{9-^zVu=VAdof^RDR zys*azp>G#HJbP!cZquf|92Y5e#m?gFO`9g4NbQiEjXm81c(t%A)!B3oO4>Q6zKm<= zfb`ygZNv`Ujc6yn7`)*p)N8UuKO?&2n24 z6mSqSE17#AXOPe4N*tE2@Ah56*n{S>d@na_N+JH_aQ_}ILOW1i`cO4iI>`N*ZD>KS z(i|LS2eBAq53xxvGPY~!MK{*7_iyZAi*T-6*gZNTdS9U(T|4UvZej~k^Ep@*lyuIf z>?}7lD%=EQNEK*Duzb~$*v(~s1iv9ukXpHym`fk6zJh5+c7!=3G2P|<%*==)bkBtyNy-)#SOPU#x4r%Cg_O{yD9k8uJOPKMBlm6SMWcT^hJ8PD9TmLj zASzkPudyXmZI`@Cvyq8MphLH%kmW}M(rVdN|}to%g+_pwr)G3r;cd~|2)*bVZ_NN8u0TS-m05>VYH+kQ9np5d!tL z);42kNrh-r2Uc#Y1f%_@&fZY9Z2ze@USGW=$^X6NUAuhq^wAYttX!26G4nSqg&wJt zh|0fdDU$RlrNsT;v>2%gD5jh&ziBZHh>9s^*Kb-31FB-m>G+!#Bkcyolr#7@Ek+2% z%)q$9+`?Fyw??XP#V3Ak6#B+6CxiLDEXW~K@Z3(X(2~MG5_)i1wUqCIMu|9v?C)q(Ra*XiVQA0=yWx%B9Lx$wF~>*)*ah`~=ma;-ey3O4GD!_oh@_e}9si zl9+%MH};eyCrPa;1tyGbW|hLDEQJD*bT_~H43gG8sglLhcP(ub>MPs=6U$hug5AHa zq*j*P;Xu<0ygU}o4MlB3k#1Ph8PiTX)vOtt;4!+IjAcVv`#YKT@B8}V9(tY%JB>~W z=23Fk?RT|`rvh>~z8)Y}QXh2Gv>dpXw=D;Hjg%}q1OMcEnru4`CSb&lGg~7o{p*x| zoJuEJHy2#P$vctnN-3~F1B@_0RE0B8lq{~M2Ul);m$>2nk5>$Slp3|f1ZMx>N9j(v z2%_KtGcS!P5(fu>&Jwh$fFHgbZJWR}EP5XK^?VVFoA1g3pMkF|$$)F9k4H;}QbuK;L{g|yr{UW9U+n@D|N6J~71N6--pc?IJQ|lHML2@g#q3p z84k;NJ_vy-4H?_{%FKT8sk7od^g`NkY>M3~-x1!;^H=$f{mkP2@5nN3mp#n9WuY!; zS;)G@e0=98042pm1qCL$M5w$NvCxb>(Cz@CY-Kq37>N@ZwlepWjHAgW!Y~bvJ1^{e z%*=0K8QuJbPGuTV`$*m?%Y1sY+D5A+xW`sYNMBkkEU2-%4#(=1Z!Nqjw;xRT8WZCL zvHjPn3^vwkHLvqUot6T0p|-)nfD61V8h(+7qW>sRlv@`Zl3wRnVBixuS0W?o5f!Iy zOE02QJsyuAVfS~u`vUI#-f#WRFX=s52YYW-7zAu>X3%9Wb_L*n0jQ!T0=Tv#Ln-pf zLRVf$6?-t_K4+c>j86wy7zixvJ8O|u+o66zp&btiHZL#j1!rb9yYL-9%bpP_1M4n~ z|B`jZ%Zs&~CFadY+>iQb&`&i=R;2uton5{N5wSjoE3Vw@R^fJW}V$d?~aBT4 zh8fVo2L8qqKtuz5mK~p*DTw4J!{nJH9{edILOl3mc{-ymgFk-qC+GZ-DlSH$ z0NCEdV*)Reoo2zLjCSe9iHVbwm3;BCR=An70$KYBPC1ko{hBh-o2tz{BRr%+OV05l z*1Lg}wk>stW6E4=pzi;=$CT}O3>_=r0{wVpQoV4bzN?q^vswf@yt5B^9nRzVIPHobQLEAM^pPT`wLlb@LB?{oCeDX2{*bATh3kA3YWb!W+ zzyx*joeE%cGI^&08Kz<(?ZEC7^~;R-APyn@XoqeW)if{Pg4&HiHvEv6E4B~8z1rjx z3F&P}n#ztR|4Bd`8t3i0T+>BTRyU!?OgGfeVIz{-)Xr{gV`s=kFn#3HM*K*pJK4Mz zl%iT|vUx7c!qDVJ8)44s|5-G_b)rQ+rGqD-+1@7N-iXcGdG1&)IuIVA3<9(U9W$Oz zv~~?~nxjkaVubGSARVJhS)5#9V|tqebWQ^ni8`6={LkzYKMRxxC;XhVjk6zfwxFMK zwxAz!wxFHdb5yc(dmgl7a~|{q&X(5CH(St;H$SWOu`C_gEbQSRtj%G=q|OLyg7(;k zn9f7G!>zF%+XPJOMl?i3v68h1U6U~( zdnQEIJ@WkZVb&tGjNoR*Qr^9B%KeNAJRQVd?x`ng_$&hZ2n?OIo;%w*rmk(0gaIAa z@-u|+jY}a4F~etw3~025Kef_h7oy!1R}z3e9F{E-C_Y0#=ctIC(lzUsa3(1vXBMEz z%hq?3^%~OfB=$16U6^T$xSh&D23DUT(P;VUaD%EJ4!58kHS`hiqu~}i)|=O(y&(8p zl7o?6aJUz2_JV#U+zRs};TE)(d2Jw6SyqsRuw(4}hW`06{$fcs&4cJpgDu z0AM`;SUmtxJpf2O06;weI6VL`Jpd>@03ba87(D#+!;%7$a5UR5$T+Ok z&|eykBPJ#SEn(Zw{6!ACA9(>o{>=O-jG_>SDoE%7P|yP)Ac23%vk|{j>yYPcrIFIU zl6sJ1C}4pe@M{t>>lK5X_dtECftrOYS9jUD17PiY;iTw=Vmn!wfK+4<7rPbKdnJ%@ zWfKyVyv$9AT9s8;zgYA*NUCAg2ymh!q_XbjaiJfaM|9*3LkPUji;JgtpyD zK-|6$sR~ zfV7%V;)XJ=A?YwSRG{i~oJO`X^p*)kPAb$bpjr^7*OQipDN2Jf9VTcfz@F}A)6DH5 zuJxh6qy%;WC!e(qAw&No>MLv&go(Epb0I*V))$#4B3I03-)T|%!=Nao+ptV&R4Ini zAY-6yH$mA;c?daHYf58jo5+j|ZN%tMc;0J)U1UH4Q-jA=A+`hOUaJs9sg==6z~|OG z8<09{lz~DTbL%6Zqx2bE6ANzQ(YUSC0kQ=rrL>o^lFw1`Q9?Zd%z3vmAroXGrcf6t zmg`n3V3`2GOt4lCfX%_8g2U}MSXG6rlEUuzVjW6RN3nH@ z>B!NfsRdSqHLPl;p%XZranl?9%0U3B5ancToauqgCV1UUk@m+1 ztEgW9fzfKfgo@r@RUwRgW|f8nk-T-Um9w&fldl|^tI?dS?3gw@gaimp07NVr!upS0yw1_0Lg8>yRw1EW;kvN9PgzX4JZ25 zhE%jw6%8k0mS_9C);sf@3O3a@7RepmT;PUk&CKjc&M5N97stfP2aZQeMRrI`8{uY)v8Y`-5*@lz52K_KCj?auh7r82+s1a7`kzGw)Ooy z9l|~?TUn&H!+#2(jrFXP_&NG%<19#Uayx_|Mni{VH0gEnX6C1U^Ktv~nsGAV{;?O* z(Rw)MLJ0Z>>C_lDl}`?q!u8{v^h(mK^^&hnoUxKTxrO!+g1fR(V_oKt{HNx;wKkTL z{O&vT=hULHM2R7+-WXk$Km*hDtjw`}M%ukjO5~a&YNbwY`Btr`lD%P}I|&W7Uh>F2 zN2n!r3#lb2b;{gx^C$dxegZR|KlX(Dggn1!XxSJjBY--9bNc)YuzhY%v~Iw&dvc{3 zI%9q9;+LqRdck~t>l*-WtCM((9EN!=5EjWBX+Q*Jk-X%jJ3jh5Z@G#nu`2#%EqV*Q zrL!-of<@9g!f4xE_6LgcNG(tCn3mae&NSyr)bQzLH^yb#eRj=koT9&R zN+gD&H{K*g!)c3`pLXs~IzI+c)y*V1|CCuN9W2|-6S-C$&Ciwi>zSGPp1rdo0F7ju z){*k}wBaBAZ0zeV$|&cG_olDe|J^f$pB`zYuS(l;$RZ|K`fxA*mbaKpEr&eYv@+F8qAfAsOs z&-W1Y79Tuy_9j|WBs9E=Dw1nUq5}o!ChvqWS-1V~zrVS$u+x5{<}yFh@ZN9V{se=x zu^IvcL2cV?>_oD1+i8tIT=Y9n`|B%jpS`i0Tu0M02=$VB%<+$>7I`miQLB=_kd*ly zlML9*`Ip_<)mYs~;mPbxz2rCE*efOJkM6Ij)w-|#@5i!O(QqIBSwH6E*(EbG-xP{f zAYnvH1O-eHhe5m)osn`ZgbL+(~nK!>s{2 zN@wgRdf@mi)7fPyV8f3&=4d&AZo{zQWjvb5fqMp{6B zGx*-EX}_*Am9CPe6Kz+pSW9aHqH4Cc6aDR_nkVg_svgAV_VsndO1#m*b;Gz@f2MbC z1n{=SO~YvLc2;b7LM($+37Wrp>jptSV`#Wz*8#?nB3O?+TdCL+ld~9TA~=|;G>Z^c zd9?i=UTTKpm&H}iP-;bHgxhbZ9p$UD7t~h>8(sZ{*s7@J_ZK3SR9VWev8;1{%Ka(o zao{dNK}cZdF3iJ)>FkIB6T6x1iCDCn16s-@g4j0j5Flk!W{cgrrI9W``NkkEWRPb2 z70R=wP+r)=>A_5sE3vTw&J(kf`{iw*;>NF9Kd2 z{?be&Tz(2n5xg7d>S^IVpT?%(s}Mu6bz>~N9PIEJN}|u|4pU^>X|NBJQ#4RTuH>dH z>ZBypT&8+96E_Quz*B^1k9SGpw5rg(IP1^k6flJq4Qa8aK{6W4 zE>EnX)xpFG?SnKNb-U2X8^Vo?B*9pLyr{%G4QmJjyfd0*Li)gP6s>8Y zT246U&LO_#$mZx^rnOgx5LGm$yCbbGrWLE*qN4yA3_J2^8V^8{fD^a&d(rIM_;@s1 zx!??=!$ntM(l`)GB+N|+rvXNZLZV=z3!o1~F@jA)l9nIEKtQ3%rFsg1e_3hi-B%+nJSh>0_{6i@Fa=4~(S(8!LeP!SAd zq9RN>EAVK-zG}J(IbKpfD`E#=Xq!~S!uX}(Vzk;zT5q;C&aV*{T3(*tai!9ruD_@k z-5R3(={nW`w7g9$M04A;fkySWDYggYMnd9E9H(2-dNm~9pyZWNFMzd@3_wmey^q#t zB}f=LCE^r0+pI>&RkdeuhzcC+Ljy3dK$lZW{Mj7I>F-D9wC8qnr3f?hy$*hhho@lJ z3=qGlal0DB&wn-rGUF6T43hW)OiHTMLI`lNOlKavL%S0YY29&K^ev=?)={{HDYkPk zY7liYrlF642yL+vL*gBn4Vno6R-=}nr)U@hvBq{+XmY#UkH!+gPI5yzV+fKu*|byN z+Dkm2so)g*D7K3->E&qyt7)#OGK?v~&FJN|(ZUY?^AmcnOBhu~W@SJU*#8a}QVf2V zHz*w#7rtn$35`QF!c1z<*3thI&7I1l3DcBvb3|uyp;Kyr=5Y*(Sa>V6*lc}U+I~GC z4O`!C0b_UAdsCw$yJKw9Ja&goJFz=J)3}`x0~SevmR4QWpe0yhHi;BPj@JL>jGY*r zd5j(04D^T+fQ?j!Owq6r>>{X{4z|@8c#Q}|SdY|nU1px({7c?CczE9Cmg96IIMAe$ z*{lxE{x1~`le{({Gtv%pC!Tbw< zJ{9UxdT2O}urpn|4Sj1=-->q%;A8A3gp=EV34KF+E^C*&*facc-nv8Z?qh zZctWs5ltBnlbW{<17Qi8(>seqT;E|hBt5K7bJdIR)K%SvbtG!Stf}f=Ej)F4d?-)( zNkkM_m)NkB_LIc`!Wh<0g%M-SPJ|vFCkhX;&`LhEw;gZE^C_q_1JD~XSVEP=%#A~q zx4K5iyfm#_!%n8zp$;SGQJ5yCL9mxjET-9k@I~Oz+HNOEx+CE`OaS-;x?tum+CgE= z(t^uXC|u5JlGV@;?aZ)$8H}kdM-iZmgu9aI@#oja`K{N-`Kjs8IPd<)p8mC7PwLrt z>Iv&PU+UxexaJPKi>br+K(eZvb7@W36j&OT$aK5^^W)`bI-$?yfm`jk25qMZMQEuJ zV0!wD_1xUpt#Rg~Y%|3b8$=kFbVoHV4BX-i!s6G2uhNf2dFDS!eDaX`Y?#{k&($`= zT1UCvw>Yf*<~r3Ezim`x1E563oZbj22T_qKi{YK!MUqg2vCvo^f6{f`7XxAwz;Pd% zHwI1Tb4P{s<2==%L>>GEQymr>(^Kk=MuRcs@4!#mXe1U9qJj8&HFpvX9l&!WI z#u7Ke>ZZiYr^lb!H*&o({3Rg`FQh-DukMaKKRL;&hRO`Y{?{^A_(jUjh;8ykn$XS1 z|LbAtukn-o8fld@Pi>@nP*IJ)ZXv%`ouXjN;fU$4)(EH+?1M2=hzg=N8XuNPY%h>c znY$V*Mv3{Py;!v3{Fkq4XTad?tE3`6>8Np9X~uemcZ)r3G!Gz|~djgyb=; z6E*r)t`mx*p>#!D^@5^C--K%L^9zs}b{!u!MY}$0!Qm3d>4VtDAxQ!CsiF|86Ey6=A+4T-g zjVEd&7vfFJ0VAjk^+RQ$Rvw6(e4v!e^d zE?{V=*40N3Yq<>3piyQ0wy?(KS#q|(Uhjdu0=hi4c5Kn%sYako5xdW5va*ZP{fd%M zVwD33+&E2%Trc#@H5eeX5C*PPWy5a?cZ3g&L1M*=5g6%F-w{4*{WtOo3EtQ}92L)4 ziz6!OtMMFi_&N?yKA+2dQk=iIfK zJkD1mQf#S4%)=H0rh=hlcu!Qt&&^)yZ|Cw*aW@?=Zi^~v|2DPT*0hi@l4;!R58VEN zG)raoz}9%yzX9IO*_kZL-SS7bU#=~il|X7{X5S?>?cOBzbMVv{U^*l>-Plu|m(eSW zax(zUdi!;G6+e5^jY!?b|AxPL&s{&a@(0s)DYGwqN06ooY=E0sQGVK^a&4cejA5(0 zqp4W*Hji4@r_zCw+YYjDPbZgEBQht*ZcpH*f-jfg3n2|ZPtWXTFpBJ7(!W zBpM7Q>t-{?3qNJC%6OxQOE;gXB7V;1X&Sa{TGK0HCh;P8#v;@%QXPr+1?^r>eeCMi zd)OM@jHjahoo;pXiJ!Q&K#{O*>aZeD&9wHIo>&`a&bqp{KMs@nz4v|cy%2sLpXVR| z`18^3P%$)%JPq1}{Lj#Vsp6T7)^GUOM^VhNcTn5btMZHRbzsD%6> z*T~wViA@ZO*|t9x`=jv3Qh%)Q$0-!@MG6t8mjTkr1hx8=DFg$}nodL3Pe-+wg~l3r z{K_~y<+~5Eg|YRQ`L^1X3am2HCXgm=zcoeFL^cxLHnSN>FmzuMb1r27ye|Y+^c9&G z6GzrxJ}PQY(*ANj-RjEzR278X*C-d!pHEo=zc}#rqk*>@uI*2`XW;FTfwwEJ>rc6} z_ofBl-s@5bJJx35Rts@%By6z|2S>vGYxR|rBjI)n$$R-V7D96uesGPxqI?MZEaZAs zGeZ-HPdDWy%HYEqh}^Q7C0DE9B2C8;eP+UP^z4yaISs5cKrAxOo?v3O@9pLWPKz`{ z#eEl2OCVxLy$vPknCo9)r9GxoYnD-#vfTu{X}^Q3!&JPj35f;^l@-O1g7O%Z0+Nmb z!Zaepp{E0h6568&qKY0E#Oi^?ydH%=mil9bKTdILZ0x;Mo2-kwl=rI9IEmIIE;q_kN)l#RW_^HDqLgz&4+!PvC zKrNsd@^YVxa*y)I))yn=1^B*mBg^=e?9)+t>%lZi(}MJ?u{{|}G7#IWTXW#-dXr2n zj5L2V7(Rwr9%cgzI|iLq_wq1v$)#H^;#i3uuV$>D_}NeXe99c?C8izLo*8*jIjD)! zCUpNTIq9Amw5po}?Q!-_Eh!tMb=ljhcC}i^GpJOfu9wSMB2|{Xx8nvL>+hv9D?-V1 z$osD$fmnw@(alY5C-W^e+ki@7MH55@qY%=(XB_|}n=WX-8pHUaDTFZEKAR6>vRd4b zK9ktDS%IJM!jj#Y%Oo_I(`U;SKF0EsglC<_L1DqYqs}l(_W#&!)u9kN4Y~+E;#Xin zb6GVd;i%WhyVm(r8v?dbB0#9xIJsb+e3CGPN}9Z^PYkpTZjZUChdro^X1G5>y9+U! zG)Qs+)XQq4pF2sV@z(Aln^sGV89^xxn$kG9U5m7&ZZG~MrQR$L9lGDP+1gTLU8@^= z(U^R;Om!yK)7tco?ojp00%Il{T9alrU)CAUHfBtx$@KCrwt|8Q zOuE8EYS)Hx;4V(LAXRLG>|>x@&2?PoRb-sxYm`MaE-MRYZh`Hb994CjUty9;Cg4Q~ zc{_CRAcPT|7hekZHNER{wu6cqMGhUh$e~`56bA#R-4NWTc|8VYcD0JUTeGr;F1Gqf z!)}UcqVtu&!6>i50QNN{T389dx0jrf(LLAB^ox-C`)(YvX=h5#2zVG!)1#{54DK^C zP0rHI>vr|cnwtf9r%epBJzJ~*mW`&B!EDni0-0hDHEtOUF;%JA_GxG~Y=UX47~TdY{^DeO<`jfV zDO5yvXoGLav-QUMI3xoGc~mT#>I4i>*@?fn+1E!YA*qd&H>X_|b>Bu@9QM&ktq0OX zXmaTYIkOMNuSysWZ}Zh@*xkgj?MLOlFxkPEsP`u~uqf*k;FbQH<<3U)5aC(z|Lq{|;>aA#_LqdQY$cmcL{gSzeM z&H@os;k3pjoHRY2=PCLi6Ygk;ZD@QHK?7t!h3)u>m zUL^d(ad?PpUy~63Etyakq@3KRQYJhh)Dy{@_JFajrs>e*Y@4_a) zdp4=ay~B>22fx`c?gZ+=%n8G*upt0CfEsC?UEzXZ(}Hruc93pt2};EXWR{N#$nugR zAUAqIrYCe~jP5Y(>K}RtooV962ln2@x=_bzsg*!2w&T^;7G6V-C`Ok6V12YHQ)~#| zN>&+l8`|6*O5$mII&@9peuSMe=LU*#V3;vo~?&E z2@N=s@%;rNyVxmaC!(Xy;_w2HOpf&R>S&uDb84hhwGUMd*ruUj{Uz&B>g+nkapWBB zJk~x`)NhkulwEi_1m>7CS%ui!!#`@+^rt(ulGqulPYQQbqO6Lac;dU8xAj6=Kb8J% zo2Pc3GcQA8KkZ~&Yz!e~NI-}r*l}Dty2eFqcBHJHi&T!BhtLKJqbB6hl%(oC76B0- z$u#FHBZ#J|ID9)09Pz>uuHBJV>ZP`=3SN01)&1MH8GJn*{q{I8j`O{6ExWgx@5&F| zq*Pg0B6i~9^TbRZbEbn2q`dHSW{H3{1kjAxIq;XBO@#|b!|;FaVvs?xDQ(1)tT?SD z-Ld{U*tDvX#N723jXxFIYh%Xtn1%p=GAqZ&2@xj*ZoL&D5QCs9!60)>h5ri<2j zEEowpfFNV@bSfNLwZ7X#z&Gfi65ym;!8?SG5;f6GOF07UIbbinn;#F9YLMm6cmr`n z(sza7Vr*LQUsPA?3h9pPC_8vzjGzQVK-whZg{u%X;~;h>X#SX{z_@T0{~Jkoc>gUm z4tj-!XmNp&`bqImNPt#fccDb1r3k>@Wud{Y$tPcqN^yG!%yPG=zek%7FJETRHX86Y zU2I9V)5I2~Hr(AUBg%r*LYIMk55&hRGiWqd3Q0$;fZ(ZLZbp*vb|pI8PY%VrQW!b|wk?S`J+@iX+f z7{|oLcELh+_86Q>XGE>hgly@|F62!>0DsgihFxE&y~%kg_O2twHZSZ<&LDTOP%$b*9RX1xxXh>s1LAm3saktm{IL5hR~B^sP8mL%ah z5Uxn}4xSqRF)6a?_Ks{o04Sd1*0{!vZoX{Go!up!ql+i?ay`d0wXdyrpG;ep6i+Ii zeB*5ANu`!DNjjWC(~Rd}s=zk1+PKC@K{O&9ocPQK{wX~J-Q3XWv=JfNk^+q-fc2s#U92ty;CpsR}v^a9>8`AUL^=`eelh!LJT{0fTAA=4oZ6veO6CO}9a9x+H(Z znAo2t^T1+4RZcg&Ap^4gY5(QoE=_*5*mpyZe!_}ru-fV;=h884c;2ANtn|4{cJJ!p z69msy%!ZB4;%K)4EH=<5l3S5`XQy>0gJ(BysmC=YgE3~#H7vSxP?>uAVtJ{)ST3kC z62Ves3TrR-|mTP%__2->MMvL*ho7O0~4#JxP+^;IfiHgh|9r-Tf95 zb_s=_My^%T(b*ch1L6UO~C&*-H0 zK?D>iHD?2gf(wU#YvMc<7j-<;JB(+9za%agO7v{>vf1YlVur;rI^a@Wj-2XHLv%Tg zco?S3^@>`i%i*qyf(&)Wv$i_1E$fZYE5todVd?lU`+D+&2kDdtIeKUkt3*JcFG&$5vFp+Yu3!TVQ+1RAEYd77T?v$IVI2%OJ3GC=3Yxh zZhTjFVu{p6<;ijcgxM3?yBMZidT9@9i3q&JX3~j6aG=8El;`ed17JFNTQ{$nL|IW` zW}P!_ACdehTN~m>X{}#uW2`UR3Ej7(={4kCoXzFMu^B@Mjw$+>u?j8UYvF2Q#^C+WqG&k ztthivR7YjpOV1~4q(Qi+tAKkNK?4Q)^JOuoBpUS%f|}Y#8CNIjRi!r7dEF~I5PblX zvsShS3WOHXaxAdrT_#%4OH^;eA(BqbFm8ybJx}7 zr_JSoDeV=`Pzv-jrTDWDyUKrJVn{un!%B%CCuyvC(z0-j0;QcDLG#5TO@_+x;^Ode zzsJOzf0jD&$zCY4y9$P&kZ=hWGV$bCfas}lxBwKyIP4hF&m_i4IE^x%KI54_+YSW! ze1*MiH%aqt6wb7iysQwTEo~QZSzo~79TIuYwjI#~>Z&9-fXVrTe%EfEiUmuXEPDeo zQVOb>Z$hy2@U6T*re^4DZNmUim+%sR+Km z%Wd&hn~ks6y45p1^A6c8PrN)^set&Wvsr%g(#`T){AT$Jmg7S`j=0fX?nd7;GrURz zczrqYD=YG1I8kKO6UL~qabbxywiscf3wCl{*uJ0((*Rvky3l>FEA|suLwx}XB9wTm z#WPfZ8%kQqIN%PL=pA$kh60*a2j>Tud!w=Rs9(`4i|GSfJPQKO1L}kZ<9ueY2n=~t z*kzNyXwH5gD6k0Viy$v3bO4+# zfYODsbeWW;L&<}#P)>Jg!V3Ucfd`Z>oCa;}-kzpov}O^uO!hTnyRy(R?5b=M}lP#BwNl2a0lm2|4xMv-c}Hv_wlr5L?# zL$0&2Ec24W{m-jMIW&}Xf+-X-1?T05UbHLuOX|%~Kau>o2yn~oWA0_Qk1<}RDymza zao-1<7weU565(@aScA8u0wpN))~f|2);JqtH-BGzQQ-fG$KN+3K3D$LDU)?5Zz=&) zp%~8Wa(`h{+i_W(q`#y#zs7dX(8>Y?9MOEb^oa~?y1lcB{<|rA+_L=;vrf&6yH(jg zYK%tii91lg30C_?CSV8OSO%|6nv0q1BG!CEqFb3qXUC7=(wW6HNxs4gw`SON;w)i_ z-GZ#+cq#(<$T$OZQl9ey0vfm{%t;JZ9Sew3`A6*$1>sWsvrDeF>takwZRr;#bUBT?)pU%Brd+o1<<1Eh{OYcBMCwdcD-lmpxo9$M5Wxc7p;oy4}LP>fEIp_)EyHUZ`cKvF-9GWj2Of71i=t} zLvP6&dZA*MMI(Is#f^sAY zgU_+rh)oI*fR^gkebB}<{2yA|Q4eN01zSv7yW3OM%pgU+6H|~^c5vC!>$b73=FY-Y za@M6YSbHi8lZCNN5uI8`J1BBy8^XFL|AV9HM(lYr-e|YLe7q(@MsCB?i7Fe8z#_FA zh>B~dEWN0j@eGLrF;G3wy72q7lt9LQL8(utd25=rVZg%XfcIPKJ4xD__fD7*%IM7M7^rrq)B0W$dF#^YUFrIrq!8ul0kLgi)ET-Q$u0w^ zSt%g^s<0YJyO421k(OIbBCiU34rhQM6CBLSe-$jvFGw5As^gpp7}pJqs;Ie=Py<-S zu5fEj%8n!jIbD4x%xn%b?3s|=wqdoak`Nqy}g{`3buw(8p0X51~VAZ;v8k8RAeZcGiK$zWc! z#gO)E0cH{%8(I%3NfwN znG~|`K*8@Sn<&}GKq37mY3FtF2_6yn#^o^Ti!PTmmM;OMfd#eORT>i(W;K!m-h}uSP=r(Atwz(g`OswXnE#etwV+GVd%3$^t znGj%K4f0svbYUr2n8>d~?v-sg87Nz9cvCO|DyJ4kMQ&?6fgm(D@`=(QDYEU~-7~;6>0}$XA1Di78 zfJMzoIifa!973=$5b~PNeczixT%9arUGLqA>>ayC?VV%*4sapKh?`-r2*2!3Dp{b+ z2ZsQ>z3^@+KoxAcm&0uy4`Uy&DH}9S1ft`XEDalm%=1 z&=+sL4xeY#7pxDjAYd>AV3z(+ER6|EjQ-1jpCl;K!9!*&@`?UWo+wLz7rK)3Q^;`} zImD`^Vxr`5S+CQe`Ib;qF?q2q#gP{3Nc8N2Zi<~qrh zBL`S3DZ9^bl>^p&T&K9+&y|&Wxo4fl<>Nfc!XLJ1`S0YBwG9Jre`*CS>apxy` z&)xIV$6YhK_gO4gO2E_X!E7V>EQUQr0+t6N3=bo{r2XH>gTr#2V)p78X=v zrlz|0xBfTeg{r-q7zd#-n$$Q@j7Je!0{~1}}0% zr=24_y&RQc2x&!g2tpV{GCD&4R-x`1nEQ1{r&Qf7lscMUC9nHw6ot4^-A^|M8y(kP z9r?cuX$-mNEw8&)g5eNr?Txxm-h@LaEsKxDE`&FnYWqoI?I$s=rN>BNNsh7+gXUyr zt>uP=h4ASt33J{SYc$NsH4{ZW$b@Gq*|OREgqiXA=|Sl-wzrA>Hv+&ms1PCuK~*D6 z6qlBCpbhS$hY9_Bn3<6)?V52XxQi8Nie-LgS0zUBY4t8&t`Q*%3@YfgK?@%g%s;<&rNXK3rlI8H#R4YX=EScN^*KY(qpN-{eNa@*w!( zU~RK-?ZTC~N-N+mwOf`Krh}y&bQ`^6Kmfex6d~ex!Mvl?L^Ezth6Ii@Y*0VTBOt|t zBPN67x(G7cJB2PkiX8{shF9{6t3f1&T330ZURg~Ss&Lcy$jsQ)SF$OA$_h@p)&!@Z<=49!Jz;|plv z=5Q8PIynu;{79&JF6oh`in@!ffla4oS3f>8H#QY0T}GR>;u{My4%hS}fe}Ruv)_E2 zQKnyYoVW6dW}NXAQ0j_<0O%`jD^+&VDfDmP-|VKdFXqXDfl+SJZWHrgd}&HX(&2DB z>KtGt7Z^4!y_!jnFGA0}q26K>f3~)tz-0n~`4aS}e2mA|Y;KEt1Kn*C5Mi=fI<8(` z%a&wG8(MXy-3@PRrgo-Ons-W)pO>CD+t|n0p0N1N;4Ejo^Hkw!Zv~r{pBEKzsrx?p zr&S2~&-22`n3tyEiAKsLOF<3O#wD4{kE6H2itcW%ESLB4bKH}UQiJyUCW}(Tn=D+7 z)_M^2y2wUB*Gr7OwI=J{{&ulVn7l9SiWV%35F?B|Rj3y{Mx7w$r8+M1403f9)ubS4 z8?tGYOx>qCIL?5j!TlePI9w5v)g)I=zCz1ph#Twk~XLsn89~nPG2j8V&^p*@NU#f zKHWpBlU;GkL*X1Nsh10B)*1=BFG~;Cb30Uo4#1k6Nxp1F5nk3Xuw>y-83G)7N*d&q zBlSy%QYH9wzJ9i_a*C+tP3D3yBNK9yedp%oFf?p?kbLO8-YRR#_AJ4Mq6Lin%24>k zAi%PLje;3CHj21eLRKiYyVmZTSJ^C?S?JJXW?8Jk-Ngk$8YQo})nd8uCokVd1e*ztU}7sIzX zAgtB11#4SnR=pD)0=UO$JuP;T3 z89~Ig<|>t<8maJZl`$EugatT$G#3nULevi=)Z$`Cc2ED66+w+8vD123v|ag2tSxhC zVIbhLxdYxbnUDG~t%){jK^J47JWxZ372_vmkyb0(_t*(3gvf}jSLj$4+qO&-m7?c)=M09H|V#BClpunn%xv`#(?4-_%Sz+1Q3ec*M+#{m?^LE3i3Iviy~a$T0J7Lzt&mc^vmI?NS*k zk9OfJZ>vD`1XW%yt@7eIR(7oNDB`MqOS*3vidHCrXjBaN9c@6%h>T@f>b#j2rBR%V zkf7hBY1q6wCJ;c3b*#V`h$JyaMT`Lq6p3;)m<6>~A*#N+Hb0%Um2oaLf97=5wJl7KSXzFG)8vJXbnastO06<&|x zmTivU<*Mmh zZJ*fG-mxTNCYiL}K-n6&2s4OJAx`_DG-jORzHMJRzKG8`@K4=U$0j~dGUqy zYD@^!PraI9B88c7_))L6F5K(Y^l9tnbZ_6Mb(mbBIf(i+Lr042e`6_XTRf5<7GE$7 zyVK;0zL)VK=$rFJZ2fLrw8ItZN5K}9n6pKXQwt8%odSE1G@8R{t1FW@52JcGB=>Dx zsNf*jqwsbad+-hRkk>v8a+~qTK~?g{%NuVk6K7i;HYxshN_2+_JraNVB=_RKI3c;SsNB zl%-_xt*?n_5qJ+m#Pkr0qJ`NJY*~x*dALH7e;r^^ z!76pyv^qDKoosMGjmy*#G$^SfVFx2#r>{5!orD}{UAPkXp+X7?^kPiN)e+M>Xzy$+ zu>__~S?u(;Rza*pW=NAwZ!y&GbLF zben(HNSE^};Wkat!F@%X=>hli4T8Lbn>;2C~f56i1sop(&x0kw$xYUIs+WntBGk#Bbm0;ES4A&Ut7Vjf$5kt8-y9oHR)$f zK}W@qK=TRPUfo=to7(kqTTM|v#S6o7UyX%OX0QA|NxmywWj;T*&OHGO+4-Hwoy&SI z;Y6Rv$0|o2CVQkf zUp5Lm9DDYk*`8S?2FL7`6wU!H`kXB8XK%0WCKnH|4V5)S%zeK&)4a13a$>SppuJ^F zi?o!G;>9H^0}$kGXVGbs8}QRN$A(l>YFo8tI;nQhoDvO9?no6JAuT`$TU)MUyC7mU zcA3dSQDk z07cyj&8p$!5h1JBe|$yry7jXgI(W+FFytB9gE3I2s;_}Es9vUI%ab$~u9=^@qJ>Bc zRC{S%oJngSL{n=QXw55}_Ux_RZ?TWiP1=KkC6Srt@FkfRQ|kr>PP7etL-U4vMfKD^ zJxChOcLPT`kY}d(|6uDj*3B6eLTp*2M{?b~D6@0U)Ow?!87{hNelf*P#xtC3*K^_M zP{?iOOIq5$KY4H1{O2&N+x&_{SB)=z>T^sIV9Z?am;1D}Y$yG0JM|n3V4R#RQ*p|$XOvLub0h!rf5VDtAB$;E8 zjXQ5krNf)(u~t9?p$>Q_j`xN)RblS zY29eO=M}I7#!&vd^$=T(SQSlVH%Gxetqj&p%%=4V))RLoi(%JR^-FNAtvoy-zEp6t zlyn$9{W9`-b95o}-9C?KPTs-Nx|c0AmXaYH-HimTE*lFBEe>O$xem<9qhJ09(wFH+ ztP)snv{(KaIbyHmHVp_EjNi#c4{*y>NJ7bhIQf|EpH^}1N)z3nYg+-J%x3OwHJhqT z(mo3d$K}z*(ugFOo_?-PJ;VTebW|HlTfFDq@+y65dlj^XjZR6Yg-ev)uU3HVRmw&@ zPOD61Cp~Qw4`7OxugjLJcB;>!z4+a9aF#)s%9HEOcHNuzi?RCo6mD{h*vwpKI(-M>ZN?glCL}S$vvgBh z>|*&$8_$|K!YUc^L|FWr~oV$nEo1o1A7qGXL4TuzBl72g>owE8`AbmjqZXfkuCF)4N~VW`hk7Z;(nWyQ1v6K0{ufv z3YDF6{UL98+G~GS23}Dn^##xwRSBAiu8HiHfaVG;s&5*^xy(loTy2sA`B7bj5NJ(l zMWdI><%+UaA0S8x{?ecfL2yu~31$0_V71NBR`~;1EJPkQ;UGghJNREqZh?b6{f@h= z`ksOiuLSWx3y?hm+HFoi6$YI+Y^y379>{t|ZjuhjhP33RL)bja9Q4&+Buu3(;yNKQWk)N$ zrWV#DH`-|1>}f830XT9HS+4$w6Y^OO=fpSNXlG3G zm$SKK9&NwLR%nH!#(n!HFMdaI@jK!^34`>-??^6wQ^fQyrwujB@rNGz6?dhk5jZp6 z4Xg>lYNAdtyhB#M>zoz2tvpqJT53W%D#rva+V}mSwUz1%fsNG}me4O4)6`$6D)pg3 zw6^CpiL|ac9s}M5(SN`%R0;?>yK0(gAM_VJp?$FSjnY99I=+X7qA49%lM<5!Ej2v` zbjf<=n{-sP57R9A=`EpD6SDdAB&O|s;#?E4-fi*4Q~IE}_t9|bbFtg3Y0o4>qIgg8 zc0fDHQd@yA$|N0_%jOP}azG~udO8V%r}Pl(y+VU~O4@AcO(%&IpG`s!X&@fc9D<$7 zDTKL7*{1z{8u>mBqWF5M)J&B(wZzar7e(vS=V3my`e9jT#;VQ7 z(>U(NuM(O?BEsF=yL)r*?pA--T#PKpKE%<|s3Z#*(C4_cP$am>VVFyTfs4zupTBYx ziJnR*$6O}S9l30RY%~xZ6`>l$+bJ4>YEc%smNXneec&_N*{5>vRf`b^gD^8@#wz8i z^gabP80lTL_l|kC=J33$_1;Yj#OU?fuWVmhb2vTNodwymlF#ksYxeSO?Y*<Hbg+5Cqvs>(%WP1J%En(Z5zj9OwVqmLA!9({1yF)Y_eAB|*dqEC?)?2^p# zd85Bt!4L9+)vx#YE7bc%HW`Hl`{SbQoyu&3B%%WE0M9^GoLdmLi>8;vaDkZ{&_;RL zFKxfIHtL4G^Ntj~_R|nTXSaZu&9{z)lN#L={`X+Lu=D6(U2!MsoM$3iGWuuDoOV!$ zIN8K*A$F}h=^{)A5!@)&OdK7P`K|nH0_GXpAxwg0<@_K!1{9$*rWr0_5ysGu@@XzB zcT96*cl@bT`yBSvXeTH0NuEv+*Duo4lFwgyA2tNr zR;f_f2%uRskTz0Us~#SRI5|nH<`I>Pb9*6)RS&}PB2v{#y{cKwlt>@ge>DT=%ySx_ zw8M)z$|$7b((_b}c~EB-!J-LTr(JIyhpI?l&?|qFav>8iS<`L3nkx7{U_EI0AaH ze#WHC5W)!HiN*yxC`7A3G*o*LZAja}K$RZRJdO79X4f3+6suR@$yfX?Iiuo%qpmp4(vq%i9oYnL!Ci1Yda@h2OnsrUi*8Y*=q@{Nq1Zn3%6?-} z=_2_FnouNvWp(UV?UidLKaRFLKvr&DFtK=+3sY>!UxxhXE-RD2yo~(iwUfWxCx7aX zr-1tG;5I8O;T~{_GRxE>B&OCz5R9+3*1^sqgcQV(dTDf!$YNJwvDvI=AvXGCC^Rvn zAFK;oB2)^m>AIrPVAmz-DZ6fuRD|PzQ*qfHz@s+EKDEID2lx^$&86Nch5Fj4MejBC z5kgE1Jo|9@(X)>%@y0&Zc_kRED|=>=+e3#f@8)45f4!#Danb3dEMSq3_s=AVVO#-G z{1zKMjl1}A#_up?_Y=#2tar)|Nsw9hZ%~nS4P*eco94eqISTiq9Q9QhG-sH|>qBMq zA^Mn^!^}j3Dg=KlRfRHjEdpcuV#(Can@l;E!1H+-aTKPj*W33`wKMN41;%i*o*=b@OZcGsY|t?y){qHBXh~Z)*9Q>6^^~ z#HLckiDCxg+&n`w&#*Or6XtK8nuA!zoogh?TDTJ;^yi1CB0_Ikcq$^u=f$dAoDXIh zHZ7~*`9mrQcU}W`f>ta#^e2IO7{Z+-%(#;~Bi+sUJkb1>d=X2zQv@Wvr5MJY9;&#r z2US%Y;LdMH;e=`^ISRDB_jftM8%!?dP zNxhV#IWNy;lE~8}rd6J{Vn^j^Q)g07Pi4HZIVU@AJ3+i1sUKh`LbT#yu@f@bQ`Mdn z6jYN4t)(eV-M?kxV2{o0kqs>R+V+p#b=t$hAf zl(kv>BSG2jc%i~=T%u1=;S&ChMlA38%4wGaltoqSx60UQ(C+1-_Vle}VKGJBGzz#$ zqF*AP77MM#jD4iC>Xo@Ab2v&(h%ockJK0})b@J2XB72agZ*iFy9z&HG=hYbXyuqTG z)=(Cc?W`;dC25||Ou?71B5C?64h(~@cRbKdOKNdKR;k5X^j4nKTX~X<;VH8|CR&tr^*PY-EqJKl0eh@{I14W0k$a?VErs{(dw|jX%0l`;A>auJY|W z=X#m@ooyis+m8V4j9Mn?a6lG)HqqyxkIa=k^*S4Ra-Tj7nyb?%IW>Lybu#fq$bL_O zOuXg&>J$`s9(E=_7>Ow~!D2x07RhD(1s1n%kadWa`%Q)x>HA&c8R(yWNK!%AvifRR z6mRdbebxaAurpu-Jbzt;hgN92q8=Yz)Ga+N;O{@;X<0gE3mucm-=cS2T8!^>k&@_W z4sKZQdFV?{OrH3JGpsSFF>b`A4U3VZvugC^Wxp@GAE!q^LT&s580iyZ?!*TGQe z`O{{KWtAiceVc!?;A#?DQq~_TrEMOpIYA(1?e4h>Am;Aqy}qOP`d0tCH&XhWn}9#u$blbdwKLks(w%wnJ*KC2j5vZdn8z>@jQr78PlM>Br+$3^wwH_xaK z52w?e$#aGRXDD!n0*`(QJbKj!AKiJV!9nxuAqEG%{_#)pZ!W42W-=+RJ=6x*9%@>9 z7@|IKq;7HT;neB_jyo%<56fJ6mTC`~wdLeC@6Ti!#HWfH#9Pj25RZN-aHa-lC~$@X zXDIM+DDddjAZ~e-8X$h7s6l9FulXt9uwkAG8jodcU>Dg&vl+w++L5_6blLn%R1%Bu zz?M*Vg~F?>u1WOPTrA39!6qTcr6Fz~S^9z(gO)VRi=pYg7zW&6mMR_CNd^}_+^35w z$6L>+91o|Xp2>5D0%s_2h60a%3OssMj@Lg*RgPPWDhIw5^*lZao9+)tt+FsXhI>L2<>nPWg zQ;NUSawoWsalMc0IM?G`C%E3pb&~5HTm}Ci*J-ZW4}znsJ2)v{-dV!3;oy3-++DZW zJ)5l_+KOD+VXs5~y7w|Y+hQwMUNRf}{H~eq;L|zDBH>u@=scSnX@n}t9pH%G-(`EG zLb?!&kp0?!_13YpNo%?*1T0x;+t678+rGnX}= zS&sa!%PyxAn+xzc;C0}oFX;xer7Y{&v++x2iT;!o(*y7#365mxE!MIOJK_oXMOmC*8YXojzOYm{a2Jp)?y*p?$Vtp|U6P z>=SwR3HRQC>m>rD#+dBr{-XZ++S~k-B+dpjM2!T5Z2?HJrQI80T zDq7mdzCW6(m&@J9DJ_st?!h@-Y)fUsooMof_njQ@{oAaOWw{#fFaf&8ndop&4MGqK`{AT9R5}Agv)5%Dq&Sy&woT5>{FO3WRBPQrJ35 zQ{g9+L~YLi)&xTcf2Rm>HT(Do-%Js=n6h( z4{5Wpyv@e)HXC#QFwkaWS(`PMv;&>!ctnxM)qos@>|25c^v>`!V>mw&1tHT%BVjt2 zA4;eG!{$_E-^>G$o)F&|0`$%hpm*oZTLkf>PJQy#w|;BeA#1E2h$4@q88|);1()|O zFrp|@^-6*nV>P*gzpT(7?$DQ2n!VSt&NdF9McEcWf6Kce^a4sPtpTUVR{ zE$Z;l)=To%OY+uB+#3gicqJ>h-UDjA2h@5TvhB-MK&zG7@6u)Mcd2i`E3Eyl$lLD= zYQHb2{Z7z+RuzHuX$54k1$#h>EvQ~AfJB6U05KPl)dbJCCtW!#SGW zwph2DmUu-tgKqj5BNduiJF859z~r&U*bYKz`{>KMIT71#{4&&-nyc(Vi$NJv6)buZ z9;=;^K7g3a=a6}%uNV;5NZZG`i;!uVyo7zf(9wlI=yeIeYEVl3>~byu@n(zu|| zNRXC2R&O|{0L_Zw!08s*J|ZNT;`1t63IDDnXeV`2iguo&@P`E0E8PZ-g9K zKZjxksC7Mn4_v;JPjDBLJNeP>-|0wy>-A z^%H#EsIO`nI9}-T)!7Lm8mlw?GLU|WUYqNeccEYEkXUzRvvXG3LjOLi`SMCU!Nxe) zguP#H4ndOZjiKN4NjP#gRIvjVE^J)DXCiU%`MMCTx&(nxs@dOmYj_MTyyo^xx#m2Y z%h9cQeKW5)QUny;zFowbtzC-lj&4n8ejP3`*ICC$V62A``kM%e1g39o|H^`tq1xMb zi5aa-HqmxRv*au6nf%N`7xXfb@L9RoFvI7cn5#71l<4%T*-)n)|{7l{hK(g-UNw@O@#O?+f|RU>%5|!G;7W zE{p_;9|?$n;YWfEy^#Rj@lp*O)~qI>Y}jBVm>e7lY^0G)Bg%jc0Dd&ch6XW>A}>3X`r)XHOleX;|--&zdy}!M3<{cWjhjbaMWyTbFEwlbYJy+{5jkOFNmS{~w zhfledp~I&v3>~7W^%pOS8Q5v3i6KLW9qXD89jmvLk><2p%5wc6Ej7@;dc%wj8<$cw zuV7VB0ARIj)cM-Ko>7NT4;Gz8eeTCT?10RuH;f*C=u6ve{6TlyXx&V2=yU#oK6gBO zuUq<@0)`CfbD6@XVQQeJXU3^qTi)nL@Pf9y)^X|wY^{NQcPbt4Z_1@I@h=nygyn_` z%MHUKU|^fyH|KulGNyl5ma*E0g#75lnS_4+_WZ_WHz%3ll7irj*UY)-veG^{B4kA* z+R-gx6g9aX1d1YJe?Obw5JzQ33nx2fvNsFc(wI2B40SsQkYNBK=I>ZQLjL8DEFOsm zB~kx5A7bO2T{F2QCkT))%FoFd92~$Vm~M$1MQX7(49M4q#||lw4?>Bf23^_*)D7qN zaMVB}4QDzHj8#2ke^mlZF+iY>g?YD!H;0-T{$96!VZ?NlRg4Rn_N76VOUFeYM(w+m zSDI$Ava)brkcWvrpF`JAex+`ffl$WMn15+G4c+ukcj7A+HJgyNi{08R;V!R9YqJM_ zab|XMKau2r31lqUw|z2+)`f6~4xfNj3VJfi3D7~30<3c`J@;Dp3&wQguqR^ z&%b4i15bp$V_j__ub$8SK!yk2JU52YdI)(#`$mkwew>Xon6kXZ?9*Zy7UHm^<;yf7 zDp134{+b7Q*G21o@!iMXH6Lw1bkU0@-+9Sj{I@;Z4kdq-H*>K4kW(Y(2Oh*r4m_a1 zJ$D_xOGG9ks%|A%JFnR(ub zZ>-jZS9VySoO^>yE!1dW+#6_YV2)jqJwA^OD+<0Iq@sq<$ttUV1Gd$9|4j$R#uDuN`^% zc%cbImR=L6v3#vE^7k+;px-Cs8VH}ak&yN$svx3Dt_CxN0f#6XFxq<*4nn-}?8!MQ zF`!3SAV@i@CM3$h8tW)Hg;oEo2h`n15x)K9Rjv9rwZ012vW}rppADLC2z6|Y=zR^* z=*nsE^b#aVgEV|x96SX!XDLu9g(+SBbl)jcC(J>Zbfb=Gi8V?)*|J~CV9Ju@VDr9H zq4u7`EiSc3V(dOcY9O4w$g2NSOa(=FHkOt_q{XCKb%!NOO>)Po*O>@of9 zDQS8k=e<6}5f%#vu9i>CQYN2$guf3WxMFRVlscHpSL;t!tX6+$IPu{_$!Ef4BIbva zU=YcnRU20DU^ZX3l_e$+q!gxh!fuDI?#4HK7F{#w24-FMi=PL>j#MBH zbO<=it|)XFGj;ItGI{$0ydP}YpFM^B{67Rb>fA zgPDAdR<=KY@^4H0Y*}u9cqBdzBC}Er3K$G#@Yt_xe*i^J=<4aEnF6GsUJvW_VBsra zn}HroyaqbE>Alj!mQCn|?GO5C5SbM*?-w(e!DGL2H+^zQH{G(loBjar2N4*GaRK^Z zYLD*9-IOC-dYwYMIs%l$f-&=v{yd1>(5fsiaxl|s>_dL*Bo{94rjNv@L1b2{K>>ro z3?BQHyD1Inl07oz546L>eLYzCP;C342NQctSGMFp%w^K#G~W#tI25}K;$X_vSU^?c z^x9z(g)g7F z3J2zL$+9p+vKagyQj$SrSFYZ&;s-POT3#1Q)x~5{>V}(xayQbE!#W@Zt24Vm!t-ga zj|4hsmD|vLJim?H=j_%JUYv$c3}RQlbQkGj_htNufmpkY``Xj>jzzsWw|UOJ<&90( zNDhTEj(k~%GwP2usFfvnMo5!5PhBqa9_i16Bsvvs3m6S%@^t;!DY<8QkL?V7;nmAT zp(^x#o7#%H<)KFy}72!M03l;rK<7>d>ce)#Yz-P8qDFVu(G6w!Cw)TS5>QT;3gEgdi3le{L}*j(~98u~W$Z^s89SoW{SVVQpI7U+xsx4p!X z{pyUEGCZ}WkJ#re*%G-4;zA>*4l zr3aC*IeJDnmTQS#U|BT+UD1_)OFP(zXqnvU9z13~KQ4Yj^D2&0?bj$aY*>0r#blq#Z50qF4}?Jg zIEniNDPs9m3HX)GXUj1maMyE21H|jf_bhPN`6uo{chZPO1G#Nj*4uMqPt>4dP1KEC z_<}_>tGo9B1F*P%Um7hQXwGW=gH{Z>@H4J@uY@TE3IQ-~c)V0u8VY5$Pv*wf$xSXG zG*hz@xYxgKteFJKvGRK^y5Z~ZKKPxF-1)PIny)E`H8q3$1k-}|R4VVO18M{RpNdbq z<>VF)f1V$y#SwoYXJz4-Fjd^O^k{(?UVz9GE?+P1Gy zQN66Rk-O`!zVY`j(&o`}@+N`NS;_{c0-)OgkE;&ebx1y+RG#?HXcM}!S1iR;+;?sn zNnTI5Dokw#>1gtXa3i-%uqi{BUP1EQP>MyR%@BcWWKr~Kk~`)4sE(hONoRLH9UT!i zg*emQn(?ZRxvSG-O5kp1$ax>X>gMQf*b85pOGFL%%;52L8Qy$sDM)KOVDoCH1RZ=! zx3ots`2uth=i=;Uu4*L#kpo}QFBR8&qzg+2kyIWK+0?C5PF7r(U0NzopHto&1fj8i z7jHOn;de3cg zpG@8ocI!pjN^k5oAXNxzb=#rlcZ?dT8?HV-G988i|1bLsL9Ag;4^5+W+R*SU_v%iS z=4~2ebN&Oa9HeacW_j|x4Na$3jvi3_`PsgKZ|^cSk7r%nDs?NWGv+NDVR z^V!ZOZ=j#36(*ybx8rDtRFC$7TmW8f z3j#oQp-Xog-5%6oev}p^uPNOvfvwy3#!Y`nXV8u1hR8|X=B#mX0O5AfC3y(l zhX4T{nTd1j_QMzLI{fSPfA_iu3y{wd9L8VV!5||ADVjpyjvbhj<~scX!{GuP*ir_w zvSg5bq|4)_d*cV{b0Vfr#FVF-D)3b+w*o;)us{M<9uF-o1kXmF;QC?$j{v$wsY8vL zY)%FsE2FpwrbrE>j$!j5N?^e7Wzx*FVOF(tJ0(GX8`C1_USUk5rzwp+Hh^h|PD@9+(Z$*n9k>I^LB*20%Nlv9Q0StoIM?y2 z{)grtMqz`5YR1Y z19*HDlI5wtrgNTYtf%h0N)Nc5^Kj#)omX|?HaGoiv}&~L;u%Css|nxUeDJdzKlxqt z^3pB{=EAFYXU-vnHWXEn3>@SviO}Lwb^kY#Q~TtBo7Q&DOEiRTz55$r1j()P@`e+_ z=99bv61i5g5DhHp(=v$7fcB#O0$@YL=5K^7bw>Ns@Tm7tFDUUXjm)(QkNmRMAyZ%9LBz^Cv=k&c>k=hphN1AtXxYU(+app|SL7QktfqT%T zvGr`z1In2m5M2zIXdF7<%?1)o7l?hCYY;%jhx@}IjAEnA_XsRd1Lcc!9g;O>TL zRj$UF;*uew>ajarb!jC3p5BnW0fI~6hp(D6GJMnWwct()3eB86xcNx)&mJFcGFB^f z$R<8wW4gF%Mwg_!Ntd8I?aF)7X*aWXw|m34Uh$bSk-@M&1=yat>$UZlJ@e_z)w`~i zeBwh%AI?f=vc!C3M`XIuoxO*jXz%WBS!t!J12z&^dB2mfri@KOedMKxWv7*I+Va(| z-j$ZG*6sr`#y%r;-yF1*QF}=9jK~QflQGH*OlxE;DPzfJG*lC1Y%|8^8KsFJOa)$; z<|Qseby68Cc@5bSK_piolM%hwSJ6sbhU&C3R`ZNCDpN!hbtbFhGE_GyIFV=6u8%cRb+a-~<{2q*tyDc<8K?4$%c(k= z)o~fBTaB|2VumcSr!#pMDso`WIa96D{W8aXzDTs4|bf=yds7{0~x0#nMt zfDO@>D3$Jj%EPB-hE0(gA(WnC_-hG_?YXQQn0gKdY?u@kY10Bsb6KUvIpdtoO9Imn zHVp&QaJPN_EB{a-MusZYD$<6eOZ$m9w34n93}!wYD{U~EISfu_kBF#Ks8K~Q2CKt9 zD)2}Iqa_$EgVD-iv{fB+@qSZR1!J&*8ie(k@OTh`hsY!bqn*Q`It&5Dx)>gVt0n1>UI&omk}YrK*M5Vm%*syFxD+=m-2ERBd{fSj0pxobM`RmsMpkT z7}hSBUHZLdNV|-{g#^eEj8VZDH5j8g3=`4=?P7Qgwo3)>K+Flom|%<K>1A!5B9f<2eiy-Rp{VF&Kk9CMkl{5*`I9Qq5sNQ`xZ!?NVCaUnD~6 z$OK>vh>)!Bg9o$2B99HJi{wYci=koiL-A0-qtGtlQXWGCg_ARhI81(6yP$XV`+g)C z#X%km2;9+HS$=5OA(#|eCKimc1bo>Gcq~?MM?0MmJ%-7Ti1bjkF#0p3K%;>{q98vC z?NV}I{O&g%d?Af8M+^r>B-MqP9W1Wd&Nta0V&tVX=Jc=6{}rkdF?d350fz&q!GenQJF&R zgcAYg1Zl8#lPgG?3=)!;t-{5&6HW{)%WF3U-&Tjnn<7qYYdaYThe@42PRN{M?SvD9 z%<|feA_IvmrhYOoCS;J{Ct1x3eZFe7t1hqIm`TFr5~z<8<8_fUS8Tg+_uUO_B-7{+{VRh3g;v)`SCUD6JXY67SCU43JXY67 zC5J|a$e}(StLvjHNuWL+OZ3qp^90GB#t?n9kH_lmvXa#4&@N;0O8$Lj5}l62|gv3k1WsE4C^ne>7y&jk_?aK`l#VC zs4uPSOOXM+ID=vODB5ISA00AJV0=XSoBSBii~D%UE>X}W439xAq98x|dT~w-nh>ORKZ`lUN= zrYdH0J zIXz?SWZH2zz2eVaQN`+-A_LD#Q_C@;vPP_|5tTJ!WsNw>8p+D)R_9niIJ;+_-H@j4 zlizvCJ6{B-vlu=AW}qqpRWVQ%fvOm&ia=FzP{iqp(@i~t?RqNow!1$6iT!|*ehV-I z6$?~spkjfF4OA>pxDy!#x(&q~X~5)6b^*yz3g{jD?%GZK=*Av?)*`L09mTaQtf3?S)0hhFIno!QnxI1WvN@1y0X-JSsEm+ zTb4Rm8p_hJEDdELS{|h|l%X%-3ai`%Axn z)31XUt4aLx&9)W};1~|HMX~_O4BBn?+4uk57yjGB;D8Bn0E!YMP5?=~T?oxDgpNe$ z$Ozq+aJ+!fQBG($02?J)_+2{(Fo;+d^xGdI2WYAbfy{8f(cSvlw;aFbVeo))fabb@ zGE;ujUHf}C+#CYxba{a2P(2PX<9^G1;FTY_E&2gDz|8%l?!*7|t~<1*bhF#`1S-iv#X90AlL59E z61s2yp082b%;g>9H90lr{PO=obVGlo51pEd!qT6x1jrU3oU{!)Z zc+#E5cpJL5ZYS)vp#&^YzU(#M{b!A@Q)#O}v+UB*&Fs%&J zmSI{MrY*y?GECsCaCJ&dST_mN{S`+fjGQD7pS zUNh%U%@Gzj$ufX|ik6fbjp4R8^DRKCearl%p zkSWtZro`b>Jq}knQ^w&_u5wcIT1*~nr+5*OLBcyF-z*t6T2w1~_p?K<6zz|FZY|4G{ z(;xb4ltoP8a5o?)j1Ft*wD78e#ndt$r)|}$;_x^C3iCx#_?An#BL`w?%l4V?3 z#x2XZvW#1nab+3Lv%ul&pq@^jqd8jE94$3R%bKH=H3wF>M9q;{b0lhx#F`_?nq$I! z{Z${mM;bDRvO(F6tW5*3X#kr7$XRd@n3Lkvd{XhJ1aQg#(yeu?_NDV%`%bz~9s2G) z8o7yY4p1+@)*_BLnTy!$8IQwYVlB08TW#C6wr#6z+j-k=^vBAqNAQla%m~_JhW41y z9y7GZJlYyWKzhQEo)FR#hV(>+^al6QhyMB>HR)`d&9=qLC*Vd6+^E2f8o1Gn3P^=X z0h}~|NGjcm3dl2~!nC{hldoD3!1WNdeHtBi{alw2_*k+vl7WDV78OQCg;ArzsHiZS zQ=z5cKP}3k>0nd%97f`ItsE|P9XECzUn{$+9F@W^S=hxVF42s*DR#vV)NWzdX3nm- zPcaM!UGH&f>Z_RDI;nOPA0NjV@Zx#QB!QN zreFlnt(t;y!kS{e`{<#!9Mu$OlrGaoW95_{0h}>_GXgkc0B3S$nHIol12`>!(*|%l z1Gvt8>-7tFNuiWDtg*1BrdpdY>W-1cXMk75rE1$Twe6U-?U>qjEN|Nx&*AEtGVg;l z)(bMkLOM32iHxdh!e~Nzy&=6`NUt}f*JntNyRUre_S-Z&<3LL&k!TVqfS~~l1u!&# z?1JzB*9qV{1Bj&3t;mWzGqQ&6k3aHT7XVKr;6x}R!dgbA5zpX0!&(@eZeE7DM_>eE z4NK&~di<`H!Nsl0!tdI-m2xagbB)}J=qe)C7K68q!P{c+wlR2H4BjplAnRqch zlD?p(t*Rxe))H(m@hvf~mKe8|U;xmqT7qH1T4KcA{h_aM_M8}8M&=2WaZF{>R0Xgi zfE5EsJYElQHNF0&w|w#a0(iO%jtGC448D$uRzpZP4C#iDZWz*y9O>2O4zGLTi8pAX zufxek(P}v`NdPfuL4}e4mJA?Kiaixp)9k|Y{>%ju7)wloDb#gv+2%9>&-Z;I9CM8|Hq<9DQhdJfl!Ul+i-0jvvP z-2m2efUD{DpSl0H?x_4oIb42Gr<@QJVpK?S zDy*j0zw@=Pe6{Q~rz^vmjyx<5*I@pyk;7#w#^4}LK}|8OrkJ*-n9iGGwOP@}KK|9? zQo}um0GtrO2?IEh16)n7zwM77xkbDdi@*j``D`l@JGktG9#>_TCFyBIC=aXFY#))w3G&V{V5GgtLgQjd+FcaeUPnG zr_JHS-92p%A4d-_KU@yS+13;rucefwA(u@&r?!WyG;bW&ym8#-jpLd(j_316_GB~7#DRLPGgIbR@<<$~m$Qy=YSn5+vymB_jm&5^ zGGnumnQS&P=HC6?54}yR%Cbs$C+t;buBTS)N8QK2aoc+}8=>z3)K_XP%fTECCxen- z*ItW3XC-XiB8b7ufbt>{pq(jtbzY0UQ;;Q3E)d0c^S7dBe$jy$gaoG`!VoEgl-Q ztz6B0hPBvU%+W+!eC3V5ifYvq(oI7e3zlv*-^R{m^X-l9TVHz5J(@g7sc18fv34o4 zt~_;Z31G_rV&BrO0Ad9*fNl55o4@r%OWNqMp`q6*Nk0jWLXo3Yw^6#;cN7TVa1nH_@$J!_`<;9 z+9QE4>1qn&Mm5DoYl@9(ijCG38?&Yuci;TTEq|byX2Upq2E~4rscTyR+XfKRj&9Yq z7=Wy8r`$JQ`hna1^151=9d8&5*T~`8-|sW5W#yYCP08>Wu{*h%YISOh(uBMIx;Nji ziJ@4f!C1x;oH%@?rQOvP`q}I&g zT25!Z|6d}9w-LIl=;5bc>X>kU`@iowq=}(8+_rtLHg!Fa)q2?p80?N?hk$kKl4>ItWy$0D2u;0LelSi^#1R>h#f;>^Of8I zR#{Aw{60NLI`-V7bY>dLTHGZYa&S~{gg;N4wY4+9&)T6BhtL#+ z7SS8{r8lg}_Yp@vb7bV#Z)c&H*os-v?Zvyl#_8Fa`|GCkoXqPrOuL!aYXjuZnv>%z z959lm+)bJ@Y=^sP?keeHxZBixcgSIp$Lho>cs&v1+;#8k-QL>2UF_c;@85o=fBQiH z_Iv%?8{gjpc615Ywm5zZ(Cl{HyS<%)b)L%-@rk#V+w(i#yS8FH)W!+HNO`}En=HcSV)+T zJHtY7vpYk@k_z4JL}-el?d~1lAtFTbJ7qS6A5e@TLj4eb=(S~HpTx501EpWmLh;`cTa!F+T%_xd^XVGc(_f=OS|Mg`sRneNZyir&tEMZ-glWCxaH+to_9BWJLG&w+4!&N zwq}n9&rVyjrDsdsA#51ot9-SVK^_J)J0;Uf^+#8#80{yfq#2gZID9rGB9a2E5T5GQ z$Y{gVEhNcr+7^uD2BIb6$4Sts8$w;>AUsE;ose)O4FWfMzM)xpZZ8OzChu@IN;WQjJ6{ui1U|xg(7|EFdV;N|Id6oQO{K) zek{8cG({zW4J}60h|WK=_QLx8*(J>FWC#8}5 zU%nzRy9iNIV;e>CYx6thsC*z+Usp(;8;gDYM(gWk0@JW1zz2@A3v*{Z;Ww=dPDr|> z6h;r+oCdQC`QHKhk18bY14pnA6$0#uJGzw_4&i;pUjrg}BjI}#8-t z1rRxcln=`8dv7A}6E8#rByaLI$rx^7>#pJ^S^|lP-w$@QHTj7MYDz$^W+ycM1~yTp zbXy|U)ZE;nL{zgYj0lSHq%2esH5H0ia4M~TjM#6GqtporTxd;Gee;R7s6sfsQI;2DMfYX>$&5gqHHhlu30 zkk+2n4vVki#cur?6s6k!Zk10diPHMMZgrNMYY62uBLQx)jNo@&ugtFRJJ9_4Pewm^ zpen|%KPGl3ij0547{Bhm0D3yL{9dl(T<_+})+mjLoetMKxOTZ7lQ97c<;*_X$2clWhQ^91hhw7c_3btkFV$s>?YA8U5i10j?EI8aNEDxx$SAw;ss#zXI7-YUheJS`uBX@8(3ic> zGr&Q+yCX+C7ubs&-d3iY7TpU+6^Xzxi9}Y@(+i#wCtS8F7-rxubbtS9))5pS*1*0$ zWMDb=7x(}3HN^U?F;ob}SW!pQ=H}=*4C!31WE4ks{uHLY$d&fYJubeqyY-ojH9wVZ z{UsYArrqJ!G}FgsV5b#l7S60lrn8xfp_AjfB~cJ7H^;~T9rH|rHvb|L@%qLXyLy}G zg}7{@nxtEw1$=tTPU8P`iE)%2q-%Gzr^E;uy-QR%18RbecA|^0lUXLrSjStd{OL|? z!?_Bx0saDz04Gv0kz!;`V}DdRkufC-ucYs$7jVCQKCf?ZO?NBYzxA4QtDT4b2NOb1 z~fsU+zi4v`->DR z&NDaLomxb!ou}xjg_&l=UUy>! z{Uy3AAsQLtiOn0iRI#HOQhdPNx*7zFJma9^^fG@VmYYJLQVJn+T^*g+efBj?o9l3U zqJR50{o4oq?RFBpQG$;~r7c98hM1QXMD7D0^ zhVA$#UXLXP^dCG*th>be1kvOy5N~$UIj+Jgq2hyJYaDh5G>ZE7=%NJ{uMwnF^B^lg zRHv${_EuuseULCxFDTBJnxw2ZyV358jSSs*H_`0;&?G))JZdDN{RK=cVo2zsW@pq$ zo<0SLL{z3ITC`J9Qz{&*go7@U2p6PVe=)sacHchwt`00vhj=SA`U!OirQlO%D`O|I zP6da!m!kxq1Q@+?(hILiFT5tbiXtkX0Ky~?JWE;4ZVJ<_&$KhlBlpg~|HeySgc?@$ z5g)j29;)(D#+?F-Q5tm2Q zu>40!8mp?f)YD9tv?Bt~N_zBAk5PgLD=%842?4T|Zd5#VBOCar3$sQOR7{N&DLbN$ zL?|u^zpUblLLI198HYLxm7PeKdBM?5fRl&H#)pr|KO#2Tk@DW+TZ@{f3YDF;L3tz! z6$_nl(p@jL#m3KRo^I6>t3W1MUPO3ptA^5X4C+eh6o%V`i+i&rikO;Qq~R}hd06gv zcvNl@Y1H3}o;;C`3d%$}A_Zl_D=1P)-hERuosg7xf=2$I`X%aozV0sA*SWy=dqQs# zU6=QMz({sje^f-@GD^q=8qAYhnd;`Xr$GAiIWiVl4!VAxhX~`XP&1Fw-d9F{1@DAh zqmqqVcCanXJ^Aw8zJ+OyB$GP?9!1m^We$1ty-WLM7@h;>QWl=+0+fY(&bDyinKNQ} z1m^Q}jb@P-(gT0m@+V&oJ6r9JJp1zaPb0rECVfl|ioilwWEyEjGkvui2MA z@AZjbZA`_V1X-0BF`RwX$KzLv<`u#6NJV$$7ylW30StxBh zA(M9zU=qPxv#wFrjG)_w)4L7GMLz;#?sgJ;-ruEN$#!)=HghXZY{Qk(4f98z5;un2N9A>5;;TOB7GW?(@KF1Zb(k+9{JOdoK_cTxP^ZXKvoyT1Ollcv8_-4KYQ;3 zXV-DndEP(oU%%IXUP~>ht(N2au4TLJ*ckziC5C`><$v-YAY=oZ-3@H!vzeKEx|Nwo zaWsL*R);7V4G2(L9dL*fI!468$e?i)M~OX2V+3eG4jrR_U<8Q7fQL0%eL#t|!6f_r zovM4^ecdhDPBJVL+%5I3TmNp=sZ-~iI(6z43eFp%XF^e?CiL2RBr;AKuVjXuSH8Ob<0EXi}E0DHvyVoBmmS)1;PLZKF7qowEZc0Fe3(oA!Byn`c_yjk2gsc z!ISR|(e)CBZ-_Q9L1Im$zV@HTDG?A2p*urhl#r$|7U~VVs2U#|iiU=wvh*-0mM!@u zh9W9h^oo2O7Dh1$QE3pO(jY|nAW)_|2*wPfB?ck#gAnDQW)NZxLSCFeX%J!wNO_C~ zpc8x zLqOcli9<%v(m&&_9iv8C39?)u+SUmY>Re0`vjl+hZw|G-g;up74xscL|Hq9e1EK^O z0DcXf2Who2*Pe9ZZWolhoxLONjzYUR*Q5k~+A`qqYhvA>&brs2g8PE7?P# zTU}SO{>j016!iR{k(OIv=m?nzJQPmCzkHN}cAE^#Adz8KMV)UGDPmLy1_*;(n{S4pu`*At z-yHrgW1DB6y+KNemC}3!JT^#MpvB0?ra4B1m{DTNog2z88-!eN=(dnSC4QU|9b0@D zXKS~TZ{sSaq=Hl~?o`*^ABc^*s6MIizhV1JmgpE`rTre5x5h(qptNK{H_`U-R`Lo; zX1_m;&H?uMSO`gVwSpHK@mm=0;MQ%_ol6{=K?s4B?7vOBl%9(23Z@YJ+N2X+*4)}Yc+%!NGtjqjq;uf_+evOk`wr^(zWwZakgoH@H zg>eLLc##GX6<3|bS8@$u9?K*z1w0awDNF;!QFL$AUxMn(B!e6DU&%h5m+5$y>P6AH z%xe0WcAF3C;(~)(5uo+2dHtwVA5Lf51kKiO4!9$2bI^Gu%f%Z0^e2*6vO)K?joa|q zJ2f>IY}dU*)&b;Gh;`a8MGf|c%8NS%y}fet${zysm2Bt4cwjE>*{Wc_EU7+}-mtl` zGyP7os51X}?O6IRr8=u1gI6ch#sof>@198euM4m=ye^=>7?WKWgxsySeLFjL?dZm7KS18{m>1t(dJ> zK&ei%!kwL0_6I>L;F6$k5EgY{0c0yQ`dZrHu9mFOFul3kB`evF*_*pyvXZ@HLap^o ze)9qAOje1Tx39om^c?4kpB&& z>ki1kMF#|nVmBZS8;}c(NGos&tR&ZKNdzys;qDy$!}cr_8`|tv5p`GuxwFrpmRgHk zBL1rBGmV^bxq#QVHg>!hVjpCmCpwk*qUgi_aR2AtL9|t=2-CY0Q86wiVWH(_6NU!y zD8S}p;_Xlllxyt=$2;Glijwcpexm|x2{CqV5Be{|*8gR;M77by+LlTY_+%T)!K^I4PYi|l?8K2JnrLN{!*{wj1^zDwPw#D|z_ zCh*ZHtB79ehCA(&yE|rrEP~guHwg+u5dyn&C5cnxYeD;?5$pCnXFl~OKPFlWA*7(= zc|rTirNB1_l(FYp`9K1oVG?8rE2>#WC4QiYC*l_ zJcJdC8r|Ak2?w;dt?K~K1|?gKvw>_iVmKPKm8$6i_pMd_`gO z)U2DOpGJ$Wgl1)v?NZ{Ahh0iyv>~jmNt}?{?xaO3jdgzqh9>y~C05;Sr`Hn`a|5)n z?*wpl;|^*WoPlu~6l>;9tiP#0aJ>msx@wNpikc{Dp9Uj)qlPnf;L=DuaZj({=TJu4=*CHeGSG+`bf3lx!c?GBnrS$+U}}^0u@6$y)13#9c@9 zRW~p$vQ#lifQ>v=R?Uu|Y`1?B902Y7{eqwXg9!?xb)^FUCd|caffwa~Y$gF!BaRWM`L~Og!kZo+OmY$s*Y@e!fv!zI{ zFxUX+1Xqv3y8kespTZV}U)^d=KzuKVAlb+Ml*@kjWiGTo%{^F}%8nvSR#O9@I&KX5 zvxco{?VSmtacNA@jP|cb>}6p{_BU}{>kz0m zgB5po5VwE_QQ-tUL3hVS*#@(QhMqBs=u9yd;{lnf+nDs!Nt?@71FvDt1xLzG{k~`{ zb~oZ@iugPcb&FtrQN!`i92xjQD?IhnpII}t`Bgvu03QowuHarEc6uSY&H(rlQ^IRd z&g4~zt^K?q%gWfhl0CyW?A9^RMJ0Mc$h7f;lmkS{hkhw&h0?8@Ns&MrYt-C(mEk z_ln8EIE=MLLViiOFp)bv1M@Mi1`YSWcbFxk!9~-Nn`jHn3Jc5n;I zMoM%SVOn4Kbs+A?M-9D5YQ0OePFVMkdY?J7`zb^P`+@yF+ZU~HmYH?>J=-WT;Ms;4 za6OyCRHvWky>!AZ8Pm%QFHH@sUhdNcT;i~Q_1SjP-~JohHHL1AYupsr&)JPq3%hxK zs68Lyo^6*l2I`P~?lIJN_JRMLyv+9SWc`#)@wD&b2aF>jERMpPJIkGBE!Lj2#HVz~ ztei%YxYLAG_1{!*)? z6S<)q6k_QEskSz`*_FRYP%hP9`Prd?E$!(d=)=%&O;?Pe6r%&zYS%N`lq^T%Zs=r} z$qqoN@+KxRV3N3!>e@WEItS2;XcJ9RCbJ`tgsCR7O%#zMvLsl#j>noEiz`D;%_~Dp z^OZ@}wxBW-ENHJ^$`9yEthP-tW=nLeL_YDICQGyDG{7~GyOLT5O(HX2wXUSsomCou zykl;*s!ccJ9&Z(Uq^Ob9F9U(;dx&W`P30(3bO8i?*!Qt$R)cPH-pQKf)OGYBe~@`_3t&+e~Tn5T+PG z5ZVthfTbm*;tE-*Bk| zes%?c%cpZ^uBX|9J$2=?@Y60If`sj@>t1Em=DXHYTZ;v%WL=16`-m*05kpNG+~0xB z4S{ArL4w#roz;Q}ZzFETMWL2hEPGqrj(T{vVMRH{T{-#gcPRk`N{mie<}BPCia6+F zLSw_+WCfV9S`&v>GgFyh6cgK9=4?15T7C)2BfW}S{b?A6b(JQKC-GOG#5BtU)D~6< zA~~0|elFtHdAPdP9gA)r6~-o!*=nN*F++}9MbYEzmri(GctioFU)C{wIWot+_Ya$_ z-43BK;sqi*uy%+NR6YpAW&w8qKW#~%iKW(b`mgNIun}ZAKuh>j*&$sGv@?nB7)vX% zNyhX<%0wwYafI4_K+8>ER7q|D5ZR78^Gp2}&WFm#&D9p8nJD!grYWR5u&Xg4?3K>i zEu=KNwb!#H8eDNxS2J(dgh@}a*_Rg=LODDkI7e7O#wWMYr(5x>WYE)Azq zF@$V9z-{Yx8#`PW`D!AY+9hfoQ9sKWXN-^Cq9p>ZUx~73pKaSdHPGwC*_Z9jiLep7 zsUoi2(r$OH2V|!|7GpOH#uA7HSZk0z&6=;VdE>h_Z+J~!4*sKtIGa5ZP5WbQH4TDq zr8lA~8YwlMwGOtGy>Iq&jJe6zYND=`<+Znsk}A9Hvx9dRX&ja&nuQHie86yFYru~= zKsL#ci^n%^WAIJ%M-O`;D3Wnftd`OBO>OXsy4AO{nr+&Kkqew1BnPg5hdD2Sz@URL zZsw%5n0P2_V2f4@HMDNEP+Ln^3yo^^YN2F(khswJ`e59J)~yfLxzL97!3HJkyXEt8WOHEQ-5RckEhd z%MAg-5i{yPM^TK77C=bgiM9o=hqU&H^wQ48R9MKvvBU3@xP3PWF>5hXlni!Ke?JAbsc_ zbVVExVjKd(^<6M=6!TbE-);JF(=vofV<+DuUb<`P9YS8+zDl+I)iAX(nS#ijnxe{U z@8s&cdncM~m1?#w4`}sZ)>w4qvh*pW(YV$&bO7XP>6YH9h+DEn&GkLW{j3lzqaN%J z=)nR@4~&TQNZe!GJ=VF$2I|{1sbs#P#}@Z^wN=`BcpzLR&ZZL)3n8Z*5KHzhA)F@d zq0HK1Istm5a291C;MjJJ2 z)$qiV+wJH~cx+2+e7V+vvvq3t07(K4X-GW4ayRG%`kXIebGK&87=+*;``Pmd2zSVY zi0(^WP)SuQrCitQ3~{*fn|U+utQ0mtY$yV@Q_cb1DZlrH`Wq1n3$g0 z7t!Riv9Ie;9|sME0QuNQt<)5#456f013*=1rQn=0ua(NZ4|E6vg!`ih(GuYtEl=mH(K#s+ZEeSpLu8~Rf;@Vw6S`@Qu^LOe|tKCSH#|cpQ(X%~CVF#Cc<>SQ# zvl=fUH#in%wY#kKlJvQhnh!{>gp)$HXa^1Du<|x82Uo+<&h<20eastfFs6VSUI()- z)^J-H(WH8&Gg?%_WTY={TzE122}5f&oLntUrVIzaoa9l%eFL)=ql0!te~`K~ynX6M z-m~q@a+0tGO{#RJkIibTx#v!{RM~%UdH~!~+DZ+uYBb@28p3*q^*DlNvV1b>hfRVb zf=gw)T+JZ7Kn%73A}K6DRzp}0y(EpXG-@A*k-%S#z|m4#L%fz3ObC4>X5MZ|8{3`n zEwyS!YC53u9D`j9iDM(ZppwvZ&>XVq04jH^{?H1apca}Mq?i!QN=FPOk>M6Z z*pp9)08*hTfn{~XqSg~EhP{%kXc-DQV$guJMKZbpv7ng@$t`1@VVN~Fv)yh1gQ1*T zz%;WzV!hD4oW99AsU6DLW-$Ap%R89o9pnIOIq#s$%ap13FG5T;gD}G<3I#`JSPQ%u zfU#Dagy0R_W(y5=F|hd2I;9EU8E$>N7Bb|zM;n{t~O`6ofQ&SaXr}(X?i#8FkrJFrKnua(AG6M1krw2~Ele*}QQ4(p<7j2T} zYQ!iv$RG`|qv8tmQJusEjK!Gj!M1EJnivjk0YPNu9I6ko^D;IsVvipex}NEOr58K+u*%ZUp^tmy(?=o$1!&&@j9LObFXWykkQSe zQFK%1G1@v>N8ekv3S>l zspHn7TDe8oeriD2z6(kt5oT|{eOng3l^q*ffGuTRmtY+*!LiJE2cb*v+CJC_>a}Vm zjzSJ`AOGz(26WluJTRU6B#&Av`xuXED|?7XrIkIv1IxG%^MJs8fCv0jYb(Ktx$qfA zF#rtg`AIZy@4niU9}rJ92|JO%2M4=B?GF0bhA9Lf{@@olv3u0;$S|ANJ@#q`Ht|bE zDd+-T(minT?PtmNlk>#SsEJ7mA4g5tWAj&^MFjal8v$lsIPnm&@l<2y zJ)6HO<;ClO0*V9DcM`YN=!OVlVv)_L}Ly;8T}!$YDf2AW+>aa_wDvEq!mD~>$+N6 zL@{*(TTq&NHVrxRj-&u-Zd@1C z-Zn{JTfVdY>wVuRQ+`las7E`M8p7rKoT?PD%lZ_r+L;6zC^P1wVu zPz`Du^T~LU$1X{gLKm#of75hp^=$8N8G){6pF}g%Wlh={Z=28o!DcsrD#A$~MHO60 zu99NezKUA*XipV2Uj?&D+efUXj+$$$Fkr(N_m@(&3 zktq4pXV1 zXi=XfG6VQffsu6tlZFa~>QGt|iFj*}Ru zsCto#fD+$_@TsJ2r{%=Vj=~wtq~7A7z6eGc3Rre1N;4l>NlJxq@-A#W_DGNBdL~p# zg~37T{B1ot2Odp--miiv^IJ0xHkevpnHPAaH>7nLY z6ZB_G`_wo+#NeqfsW5%}u%5Hod#CX&Wj+(RV3f7ItP^D;TeIgL?Gr<4Y2l(uYqGKIOxw37_`irwKpp!+QzC$*sn>tdHN~LT_Imzukq7N9*I`nm)AZDcI;! z7QQ;3Cw|_C&xGsaGrqn()VIgiH%Fd1Uv`T4DW7LI;oUxbkU9_gJf{ht_Tj^X5Bu;D z!bg1gDB+_%e2DNNAAXGRV}!F)5%YdLIu)6Xh4pJ6?c3+ubT8q1eR!7etPdX~e9(sv z6F%(2M+qPG;W@%{K75?;@i5w?Zykta0Ai>{17@|MA#~HPl4qs%^G+FL{SN98Yh>gm zF)&_?I&YDoyO^>q=GyI#V7e)4q%vqN*y-on{%aDqL#$YA{Q+X4@TyF-zYwBGSETKx zWg|KtU=hq4neXs`SxWl0kV)TmI1G}fj|j8e7n~K>0TMN3VsvzBNyKiYn$z#>SJW2G zjGAT*`e8q7kj({cr5aS+^m8q>$>!~2A%4oJEl@KN)lmRH0j;p3K!KPP4XKdKe1w`P z;%N;v&u9Gete)p0s}OjeV?>MbhjuMqOOU# z#*cA_RJq0|rbJGQ62~Jdtxa#BE|Wy}D->&RVO`MOR_is|$e>47838RF#5z$`8hp_$R7a#i#;qbeg+=}392b-Svhc-}s2J6H(g4a6O@7$ufFDfUsvxUqhDn zb?BvU21a0s)|9k4W3aLu6l)|+W$2r+HU_k@!&qgzB%Xw({cE*eSq7yw0;3T6&FMTr z4y%bIx?h$WP8c!9*J^DE99@Yv35t{QVsVI)GiWxhkj@~ zq+OMQ#pLQoo|fXVYPs7F-P6s;Sw-bolSWL7r15~Ehv<;uhLM)`hr+Z5SuyH_#DqUR zZO>^N8dE$-x~$Y`Qz#l!@u|GX0IlC%k^gw*GxEjfH@tN|O*dp~*E`e-*or&S8}dlPGHLs;~)vGp(!K#+IkLuVw9cK+kA+hb3_il~(Ja&XDMun^=-}chYiAKmjIe zYmHZ-q{=~J#!>F{5l*p&!e{Du&`^RF)qxhWMj8Dli}&TyT*{NUe`WW|l7Oi?e^rNi`u$_HR*H(KAYbcd~LKk{aM~Xq|~o zys;Ls&|!KsibaPA6O%z73pMj(?qCHSu)q#YK6`O3y=(OJT2YtCH!iO<$&bw^YnS5g*6GtuNl)*wo%GjS#*Lrn?DErgS zqt+Dd`d5X zmKXY<7mmd8f=z~An3KG$Y5k{Ae1X|~)97_Kz4q@reRKEU6zFH_-)#Ct#_K<7Ase>; zB<#=tv;aa)J*ZO;)fT$~!P!msKj_>z(1|>5?*0c|(~1~!x%MHhQVSbfQ&Ye&X+0ES zN{)fH6Z*j~ncqcdpH1@T2yrLILxHeQXboU+{@0#ix-*FS2Is!r2-x%OE*cC{Dyt!2 zrjs(1!wH+-Wd5zH5!rPzS0@}qt1N>&fRD@P1ZN@E$Kx(?oqKHIL5bJ8w4TeopVw9@yMC7Q%GNW;_LFAYH?B^}Z5vBsXP>ViIdmlM)X_}_tw(Oj?TTdpzOHoa zWu0>o?o`YVz&s#XJF?F`__+tG+u$YHNB{D~`(u30XBZN>u=p!7C6*{Z^P$Ji2ixqm zvBO2TiQdSC4V#la5Ae6M=YemuE?6(ZQ8uo%ZHyY0HLD$XmF|;`G41BUo-5I&rGC{L z{GSA26j!RXdei+hj(dK%dP>-xNBoF>W81m7;fBB!=BWmLA(O{Rw1|=4Q=6)*LJd^{g z=71HkIsCxjms;@)fRRA@t@iWJ6-B<)#_^^8yaa)lAn@WKAU08TY@+7aMBUg#*5Dy` zc$?Sf+@jiLt)FcLjc?7L=v%W}FZJpr2)qP=mmqLK2*`N3&r$xSQU0vOgH7OQ^TwP3 zlva9LF#OknpzojOPvxIyw_ob@OAvSo0^h&PSTl`IEbHs&;{jfWZ>xUVX!EC|oEOG!F{HoZg`aJO7i6t3CA9}K z@ZyX74=oY>53RjhdCa-!m5$e}a=d2LcujT*4=ggG%^&~b&rFTVhGMnFC=vreZgS1$ z9u#QcJW_(SV!B5j|yK^GD*tL6VK61Y+TG(Q^wNKW)Av1 z^qzOQBkPsy^6!;7GPaP})FD6=QILYKnT+;wo0Bni$LA zq4#uj6kR;UhGT%;5Blan&NBLWu<{<}VVEDtS;lJKmStpm);s1Fdt_&aI&<6i4bmAc4M(5)JugJ{_Lfu6J}bpR8NkqoRN9? z1(8nneVk**v%mSsm1Sz|j#S})MP}Inr+j3R3Ou?#zwt$7=Z7>AWMFT$v2iER{PJ^B zXT!{Djc20+BHIxL@=}v|dl{Y>UL9ap%8@Ji)=YJ~fDUC*nVGON4O@D@p31=!PU6#7 zE7_hHUI}_u^V3>i2%{1fdWubbQn?+o`UIC<)X70ACUg4(7-p;QW}S_}FlLZ8{qtNLrsRY8 zLYvSDg-K^So<`g}4+@i@!)BEBHpw9oj&c&#TTQX>^>ZFad@{TbYopHudaF%l(qZ6ca?uFB6%5t0B1!trS)-^TomNA|& zh=k$nJz$=yqK+|{sMED1zGIBP5f*>~4qOcDabIhHke5ByS z(2l$T+L7-N`coH zBLwkn@>=Kck_SV`m9DN^jMw)MMENK-IP%iRDB?H?r~{UJIIUu1ThS=OviPmpC^E2| zOwC78I8!sPq>Li|u{pV_QM5_qzEm1T$M@{`2n5$gLXC4?rm+o$IC`K*IspSz>5&e^ zRBodY26&wka;`(v4Tfw9xSJb~{{vH25Z)j95GyRE4Oj#eHG4E)c<9VEkyzW?Q>PI0 zWj6`0zc~%@o2AnTkjl4WbKiPTEbsAgrqjSN2UMs%#zR^bznQZ?I7&+7vcw`|WBxE( z&gbCU&rYY^Z4OizI6J`vKUuvaJNvP^JPye}u1Lhl4tdciB864eY_KWT@hCL>XwgV0@R)!2LPChCG8%$Y%kJ`H>zw z-Unoa3@M)Ra7ixTjdofEh*kkG7i;lp`6Oi4108ORTkwjb4@;vXp&jN?QETmVE3OVZ40mE&`a09znbay|-}#OsB$#W=`Kmi)RnoDgQ`9c7+@ zwY%;V-19CKaWI$b0@wH=PCNv0rKsK~+-_2a8w-t+9|@U=!x)o(lpa6 zPD>?l5vp_(5Jo@#g)e^T9Y7(N6pz|A)_OzW&!|K7aCRkYad)nilPz54@{`bc7!XYZ zet|*K;`ahdpz7k?wBcLah64ZKKN7BUvKF-dr3hw#8wESaB$i^QsEYUjKO#l--=%W<;MB#+eCBmG$nV8NGR|J+!YP7 z>_FJcMmo0Gr8r&D5v9|RIb52+bU0nDD@CA(Tvp)kGv`3=kCE-EzKh zc-<8Q)wqXgT)$wZ#zBekY>2Q#pSbrv8?}#Kl6kVf5q2^juzN29Sle8szvkivM^+viDNb&lFPrm2P_B~6Ul!it%jKbR`vjek< zLyQAmz6EyzxPoW(aA>El`eW21YnPgFZOTY7(o(%KPIag_$7WgA)cx7~LrGJf4e(|Z07>&6$}@sVV=I@h+QE3f zluI=QGmFAcU9&MDdX#Va!@$O8v!tb1AYie@Z2-q+_Yh%8eJ zE>vXNgZCh!>ej->Vc#gPhH11!v;;q#_6bp}szboQ0S46zo&e+<4<`_`i(kOiP8(Yo zVx0k=5`(XA+mQ^iw%}tLehRo%7~%RhEoNBJZNxvCYRFdYAY$r#O_f4Cgem;i@1U1D z=r{G8rJ&cK^hP4uJM>wqi0??{GoR?j4*pDimCH-g`dBvi>$dn{8smp}jCME8tv+j8 zF!8RmIf)Bp`^KRAMm<|@4nisLu?O2+u*4lZCKximDf_P`c7T#71nt5WD663bZKvN5 zCmxK87XKITs3dQ?ik$Acsv%ZKQ8}2p<>DRXvH`|k9i;;6Xw=(LG8iPb;~EYjS{<#^ zQK%`u&HNiZ9UbcFXuaG~CX$>2qc?@(sK04tOoB9h)%0v+L)m3az8GCbdZ85s+JkoX2QVewlL^wBUIocl`5odV18eiEZ_zF$Foug4NioRU~B=v<$bm)Wi*}mxOK2l=f0HrLCD#=jLYk zsxEMbuj1O)R*JB92{ECM3=zQsyee(8U)VGLO2Ipv_!RZ1V4do(?2HI29g1RZNP(V;6h*<0Bi$Gf^DD|Y~~8MBL6He5NyiX1)Fn3i?=Mn zQ2;v+!0ZCt9AF(bBtYW3;D0SJudVaW%ZO>*1&M{)-ohOvnrfX9SYMx@8EuLMQ+dl_ zXyAb9iX2@>^O#{5qhu*=xOFaY{M9%LzLY!i3e4)Vpj@KqEK5vDKrC)ypy@Cnqv;~t zAfsq{g$6R(mAmvQIeuwU4Gk=aeAOlcf}Q$*yM2cq0?Q1su68kW>|SU0O#g37;?RTPSe#HCH} zjd)Vw9dDfw8FcesTRx?3_rR`)y_wfoV{Zax^#%95ZZwsiBc>ERR~UQ-L`L zg4POqpeS32DaoLcd!Q&RUCV+<1VcFO5wZ|6gpm58A!K!tkkRnponDu>*bv3NqY{a#js@Q-}`5(Q1Kk52DLc zcL|u;0d6eP%rsKbEcL%>6TRGj#0~Wyl9Bfx`Hx>OfDqrE=*>m_A9_BnM}{FT2hX`4 zohqtN7d0%Q|3mb@>H9C|>4H5;XVXOxJ)Ez-wVc_#v&s5VkKc|r>seuFCnp$8) zc|k#o>-lhbQjJFkt)!9e1tl%+A|(&iB+?ub(Jz;@I7UH>Jft^COU^%UpCS;VZcCPL zWA7VvkT$k)VklYx{p4Z1LPi+u31o=KgjhD*YJx-Cv_Q4&msqPTYkw+Ch-jTb_qc21 z?j**QCbAumb_dUO*F+U=J>oIaS*b^(vr3QA4i`UO6ZLbgD~~mu)r^aCC!0j7fEB1p zVkw~_XfKo(-G*w#m!7KQswCCJf?X91A^Sz~CKi(Bk~O7PIfae6)3`AWQK-)(tCHq4 zq}6iJf8|KqGt&vz(M_|)$V*oFa5_A*KN(F1r&*8W`D=<_=A6bN93<@-G0qt%=kN>) zfn_t((>Oq71drvv2O&jq_f(~x{$S4~$c&9M3)f1m2& z0;{~PNCU-gs41DAM&-M!-$NK7S^yf-qrr_$Jo>qXyBCV6F_p=H*>J$@?{GcRVn_j6 z4>)ySAl54%SFZteOo!{!P|Vg$g5p)(%X1hUX|cQn!?crrbz?y9g2j*nKgGD$SK#+K zQGO|BGtb%6)33$ch(k|dWf-KPajf0=$gwLo&d}Z3jX(0{BHSmI99YSYcngK8Vv2%0Ip+fR2H2|TVx z**w?wxs1yg4EL@+doWOUTVRm?aEm-CI1tMfT6~c*f`;o>{>9}~G@x-bXfW55hi`9) zPF5T|@s5mIO6xTM)JNaUO|OBPB(#n$O1Z%{=Bc6jD{MbebQlo>(lcK2BA0|xuz~6F z2xl(j@aU-g5vGq@Ab@CJZRacA1g6XCl10C{X-0tz%p<*p-oGcG5X}p+sS`9u8I@s) zY|iPZ+6Y#wjbuYDtKImG(mI=w1Y2*<(-ix-eM!S_4WlXcMc86kvwv@rHC@e>ZPM z_%PjlZ$Q<^)Su#E@|x)N>98x?VCwPyx^#J|Y=6oWDV1%fE0k#@U8%=w(^al)JH;>M zHMkMHq*Qh!UENc5G#yi>H7TwvuZiwVFLh-{)0gReOL|$U?3y&`DVwAnWm=o2dfb#= z?#d?V+63Acq*s*6u1&A(DLbBCr9#)HSO;Dcy(+!hl^sv7(ffw<<)yOMrq@!oa~-H# z-I}uCGL$s%uhWbjn8x=w^su!*8JyWa&3s!v4RK*g4>R2rGn!m7ovfIFldOV=DCT9! zWz)&nOtL1qbbpd4W^HoCbkdng(&X~}$(4$^CVBaEa@9;So?N{@xt18w>HPE8iAZaI zfu)dRGOu6S$2j;#gPoUf?{YhZQ@Gh|X&$L94|V3#x{Rl-*TBFEhupoM?L}x2YY5y}y9QQoeB#8N-`%2xXym7_Qb*NH-#ORI zO*1okpPNnw-)9Na?@ep_Jp`uT_ulqjKk8i#|Gyh&AJNiVbp=0+dV_`|UDas^ z{Z}_6;^4NnTNa5Q_lP~W@qX;f z9;VatbJLHuI&5Ltw86_Pmt=iHJ+%1%t+RP_-zS=yfH~0c&wPJ6j9X^wtO~j8*)c0R zjHhM~25XVy&Sua*`%%^1zUeD}_4jXn=gR{XZwD+ zp3USw1(*MHH~)N||1|l}cJn`F`Omrh&*){!>ObT1H?sem{C~%P=8gJ$&hqbm z()#;cH~-l@|KF4MT@M!dcWboH&ba)0_2TNEQV_G5>?g^)zng!?@*i;d@9XB@m*@Wg zd4I9U-@fna)-?-+?zO2I@tN!91fg33_grOSxDvFUeod6@>bslG$3Zq95C3*hGVbBc zdEz~@oO#W?KGn1>vj5D{ri>a=E%i4|i0Pb-wqop#)Xt?YdNI%DmiL^`JCN83s4zSH ze%4GJsj8_2OAgF@2|H{1!EE*lXBj;IAeSp33T87u$9^ZVFbLyziQTeJ zLj3gtw`~QR*l(h?5?#{n8aa(SUa9FrwbWzxUWnL**%>YcT&h-ED)?Hnr^po97bm#F z*>3m*?RqLMnmN~6xxmJH(HGSiU z9=Pv&kYTUT>-9GxtswebDcBz^T1Uz{m%=iL7bImCd8OKsu~~hUYadt4hP?K40W?(g zl`LSKOf&yT@ujPhal5OjfSZ!YX^|K1JM$@Relz?2$)ZJcG2mS5+ zQf4|NvdSK>PGqx^6dHMwV60l^pHz~>2F{ncQdEq>kfc9el*G5BU&!V^-;>mBx~T2^ z8G0IJRhr%^HQi3$A|0U8_LuTj6GC<=uZ7yWs>4E~x~;=P$$AVEEi}G90t>1BOq11< zuK~@aufalAgN3XH3t0^ovKrLqxdFJCuYqN!ufalAgN3XH3t0^ovKj=MS#Ac(YhX?3 zYp{^jU?Ho)LRN!?tOh}FYI(PYW>JHMtOg5N4HmK*EMzrcs+dio1lNrs+#Xy_+A=YO z-F~Se&b-H8Hj>SKx%VB`PV(_T_vhWNjQqCrGONzmamDjF z?J0B+o|BdYYOUzt&WyGww=rMF+YYT{bIT`&hjU(;tk&LzYP~Ca&WQ&lUOama<)#*I zpd3qw&Q-n>K5m)ft{_ew@o^)HyHcDd-jrN*GTTbq^4?eWf65HX>-&$?pB7%{v%_eZDlgeYVaz>ElaM@ zVP7g;k)SxsHmlLZrCw(wGv!aXWaM=P)33)Un z!@v+hSf;u852{bf-c5x&cIWWewhIK;;orm*=mu?`Zhb zI%ZozINY2Nb2c^BMq%kjrd)mUVN+_LrN1J%!eW19%mPwJF!4;QK6mNF@OXiQ142SJ z1v|{Xz|FtC4jEIs|2@p^6+RAdOfknr)V*a~)QK!F?F$#{e(=~V^0;Ur!$k`jE?UTN z(L#oc7BXD4kl~`x5PfEWiO$oZ6s;Bw*z`>5`ESgH^ZJ3 zvz(Ys-2Dyn=U708y#j441q_Y8HP1)E(mf$7O!%IoK~rBP5+3-6|qNe5g~}Wyr{_R0V`sUo+1XnpS9IMnEkB+8W2`t9W;upOgiYQ zIplzH8ZF$d>C5OnP(*``O+foIF$^fozRZ>snG8VJx@cb4k+n%GtX`?;>ZpgKeH2JO>r;!v|cRJ<2nz zJS$zES;bpe8v?tPtgb4NJvFSyh)};2A^q-ipqw>U5p1tz=M|xrDT1xE?3^O38CLCZ zxAwD2F+f_QFdWEheP&^;Pb(t-u4;Ws5nTW@T;J8AGkMw6*0p`k-d#;QtrYv7v-u_J zlx0SWf|vAtYFgZ8qubqevWzM`*;^r}Sje9=%DI8m*MJ*H$}DqZXNN=pnBsl-IX4rJ zD~~n9$Ddcc51%WA&z8c^C>&S&QL@lfgC=A-tcV<0M2-$ALXA}pVb4KDl&nQnBLG~!#Bgk%-=V|3BBgmBE z3j}#e$z=pNqlkQ<1gg`DC?m)zMU)Zbq#~9?ka?vni6AEy)_PnK`FDjN#}v^8KnX$S z^0JE%r#xNoh1pTX=M2i_ zxmS70_;XnChCdQJW|XY1s-q&Z`xKEQi*RGFB68didD)|gd=y1Zb}Pb~Vb%6`YoAhz z0n!>(8sF!TYAx&ZL!L)4tdGCSPp zp#=3V@p!7YLKTzbB?PJW5|5c_fX946^6Ej5eTw&pu-D}|r95Q>*;C51yA+-(g`bm1 z2d7h6BOV?p&MV%B&$&GF%F~4pU{SnBkY`+;6UtLYkf#;z5#%YC=eY8e5#)^G3j{f) z;aNVxHgB68f&a^h)4sAc(-eM%8FidJo3xArqiv9Yp7Vcw@Qs`d23 zT2Cn=|E>tZNkw!4z@dh`?0jCf2RGET6H4jDjpLU2;<$0Fw?ef~i?1aR22y(9?$_O%}h$RtZ zpHh}Yki83Q-J^*7yF!rNis%BMgdkIS*+mHQ9E;}#2y$LgT86M}xe#|bXL%$|7@w*p z154n>fnNe{%$EcCCp6&eO^xRhC=ZvD#F;$Dea9&ne|8e8~%uRoK$idH|7TTSnE+mlprEU8Fs5 zD`b(JDeS6Xo>*E1Lo~{i3#nj8T}lP>1a7=c1%n2r+CC;nQCeUrRCliunG|ZdR}n#l z2HdNS6VNfVr1OJ&PQ(2E+Nf@ z9NK`bQjUVjZujeI)Ae{wXHVLd$<@irXRtiR+&I0?XEW_)PqwR)yb2*&Z}sDeD|bb5 z%?xn8QfACERErIDdbKPOu2KRUZq(5kH?%|3)LVybsCg}I&xdV`&Ff-&5^N{VYg~I0 z#!H)W%ZvRG@an~&2o@w9e(J#oaFByg3!-!=ih*C$p9R@W99yb;t3)=J>Yf~;kYEbs zp6*?uguv}NTK5Fd>p8ihp{C9DV!NK5Q9n0UX`&27yOL1_u$3p1HF?luNz$)5V+gB_ z%hbN1T&6YmxrDx!nwb9!QcXd=FtsCdZk4sBFHB8kVDI->qCABR5iH(lSXCt(*Dr}kBYLZMh zRGE#&5}8JnX~btL6P4nN)HJG0GW}3ZW$IGSv__fM;MD@civo#FOm^~uTRlo@-w9-4 zH#R%0WP-8vw&A1|leH`}#-8lZkqk#ug4pmAhh$&xg% z8*t^36OhF!(WayZe0-sC^L6XWad76+9j;i07gWmfi<@Elx(0!tci>f*eJm5|a6_Ga z;emECf}0q*gQ5QH4<9h=bWsg?Us93k9ilKw{F6Mf&A?o=)oORS)qL^mX|wfswA^&4 zhNH)LxufaTrJAm}|Dsx#fN46@dx1i7l*6I2a+g@atOX=Efx1@2dps{%9**o~`CynK zM9*N*F>FMTE`IJ{+X+g;QVd^0G`Og|%31KFDc4yVBCA|p1Zpyys=Im_8DJ)t$9Sv3i5wlnHCwq;OrM@v zuo(E-sO4m+d9l$~AVL6g{sFrqB9*_EOa}R85j0>RY$C5U$IQ!IriS594N;gqUOAC& zWuIaUG;2kuIQUTCZj!N_<>(+I+r#*aNViT{o>fZ%-yDE&jB{Y(6`}06u#|T%oJ(a` zIO8LdCXX7G3}1Mq@hQ1su(?msWMT*I%JLdiUGWm7mqDg3Q+145pKqSXz$>WT*S zwvMWCl@66xMLq4(l+SzLwB9GHWR{RD$GC}Atb}0iASQPzf*Zfv$C8z|gG&BTeOuBX zE4Us=Bls+YG&rDj$Wmy15y%b!Sx&aUSjY~QAzQpe=_*iy#mx(b?9lT-cIbse79Kg7 zU=TVes19c4KH~YHiuXbB(PmP^`K0-C)RaBWlwDR#SwmiI5g#;DMVoqZI`RBd4-e0v z-9oB|)dLd`Ur#%-%66E|i=1fnVxrLi^F<{DlRZUudM$ggNbpUbUdx$Y2#hZn3BJ+k zrQZALwalj1u%?$n`4nr2G%r1$96&Xn450rcX3;Wc5!RP47=YjCEGhx8ngBe_qB8jE zi^$Q^6X$bGoHeD1L%qEdCt>0&MWEK?d{x`vck&`7GnAmqDa$(8T>P)n1spi(LED5X_}hasi}?2x7Ie8OH=m4d>8C=GOZTk zg=ng}n*3G}^3+vCA#|?mz|-JXWCWZHh}|KIR?G}pM#OUc>T8k!oC~?Rq>Q64)x&{a zIn&5$+r^REe*zIgzV4N-si<3CR4SLWyHyMcrmCXqt7xb#qL=t2kj&;hCR4S9CWLe^ z_0&Z5^vcIOc%B!;C?pq8)Ft0?Y9wxPCtH)aP^wFQPy_uE26wgMMx#zSD|-BS&}!79 zm1;|Dr1RReDqs-Rq;*LAKu~K06O~P@s==xx#$=bNS{etPM@+{u&)O>tpnY3RmXr(K zTeeF^BV7WPlU!=z-6`jxO^&JBTjOfyt{o-v)z0;}h1%=U!CGi^eW0~<;}t>jU4g^^ z+{aptnr*yXTU4ruufI~MYz>8bE0q!5*Hx*T2fdZa^v+dQExJv}Jgy^yUmf^v6Y|}z z`fgjl4U$NljJA_kt#+^mFvwAdq{Swbw+4#WJe2DuFF}`kd3aOW-kR_U(0<>5T!U*d z+|Hf@NydaEx`av<8?g0JiK-Hk-A8Fc@f`uaVc$V=&FZD9tL3VH>X+Ne>TcCmkF~(9 zH4xnm$Fj?i*!i^5&w=CTtNNySKP4uIL6+hvIAb|rI5;v8Wr4h~`ZtzP_(>xB8uCF6 z&T(A>Z|e*tMW>*rCnI+%QI?fahKB(@T1hUI2x}L*pa9p>fi=7HRnX2pLBj)5d<{kHrORqqD% zoR^+V$Fst_vS{1n!<{|`QZ%t|FN!JeAVSWBkcx^|%z5N$D5m1DKxAkt<~oboN=>e{oqX=75ip-_{z_yJ?5Ya886fBKf@V zgtBTT$43@+#5MgJZ1r9mi~;30slgtOM&4bke`8^*d%&-`3TP6PJMydn)brQHP}lr$ zzCF^VpzbedNQ9$Y7WZDA+Ae$e-I5oRHp;Blh|O~lz3pb3i%8r)Z) zi4X=^XD|5EgDVpY{G%X#2*^x=xo9guBscps(y&S!0h$`pqi9sb(pf7y$0<)L@L$cb zs&g>Z`UeM_$b0;9KB+(|e0pg-&9xUI7n%+8ku|`?n&BVw4XMRKO}a#cX?|!VJBY=YTQvEh$=~%Ej)sa2!+*_j3~g+v#nVueJVIFIoy#ox2A;I7wW?Om zw#+w`6;KVXDg(Fge$8g(Ct}D8PQW;7DVdK)KcWkdc3R^I0D%!swz9DYspLg|i}0Yv zxnWw8Hu1`ZXL!7i@Xb00Sy8|U7y^v*B!jdh-2&dS&=ANo5B3DS59)n@o;WZ928K|$ z!XWD-4W$?Fl@zC5RF1JW_^zaeiuQYAnO!Np5F4Ax06l2X>K2QyK5(j^*3}r8dZ*ub zWSBHJAa>yqd;@Ap6sWFCYVWk`kp(xPhVzMsxvDKsJ>tXCp6kL0fkS^9zOcgm^2&uT zC4iDA6Q!`hmUg2I&r2URkRFX(h9ma&7;i#jUxUk{NY&x8P=H!0t^buf%Yb*R8Nl4I zrzjWAlC%3sKQm;6p(DK9n&KnLY<_^0VjmN40Q~Mw)7ER5eALUBs9vgy;5S@tr}t1& zq_`ll_5u6wE-B7jnk@j{&K+zyD|6?hTl>Pi)=*CTi>j>>tF=^;_Hbv2^~ze2e^q_- z3EB7f1}rWccgwnJisFW5QI^7rluTGI!5jR9r44{ID9J>KoCj^N2p}31lzsbW25GSDz zs}il2a$x;Buy%c>kPlkDg5=|QB7nb81;3H!;j2t1IeB6Hd=+7KnR@M7xSPFZ|K;-% zS!nbWGSqW%>+uS2)`=pA1R^r@7ZLp~Vx))|aS>~Z2oAif$l4-et&6y}h`828Twg?7 z?;>7RM7+vH+*Cx|X?r@(TzIcqfU0CPWq_R-Kf((>ZxwjQ$FgMZqzeA>RdPKoR5008}(e+`ccXI zcT2uyF>zzSk2xVjpzacQM^u?5+skC%Vxi$I1oEujB^lGuGY205wRf{wqB3|*q3PDY zb~MIgK4P?(I1S0CpXeR0Q~C7r?{f>@ry@W7a{8zV$$awk@hxCTc1l!`=UTVE_#<9r ze)PvYnID0sFO+5gK)<%Rjz;8L6D#vXwu<|9mB)*Eoh4HPMG(JIa zW@A$Q_=g|CpeIals;7-e9=N9T%m~kU;yD>)QErB#w^0{Lp4(k>Y?-MQow+>K$cV^u zg*3wk5dwI~A#wuhR~{zVq=Wu2lUtk^(H0w0P8hwXfy9VcrEMMfmU|5Rcp*|4Tj(=c zVHsjUdm5jZDSrG0<=Ky*R%?9OJY30rV%m0$4yQJ9{7Mnr|KW8}tQI*TX^TTjy0Cuc zyh|$afK$2jOX`w;%01k_R1a}&_ab^In6a?Td1gL+z?{azCRz*CKs1)Zp&^MI5dqHL zEBSlHp(2k7t^O`#@WT4RC;wGfyhHm1<@2ncgMFO02aJICxiUXmdEPV#1 zLT{uC%zr1?TbSP?!F8rbjd~MyuB$fp$`-#^D!FDQVo@2u~%vSQ3UY;(`D&L2`gq4wC zUCZu)VzL%a?7&7H)fJj&T^eupAZ?aZD3sYiRsTkA-G(&>oj`q?wBDLc-TU@!H?uv? z>sT|GRsFR*Y|8`#<#mLYXFE{|jnnTHEC-X&EE#WzPDzc_rs^A_(_p<>O@bhb z<+dzV3s=YE7oumUHV3a6h&E#aDSd%RJQ-IdI^=pNS%pL9WX0s6T|2oYTzj5* zL#&70HW&sS7Md^{YC=S82h_VtH5ti%YLTPCtgZrg6ChbuUQ396a;N_ZXR(EErMG4I;`+A!aUe9)MbTAkO}O+2&MTojRDB7$h2mw2h$Mk zWv~WKQnA;7XSwm_68ZmUVGUlzsi z;>8W?s;p#S-EE%QWBk6`p5^6qHGjCbL6#kdLE`u?ph1$#XqCx-jLA}CkZ6Fov>XHk ztVn2+fH{Y0YC4{k3>-bnRV?~8bJgq|OnlgjkyoB5f92SXTB1oGd$9-O&O-+_)mOnu zvgxE;S==w{&Yp|+j~_qD%bV67#4IZ1bJV@yO&f};*S`6?iDUw!X@1ebfvKt z(_(=IDh9$Y8%=Giw9kk$#R%VEAer9AsDWFGMZL>?ZLlXRvY*g%-73QJAopQPqv zfDT@XEFUvOGnZ=KDs;E@B(cEXdS?{XB=kcy?7ILPg`1#C$=EDtP?u@=?FzU&G9L+n zRqowQ#)rCENLXEwuk;+e@?xGRIlsszwb|gHhd_BIyg`~Xcjti7E6zxhM|OIu3L%Ah zDQfpg<~BV~D%IX?)Z*H`lGXWiK2VRA?TY2Cu?|z73QNu!r$YH^1VtOtqyagJML;vf zyD?XIDn&!IRltfwA8OfUx@9}a&aiJwdUiU{ebDG{pc*a~$zQP|Px=@R`b{Wm8;>8_ zie*ewl(e6rhG{b}^tq1WC&8%{pIN3cK>}#oM~6(3=JEt#%ZRda6WI!bCihkNcJZ37 zg11f=-up-jg|^pY@=SX@Eks1Tb__`0?*N)AiB zulhc*p(ap(i@D{-tEdK1Nfl8bz-Qs`#PDjXwUlHY{V$Rs1IO>OZ(q0)7{~MH0j;06 z9@zNv=3)2wdGoOO{k(bDi+SEW=xm=i4}#qD=0R?F-aNRfe%?F-FCfq0h4SncUcq~X z5W0g&=rw}*Q}{NIP~N9yoeNan*<_YhG)o6AJWEq>XRBlN<*5q$(!AW{XC8u9pD5}e z)P)C%@T|I3Ax%+DO$q&OYQlOl=HxQ9Oc%EBcmswRZ1*!Y>r6&X$q}29{hER+G|5_; zlrW#-MXZNopqANKK5`PoZVS72gGqmv^Cm0zlY%JR&B-P6DM4s?0%9p?xlQE@XXsA%i{vS$`$h5;)BPfOis^olJjHas zNS3)$s#dPnMGvJ_0Vn?k~B;{f<1c*3QZTcr_wi+xsu@Y8^iFoJ-^3N~xbxQc8 zY3_5%K7$RM`y5qNiX;iHj`@y=a_|`|Y0(ndZNHCAEs1h~ppYB|x7G*yk<~^-0(IPB zUs+JuXMzfvztOZQ70(+`AfcWkv<6v$#~V>IK{p7kb2o`>Nk^ukQAAwN%{e^oOfQ*+ zkW?hPV4uS6WUL~rvVfaP?DnPr$-fQl;1(T~;LacyUxAd+g?mG3^3d^J6U~OYNQlE0 zgUKcP(@PX}Ux+@Bg6;kIxaR#p$OS(8p}8xPk^QuZL^fp6?P-6}lo7+!MTMi>DzqOx z$7*Ha*d0p25nXj5(*>>_QkGSgWt2vfWrbyF=_(IU8gj+iO1)@}yiAl)lD(>g)T$mG zFtSW~k=2tbZK?z=gh}bAeY_-=!Z(y{t@@uhSih-&_1YAb!8Os=bmcU93PKxLO7VDg zIy$XWYq|u5<6^qMWo+6XNRcLkE{-@*H@cv%(~2>gYgP7lK|M&^mOXxC}c8T&2i1O1)dZIfbq>1I`l;v8}&_Hyt%EARSsfVJg zQo^*u+sPdzmbpTZ+Fv$T_Dex!vQd$eH;yTuOsKOx>rmW?E-<0Lm)R#E`$8GQ!i->9A80k8l;t zYT82X5e7{u%e2@SBz6sGsa_j4a-j?Z2<~#1OiH&=tO#$pFp5cq@g-dbip#lN#=*;= z&H^w;OzESCBvmg@E+q??>+UeSge-&VdtM8-(=4Z|{Y=soisuM4ML~PYk%FL}4mptO zt7LK@b@lf_MI^)Fz65XX$BykB? zH_40z+-uE>4WhE=9hHUzbzdBWSq4@2?^^t+IbEX;)7^s;Y=;jp_vl}fpnXxbYQKW~ z2!lGjV#`J+Ct(qx`+)MboURUQ3NS?$nHX@5&oD8xsEB4CL@g@bD;hg%QC=0zP*ryC zn648d|1g7;Hv<+@6b_(9&)W>Um58NKZwF{yZ!>bhENX^b6~%N=GXRr^2ATsvA~Okt zmAU_dV-_!!&N5S#R$vchUD$tI-g?;U8uktuV?^QR?m5Ml&ml#&H?)ICQn0dkMd>Ma zgPD}=vI}jrLnSAs&y(L230lq`v6EwIX!>v1Jeo(25yS-^2HA`|>$LEbv2Afjt&d>o ztkrYgW>eB-XB$`!It2y~F2x8;KQgn@aeVUMyK+J>V%u(|dJtY41lf=3n6_GVdL@by zm;9ksi<4(p70I7pBKfIq@<&+xFRc6^mv8&Z|9Xk!XS&J1ddcF_hc78g|LqdV=eo&{ ztX^FD=<1^MSC&YAuABTRE{a~*^0~31^pCTrurPV|nj-nPmPkI{P5y~X7nk09X;Jz! zOC-;Clc!&{xb)1+iqe0uMDnR_^3Pwkxb%IO6{Y`liR3fgAzee`RQ)* zgPp~t4|R&tUtA*jY&ZGgbaCk;X;J#iOC+D~CV%qs#ibv+yeR$EC6cGs7RisVU0nKD zH~BqREKc5YMN#^9mPkI)P5$XC7nk05Wl{RcC6Z5elYjQA#iec1Gm%Sl;7GF|3Fliy z@Ua0Gj5b9^>?)Zzo`ynPg(4L~6hX_R!DEddv%i)|+PBq3$WkK6p5Z7n;(bmUQRVSQ z_U}g%+{%v0!2<*m>A(GX?E$jWqOAkSre&*$657@boEN&xKk9@krWGg>R>Hmk{!3Y$ zVOv2CPZh`92Y4UqHjE1c7JaJ1zM2u~ygm^?+How{Y9tX74**zJooAbekNG4~N7|tn zD0?^hzLgX0PiPy&)sP+IeV^dr-w&ubCon*TxSKR*VbB68#8^^?=I6OGq?Tml+%3XOvm=xW8qMQ z$^J2S&4Kj4+E0`Hh?Kp!M-JH{qwQ~HFH_rW*<;IC&#I5k``&;w;V95FZPa$QeuLYk zL_i?AqE^U!2=lxBmrlVDV*SdVZsn_03|WtFqs^B+JTs_Or^bZ+D+_`kdeYbI$MgJGQ?| z@a0{WLIVfMgqc%1I-z}hx3v~y{d)*zji#J5?tpI~f?yBD=OgXS%PyruVrTdLaxty$ zxwf2PVPOx{w17%>InQJK2z?|DI>930>WNd@D`7%5qf2f~o9dD)dZ}HyD(n(7_(mwD z&vF`r(Pjg9I47d~K7fnu^)|!h>aY`0vWz%_FOjfA7W_LxFS|%%WF=VmluHlN8Apg6rgsfL6hkTuMFr${^U!06}+Bw`J-Oj#<(l{X*0D=6COu?&_4$xFOZQ7 zPjt-eM=&yvI27NWE}dj`E4@uvLQdLFF4F=2TQD7*f7I!uNskZe!`0rHT+6!bx-pT` zWC!mU#3kK){1iW8yaT2>mJwK1U$cWYn9**y`3hw(DkIN3=f@puK=) zQ*A5CTR%QEX+yWTIB^r5m0L@k{tczB<@&d#d*bw!a(s-*&(=QVnz-3rPH>@n-|X&i zc(wL#ahKb-i!Zm%sDzMqDC(fhNauT@dF7$6Hh zgkrwg-R`?Xqho{N2uHhE0S-!IoRs7UbP+~+>yh{k)}q`)-(L)vAUH00bpfZ>PGtIpB$JV^E}-i{VOulwTxsShS7VG9QH@#G5lvSE(CrFc#7CK z>p<)tAB~T;0f(7|?aVBcIY@s1mt*P*(Tm;v8%OrXmdX0TBk4isdXMCh#~TC33V_)sHPCYMEK)-0a#Z6v%^rvn=EEz^$#<17(^% z$fwcx5(?jdTu@D9C?7}E@Ry974@l_p6F0pF{ZG8M&iS9D^SU3N6;OwN9yteN2N5R# z)t+%t4wphOD)AtlWS{`WKmH)rsaeVXKDUznePAW~C%KjE?{h2J-v?H*e-c>9{z+gZ z`zN`T?C%3BITXsncSkMAg#YmpJlMXWeM1M&x71`3V=^vEpIKTLWs&zb`|)h{LaOxsSult?oUZA}K^ zD4#*;kjrW0!n}#EC)pAbA3>^p3HGvx!!|*OCCNZyC=4oFl;-b9;fUr4hSV6lQ0Kq+ zK{?GS!x8js?v#oFV=MIRy8qCE#gkj=B+O=)I!PbOQzt>^;sZWE{y)9i+Zvsa=FsU zM^1j8%vVvYqmLl@_0>3CRT?MHgBs-bKIB+XeK0>#Q{Sq9uPAOxXdHdUN`D;BC_~v?AO7skM{_Jq$ZcX_sR&tbbz;=$}e)=Sfyw}k3d9M4pev0b> zu8(oOmg^&2U&-}ht}o;Iey-PXeTeJzTp!?ii0iYFW|Dm!A2hy^>(g9c#q|Q$ujBe9 zu7|lYF(2Q=^+~Q*b3M=X)m$IrD(~h;xW0z#!(0=t@8>E9=ZCnCxjw*k!c{3SwlS(OPQWo|47C4n9`#;i> zgyZpZ!SDO|ov>ilb%F~EMGs7f5ia9j_Oh4nD_$CPr~SKRjyk?XDxm_XdK-NhNt|JY zWa8}K{1E%QUYr$jEXz1z0z+9s0@=kZW!w?MB|D^QBs;XMu|Uh6R7-~`>mgdt;}-Xz z4x-YeNmTlzM8JO#N0gUA>Fnc*DCdW=mv(+U;3BsNLwq zEEO9Xg0^-$HHeOj-ezMwWebEhjE;J&bsS#k7jnk`GS^cxDD&Z3(i6kB9~YUT-w=)y z>-S9>WGtlzZMoCSKtJp|Iq1O91`NT zyPmx|sGptmJJ-_#q6xNEGn)8)M!e){;^it8r`M^-vZFtV$nSsOhX z9a*wROb`BvLMJh4bq2YG@YlF5(WO@U73hEA^$$IK{@lC1>;4DGTS61zEzZW_?c-?X z@cwg^`>#~)-_3eySpMVHFqSX*--6f$|634y+W!{Bp7Fm0v1k2nLG0Xz90CNf z2mEhA>?>E~E044Deg(#2UwNUi|2V7jSAfQ@$X6c6vHS|)<%)deaZaYb0%NhSyx=s3 z|Kk;)u`BYG$5*ciUarVj9+#SXfn{=NQ{a5%GEZaUvNqw;Q|ESsOx#5?aeE3o)OrKz zb@Vh=xu)FrS$tl++BN%x*_B#mb}L&1>o+ETgGB-b<2bt|%mk?KDHEVf7PlyqKKO@N z#jI>#KWa6l$<~QaumYXc`GHHQ!}6fzg2p(CG1=X>N=rI^?TAdJT03Gp%hryZWtIK~ zpTv~J8F}6H)yC)RyCG8F#;5vPfx(c~7LV+d|DxI$X1+Fiu^NHR0Z6^=Cpcftp0OWk zwytLE%+Oisq(AZsuqIeF!PMsOT?h2nLR7(kVPn&4G3hxhPA$l^G)Y;bXEddc;$iK6 zcKB(_60&?h@{dQ!n#@yqTC$ZVg{}O1)R=gKmzC4_DAS{uX@Oh4 zdT>oMp-0^r7_HHt+A@|#;%5L%2-r{ai*Rmb%dPxfj&+v^ci8o&9oqA z20iK6Yx^0eiH0#QhVdN37;6~Jh&xPw(nOP{+a`mJv9=^_L|T``gH$%VS>%32%+rR; z)4b?c_2h0&#I7bDOp7^H$gEiFB|eETf|jp2awlU1j(N_LU&3O{MsP26>uId`q)$KNcuattO##w|G#`0N&l5={Nyg#E2COEY$=_+=_l5Pawo!4k-UjJ}J z-t|xB3Xq`bINk&f=0g;Umk$WV51ULci1=pYYii;-@NkN@Qkr^{9uuN3? z2s?_-&&b#ESa4lrDcu1}qR`Y)oZ-NF$o|<9u{x^h0GY!}^voQt*G;al<@c8x(a){=-u3E2o~)EbxT0Mh2XIxxMm?`e&d znVM>7z|UMnHTNwleO6R<^*6Z$3^BVJ>4jfh)V{{hjm5gdPF&hbS~u|tgx>CNT5b_l zp|a;cRVn)!?b^ArpHuyU)oPw(0q>;G;`L0{3Il6Sx4eQy4+Yt(#5k5^z#JNB*O6vIZsCU&o4wK zs=QU?Y$V(C(B^`-aYFvgK9Wf<8lwHDAk0|;cwjbBLC9ZJ`5A;y`4ZuODPrf#omTP% zmc8|p<4V40KM@p`=VA|O3?4Lh7Q-%3Kp1YMpKHBAPCU?={&>)pxcb~%$*9JE_p+FW zFbDKxpwcqsZz8x}gWwXS{7y7hV%tr0+cTG1fipXv(zFXSci-khh8Nqo`Eq`zotvkF zJBfrpW!qV7A8z2-s^_8j%Ms|L&rj25TyFSv0U{!BOfpB2Bt{r4EN7cIf5<>bHc;)} zs293Ejl{-sSZN=HSp+~?BLZP9;v^WerD!wIJ+}GeGm&9LRtYU}XvA^1Eo%7rOzSSo z?ks@+;*XA!SF0ZcCwW}bYX8Rg3o)w9{rn<7A%KJf3x9`kjD!^SP6HL?L?3y-PqEmm zHE?;V8fWCf&-Mm$P3U$5(S#yy9hp-t4vi-Zqkp~8N84${o+UsxK4 zEt%C=7@5k@tlX!o7S2J&;G^LfMb z!Q{H~L|!B7%Hwq9RnNaGPv#9bbVag&QEkFfA{e~Nf7ZJ?{xJ5fn~Q73*Bzp4m9ps z=H8ja8+TeOY;(B>YJvPmciLVfK8EXwd_J&3r7TEU;BF-T$dx2&U6tM?Xj*%1eJ)=8 z?n^)Mybz+v3z_RG3u-Rg|HeOk9n zf&A^Cy0^AL8vAF@xFXr@U$`P2|Mpq;HoN^Qx9T8>oG_no8_0OhX=@%-9!`5F(>Fm8 zEC(cudT%;k^Lv5m4;b?+J(zU35Bifiooq2xAwv z^g4^^$bS$2b0=E34|u8-UwZDzci?$?@r?(4L*dat?bw);`L^XjDhCKoEnsAd21q*h3@2?6 z2fd#=*IAb{I=AOT7fU+K*0DD^^9A?nzipqogI63<1#R}y{#jmU=hku3=|8~hqIVMO z{O!)KF8>q`)fjk-XK_1CI%nnV&D@S9E3|ws9YV(KqkMx}T1(DrQMh;3vQ0;&DxGu) z-6TD89MQy7z)3_@NqgKwj_6rzzNW(u_#B!zYGPJb{57FFQ7%Qz5#5tCb6BV`WyO;J zu^Z&~+ZLH>ZNEMGNL!#bX_B6MClj~$xB!lWHv@m&sc~OZ4fl_y*TY(`I#;x*PZv@e?9?1)nleg2UAM=nvtJ z^w9d~cPN!U)m|UHj~_Uk4uA2g_&PF!<8C?tibppJD4uW0+jM|07zr7?e1EOnHE`Z? zZR62~+_-(R0&-T<$Jn~ldbQSDEXCys9`bGe@A}x*_6xkU z$QbCa%kc=oKrP+z3fQqxaHqqGa4*uKP`w-5$@m}$T=B@0V>O#?TJ!xxa`5&2@40{S z@~>|v{5*H=tIs`m{kyq#{(A%K!PhT7Fgf^B5OapkCMML z+uvVDaoHrYpT2cH?cK?<0S_RIA&5a_ibSvgmc=#@Kh9e~DI6yc~go8AZZ{k3CQgtviezBbED5uE%$p92~?*MweV@kjZw5>6eib#i$ zE8GH?p%_M$aN&a&B6s~1EHAuHt`jLO@~O%7$PJQ9a08~P&kvBzkMtAK=s(b14TGqm z+k{7bD@woGT^}c0pXE9Rp@WRObTz)bUL9GZzlzh;5ISKI_nb5~6OLdf!RgA4o&3M9 z{pW7oZ~cW?b!oS8_>*0@Jo-duzZ?tgCXGfv&8;>$?A^z?vDr$5-9j?v(Z_fI3IrbF z_^em@I_h@cWU08v-7HZq1h z$0!gAnpWxNip10o1=#tK+UXKwZ%HVYHpob1-xy`z*nKBCT}gkP{x9n~9CfIHd|7K0 zue*DhgEa^)(-A2?^sRS?o{0^~4}K*60-8~T)5YbRR{H7vVPR&3JR_vFjnRk?9#sTW z9b?ARC(tuGR*q(#Y;)yH2r)J1Kc)&;*H36!l^)1jTi?R&ep0CFn!C21uzt>ZqSnr- zy|kgfBh0DudIsVU8TM=+&z`WFth}?@iGWYKH?@8SL-q?Sb?EoM;`dVs!9%W~~X7trD}5wE)DZme_c{sKL$W497FG~keI!VS!_tB*H zC_)l3Irysb&tj=CJeIsLM3Mz86-P{Lg_+HAHd!iDm5NXt zs#=1o}1ic`vo$fnroa2B?#3b5M)%#Rhr|q zCD--%H@?>&fQM5v=a*$r`+_rp$h-q_x{@FI$^57?!w6%sVUq+c{o;}%Op~{OhW_T; zG?ZgTMVxhN$0JX_RVXEVykLn+gi!G4=By^{YBqMDE#|IXgoshgA|(H`CX0a(akMK+ zBQ1Z)PF?mGg#Zfk^!#TmMYahN3a}9@ly^Wm`8-cgb|FYAUs_IgW83GLd6~^&GR!>V zF(aA0%ZnPvGU}JnEKAH9O`k9yE$8L5LT2ii z?B4gK{qcUd9IK7YRfF_?#3gT)O*VbN|K5`ls?)|)ig+9o4M9?Ogp`^jrtWIDI->Q5 z(`3|RaUx1~pCY1Skbas50OlT!q(#tb_xo_`7h-QSe+9?8XF&u7c{bD?ve4Q)u1V!w?!CeWNYcLI%82ID@tVSGe z{quO4Yx*R`%v?-cqG}Pgd+0DqbR;0ShU`u>G9Xufe1c97hwdAnR5wU%mQ2`^GoQu-}6>{MD&eO9aa6C_;t<{nQNP3sBLkxG~AY{dt#}7mnf| z0TR*@Lj|F{lFMxho!PBP&w(V-;oMQ53aWjGQSNNOw*(B-=BOm*@;_M`w;DH}IFC^79m$VD%n==~Am>0N%jB zwB%)No;fLF_Y4@v@t>9F!>xhYPX2b{_7hw18bBc$#ulOx90u5Nl(4HV%=kVsTeePv zJPWMJdunruSJ<+fbInmlV>)_0f9WVcPwCuydU;eMlO1p!FN>bW^z;>!!$!_~I@v{O zf2&ukU zEQanXDi5%~M8*b#U4lV7idzr^BIp=+xQgisHXEnh9_O-}tR0hC&dcNEJJ4%Uw7re( z?a=fZYf#K81eBgF8yITj_?rxFjBU-6UmiKE5Ibc!MgeQ}0;vQ^a`o2JH9)Kk*p)LU z$p?2ZSt)~dK*58+-`j<(Tp$~-_iL0wS?`P{LI=5mN_TU0ss%*R)f&Pc5bjOiXEGQA zbV71@nj;RzUYE!Z!gE0lM{wr2`)EW4C^U=$74npa$JZ3Eh4KCHD7&+ZXbFek0!Z zH;(u7n}GLytHLU?BOvI^=!9IPBO(l~WW)34%EpYw7Fxj0)(u;lSG>}#=^b*H7NoR?S>7aV z>CNb8NfeX33VEPu40crT`VdQ2Kie5jT9V+tLrKI(@S?r7#eS3^r)+QE5Gk(7Zjx8h zl+3s6{*c{Ezb+h`v=F3JSAr@nmP;bqx9^zX*37OBPqog{nk?PP@&QoCD-2WYq#d>q zVI#NN5Isl8V&9-jPp8j(z-DaN$M$uqA`SeFh(d`|DfXXzu{~L_4pz6nIoy)Lkk>&k zXyqb*Ik1DJk{hucF&Mo{yfM9>4Z+yo9)nQ#+af1}b5Ph#7=C_(f8b(vlePu9tk|kE zbX}eO+GAx!=NL;O0BL=Um5ha_UjRK>^2v_?f)=hHHfW`Ck)U74h0X#*~Vzd`k`} znFAaPk2wtwE$=wPR4*F}3_qw%7)^&Bh$d_?q)Y;si))jP)dL=XIl@8)0_WQ3sK5OE zRjntE+YF`6PHDQvAwMd0f%w#o^!hUfMf0mV#j4l^!IYBhs)`m_M`0I)2i>>P=3oBt zs@O>TO?*H{eY>y4>0kby`-*AwD67oqGpPC44i2#^08%p3Pd{IGt$Mj)qve4gDFZm!XF_oy$a&JRL0^Do%Hl$soAcl? zTUHo6q!;*@rwB9%i?fKL)F{P?Qb!7xogw7#zV#TQA`14r5Tby!k}Wv$kGJJE1Da8v zu>Vz#v0;BYTTz-2e=Y=#Nnn3dnm|j8Ar)yn&f@OdSar-vox|@aFeUxS#)>xWO-sKQ zipW|0(k`?47MV4SDTw5ttI^-pf{i4u0fLmI7ostShq5omvM~9bF(PXim{KqhB{0qz zmvpo|$dFOy9E7CiYLXg5$aFNet>lpS4&hkv9R`A=fFz2JR@RpUV^^syLkj(Xg9a?x z9{yRR9ILL2*!h58NJ8R9@~pZ54y%m%(ilUcW7))Ne3 zG%4vvr!pxm=RtRHYUOiPeU*I#F*#(*daXn$=)$y;G?~{yXn8cOG*G~nWK@wZ$<=Y&sbhtm zuq_Q+wmEmx=t_vjJIjcd57f|kW~ZvXDP63TF&AVxQ@4f(#Fhn(*}euzEZkz2tP;4RQVE7~uWrHhfg@u|% zi7GSHD3!B>))?AoDqI$jeUM~XQ{gv8f!rj+mDa4c2$o>Kn$dG0JFXBAvqY_9iAX{X zmZ%E7Z1iqNKbLL6Q#mtj$df}EtRlCN!q0cqCFKXq19MT%U8I*PM{A;uF@aZ^O zG`oi59Da96G9AMOiqPt0+T~Px`;{5#b~Bc{bfLzxffHj!CEn9A9_fH~&ig&6K&YYf+@aA&a4>t!S4 z9n6ZouPoP=$=EF#n+a=b%A`iIY=amw+d^x@HFgKiUao@PI{{Hz#ihw?*``N=F!ZL` ztrC1a?Ox<-SeNmO`cM+tVi_OkBBZX&=i)ILJTxh792*7$Z!ZF#--ODoz%w6Ro6jv= ziO(H1V6xetuF6^9g&&{$V3!YGe4f7THN% zUCh*+G1Ijv8hypBR3XrQYB$NIY)`u>o0i*#O7*lh6jd$Q&vH% z?wY4%6&QvhZlbi8&Cn2$o0y?lRLKRu56Y}cVwEYRpP?~V;j5Jy8oPpZGc@}`#t+}sR}mWvr0-)x+rkr(gs8`}Ed)|;VySIn}4r@#L+fwrA<;K zaK>w7u(T)QaJT4|b2$DjdKEhkr<;&K^VSRR9fza+Lk{PwN0Y8!SZTYJ1*Ts24EILS zed$9#_ShJnkjcb2W2tF<{ECVO#Ke#ptb@T ztiLiS3e-$Nb-ZB1`s)iZ1=ad%HVtSt>gh8FgMKHg_Oe7N;mw;_OV!PyG*$iwPfpCj=`pD|ZCe)F`k z(0T2o(ahh;OB{-CR~zSpHuxR3Q7Vx&a9hy83F`#$jd>?5LtA}`tbzY7c>MXLc(`YqOlpn>z%27(e<0}Arb8u&Kr!7%8-u+oE|MAiU1(0K!#SPKw>2Kb!= z!TK1K$Qn558Zb;f>@dO6o;eUK(xstD*2K35??37=5j5d~Wg3cPO`Hzib6AY%VRz7r z-NiVpqhXP(i8DbHkGfv?CJ@!Y#o7R2+yQZGCM-rXKi=7q6(&tGkiGI~ z$cy*Ht@x<^NewKm#BobDJ=}E%vp?f4=@j_pN81YJ2%o&)B~5ZwSBk3VEJLZ4M0`T= z`2CjZ2Tx0FTpP4unV_tV#M+tB#5v}XXjx=UG?@*)6V)a{vmtAu$!zewsOtRCY{;5uG8=p^ zs!fDqAZwz*Z1A0^YW+7GOPO7eHPB!-_%2i%2+W48fd;d|_n@lv1G6D(puueLJ*YMi zmJ~m*1(ReaC5a6R90-tYycyhHXD9y%53=Yi!vL6`hnR{YGbb1 z5VR4P4W%~bn+-o!Yc|lxMVk#G`9itRurG}AOX~ZwnGK(H2^|~kmCs$Y+3@R|F&mzk zZ8o?zW|<9H0}Z0UccQBG1G6D(puueLJ*YMimVG0SYo znrJc`etmOh1I^4e8+>odD!*zrWc_I{8$3|TZIsN0tbrX_G23kL*r+o4#mS0InGIlM z(`Lg5rp$&9UXz~>ssbtSN$GBE|dCi(`WYz8fH<5uPgVj_G|Xf-(>mC&6qvEG285MZOk%z zvIZJNneRl^Y6;Aqtbqoz$M>MxKw$P{4K$fOz6({GB{X}oCYsD1--&7yq1lr)(PZ}c zUd$3@SrbiWkMBjbiO}rHnrJY4d?%__OJMe74K$cNz6;d`0<$M;puz0%J*ZkOf!UKa z&|voX9#k6$%$}@)CbP$Pp=z^)W>3~cliA}tQEehLd$J~)%pTv1S!PexM3dR`o0~Ix zXlAb2<9ky!S*m7F)}IEm#{;F@M#=2S8rYE)v&|lljVhyuW={snW?8W*vxjCjZT5U< z%Ix`xi!ytH`hnR~YGbb16SNVSJ*770n>`<@HG62}qRk#5YEx#9q3eY)dwyf4+4GxK zv*(QY#k@Ld$?AD^luX(iM6b2r^+``p@o9T?^k$+`$KEZB_&bV{F`1a4^^@tsSsk~D zF`~UFe^0V7?y+<>D)0UMn}I z2cLP^eOt{H9l8(=&-bDgg->*DXoHp_TdB*kAH6yv33bAyC)_D6pYI7~JW@&wF0r}? z-Z<2V-F4pgam^vjfv(#K7PwWIBw_u|qI`9<-{xeftn{T; zNlffpy;ha>xK{U0w>omI?((gY|2oN9C8g=Xu+_=Rk@!&F?qRiit!wu>wYzGs3?IDN z=icns@G;g&J$f_m&G8sN)z|VHH&G%>L>#2ryv1Iw0)^YakfMjk`>HI1^3&C5V9r7nIrKoXE*u|+6h!+nZ<{>y05h^t}Ipy^=Qn1&3jko$5X_?Aj6D?K0 zcE0Xw7hqCln-~6-P0W3^&u3vBdCPj9&IWl-WGcvyI;`TBYH4Tw!&54q|>_Vtia&ewhY0$)Ga9zNJ-3%k(; z&9>`5?`B5`n=WkQ+*ptVnaxB0Mo%`)jUEnK;CHzNvv|VlQ`XM;pgO;+)tMWG)u-k~ z7lP{iu2yGe6jra974_vG;KvUI6yrDl9EhRR!1SEx;h+J2R~yi*DD1)XjOcvO0KcmZ z$j%8Hn6_~)1P$=J+JI(6VFS~%p>6;IBu4=PNWk3E!s=6Vp@)O&{H|7iOZn?lGokZA zb$(Z?e_Ofw)I8`yP@Uh^>db_~&ezO>%-zW2e=)3Y_&)fGK49Pn1Cj< zfT;IMSRTHrw8h*fYl|HIl1O=5Om#|ak-I5t%fG6$#T+PVx$nw)_X;laHM4H54(XUd z?3@y81WsqXrn&!v5T8vsoOQj!nFLBVwL6;ixM>0hO1m7Y<4{VPb(mo=bcyq2f|lO5-Fr)NfbB|kj>LfiK&vRi zzh(+1ps`C(#&T@9FJt*#=!|13>mC!zrY_Xu z7+qR}ZxzeoVYvbJyXVYS-0gPC{X|Ks3PYD{-AwUe>O4Rw=VAdt?<>s$=R*rXXbo$dthbDeFz9IMKYEiEh^IO7FdFUYKxpNxf9(kR!3H z6WfD~iCMJJQ|2P15YIK>&o3w`4&ewSN0M|&BR)@edK*f3mO4|yYa2Q&6)r&p@H2r( ziX8L@5+WCf11-vx9-BbqNTj;QoCaq(Za5=(okdEPE=i0+9`m$)hOZEKh@7Pa$-kjU z&T8eqd*4Pz9i(0l?RNJ8XL+bv(`!r+XM>EfdJeZp;PVm~Dr-}RTP&P1<{YanVYQcI z74nS692pW|RTL`&v4lQTB$t9!o#a%H)mDhrR)AHk$Q-L!c*1JKYr`sIY*QdRd0A&n zDCg0{ET#^ehko~*r!+WYOGBbDV(peJqPWC%q=iz_3V4RKO`~kjc7q83tbfG{Ar(kc zt%ba<#*Li-7IJD*0qFL_^QB3#3)UtZ_WcqG(}R zd!9w$WM+3}{sYk^I=ZxxEQLJFs7jBGXO{*4>Bq`Rr86fDyUQ4zz$D{Y9hTW=l$2nU zgIPR_Ei;Q}O;*Cwpi{@&GL^|lcR4ZAmFO^nrJ0hYWdv(|FFm#)aa3ugw3kj;ISgr8 zhyykv_iRWKLmCn#7!pg|9PXKmAv9OA2WjdS^(1_54C%2^HKAu%xq0 zLo6}lX?UF}3y=@0;V9D>eZ(lnuVXaCsMs!3j>_vX=IG3fP_+YMI63uW>jMVh7kR7mL z<*{+pqCQ$GZI3w%+J>~`C1jP+oMzCF*tu%pB*r{|Nt<4m8Et1sMtCn2mRO%`(qqCB zwnW2gW3&Z!3>}ZflN}!0;W180-w_*r=2J+*=f`6u8`(@$77oRDs6aoTg9ZCupCO%{ zq0A$ReALx4m9X-b3z2VYUZuw-+Xu3ZryrvmSqS$=F%w<%V{Th$;gImZw-Y)uxi92YY?k_j7&EI6+S5N?G+zm|9gb2=N+t+T*Zr9~jq=2?nDbE;Gf|C-UG)ZwpDqry9NzHS>=c^> zOe0UzYb}9qxzWn&E5Kp6R;JO;ww+t4Eu6myaTwPypm36#ehi{ z(F}f#!bwuwMt}>|@$s^4BRE+)LPNN11kS0=w-Hu=$I1q$x(C|`Bd04@v@8|ZC_^ow zpMp-BGWh<1N z9!z`GZ!gD3IZb=SQV%_^+h<+?Pwb@NwiayGDl?GHcB^0EkY1LC-eFX@ix!>PL3IEN z#c~X(c4OM+K(XY$N1hiNU-UaSX&Z~c){{B8^yE5A*u!xv*~Lk{r}1gvo%+aA?S^C6 z_l9Olbl7oX3o2Q%hL@$^w5Q$L5X``ujUOnsX$#Xp_+4f|)+vA=bZX6YO55rxV-6K8 z7&-D^R+nfp8$+yB)Ee+eiE8z8VV&=-%0^gC`^T4C!{HA4U!v%Dei)B+qP^Os`OcFZ z=xvtr8f1#yyo);sdUq}v_VC~xC&yQDX`dYLZHqneYPYQcRezf zVCOv_P(Ua43pZ{6Q zs5(mtHp^~>9r4ccMj>EVK_E)G=B1__V3o#7+mP%GVz%)G-r1anbr;QKGo`EL63(jO zZx5x5fzU7&1E@9uZg?$WEE9t2#R^atXbD1W$#__;pu3o*N8>%Z#MIJldgResaedB=>jJVN-OpfNLBVnfD{a=`JZjtt(GA*R9zqi zc{@w2!PElK797<8DL9q>Eh^q5M}LVtOpzM;rym=BtB>zX))=+AEr&E1FOANk@AX&H zGWw%#v*7|M$hTq01Er%jDylXnu4Ff~+}MgWhQ+r+B{jC<8^dKxjDfSQBTNWQ+cC2V zZRN5Mn(dAmD?*oI%iWID7IL=47>VFVv+N)iXU_qV(vZ!XYk>BO;8!YbxUtQz>f`&8 z-5zcOAz>*%f;Mm)k+7<7OmAu}2*e;EXl&J*B=V?4h+wop!W!ifr7FTqO_Cn-UHj7+ zw=*L!ZeL7>AOUN!fkyv@;nIZ08gCFXdn95RjxHGEC8=jv^&=2K zR0Fa#^sUHrFO~KjXX7oG7FNYtaK5mL10zg@$y%`1u*6!ctc8fRFmdbFtp|qHQe$fw zR+k|kH3st;pB7l%!^aJ)0K%~rSe3u!G**{qW0m>DY^<6DVGXTw3^_}XC#=2HY7JXX z^NGPUfpTau=WlK0n%-M-dQW?!P`epJ2-p&r7*d#4R301jkzI9<5he`XRAi~C_6Y=z z?2PHg5aPgI^A2++!DR*&lY>f(=sYhZ#BnBRpm3z%g49RD>zV2fn#|OlQ+7BVx!Glt zvXjC$2u#~Z45Q9Ga9Xa;NHD-4^`>e87}hFGQAjdij#TXcdB(x`j)ofcMS$NxG}Q1~ zfRP_DfSa}hb^x=*0aMXKPz)Bb^k_A^*Gb68N zOqEp|JDOaL43N$W8gmvLA>Fdz)L3T0p;)AjvEcS)#zStwVE{|~WNKyr=WD8f7Mm?Q zwSO{OcKXN(Q!_TTTFlf8=n+b^jpdM|$)Q`C)STR*W{F>*#wJ;_lnnx>POI2NrlL=f zz^l#5W;9pX7>C&AUz4(#VQop-%(S*pu9{orOA;s&4=7OL0mWt~f>*#p-{dsxRSvC} zbc@%;(^>*Jn2k^>Z7SNS9Jr#=6uMa8VFEDqqEI=ei%~h!av42o>RG59baAr)F&~a* z0RnimX|@BN%#}UZVl`96?Z0IUT3eNRYSoWutBHD?`WekrKg@RKsUP&)m}N3?*;Rfj z^Q*A}qd}tAI ztY|NuVY{I4G$GeWu$^HwB3}dBIclz;rHe^NlRg{~)aOVS*1^?v4uI1v44YYp3|G4% zque#z#Av?n(>!b=u$^Zx%yJ zu3t*3$ND9bePeG5%Au;_Sb5b#j1h6dOq zatfYK56&>3ELbS?z%B?ks~{F?tPs*bRzYBCtPp}Fs~{3+tRS!$;5#QVE!`M8vnrSa zkpxG#sL-8N0kF6)^n8U(($J@RNh3?j`m|7dg0mJih`I_H9c#;D^O7bTtRxK$*Aq=E z>j{!3tKbnMP7ZSbc>V2&=C!17YD}>0*Dv0|U#}Fbjt03-c ztPmnIs~}`HRtS-qRS@$vRuD3cTl**3`*V2c&#IuX4y&+OR9KuwGx z%qk3v3d30yv?pX0mWm2Xvnps}XBC!<3d^%9EN2x~iV7>UDzHE2zOY(USe;d2l?tKw zD>2o3%tnke8;2w$r&D}WSo=Dia{A{1g(9$4ksFCx;>O2_i6&;8bwIA!fl><$cPogD zKt_W9hH@sPyUrZMBxP)}1Bv#_?7-}cG}Ou(YI5XL&%zJZmlONir?hauq{}`v9DdAB z0NyMpVq5L^AIv*e&&|>n<&M>tQ^z(1TFDb@5QA<$XeCUpAZV>)an`YV6ig4GzFgk* zGOGTlE2}J?LA6TMkx^~0f-0sp5M#Xt3Q;wyoI@3~#z1G43kN!@oCa!u!`zxxjxw$s zR@SU?67M-Fxq|gvDzR=K#-?g6mvO0N`X)%pHB^t%X$aSsn}%?GxoHU3mz#!geYt4} z*Ozk;h5|5OXN`9n!1e9rpe>X7r@JzG;u)llw?Ku!ok*zvObGs2B*owSs`Cho6iTE9Z=q#&WVvtemq=8q3Kfv2xBNX)Gs8 z#L78Kq_La~5G&^lkj8SdJFJ|uI~vQ$+^}-a+-NK(D`Q%z{%BXph})c5Ifel6`Fu^J z2#D5eBJ?K@*ehS;ksOV5VS9pAs2~p)6(_dRs{pC;J6qCaFSPEl97*s;HJ>UulEglx zv8D2XSz$5D_d%j#+wV&w>4WHW(o*QA@6;F;sP>pgwf)roCuUz=UmCk;nWQ$`#ckBP zzHsbPb2)rN;=;G3<`VSS#4UL*_#h^w=6bGuioDJZSzK5j(0fIEgRLOPN@H>^m&iIc zS}0@vw;~ZHHo_SeLu1kBq9ao+Jx1-LIqH#b>b$5Ix)@mh9T8Lsa#2J;I^YTsboH1t z%yo|kkSKH-iyX!-1U2wxXUpaV9}r^(FP7H+H%CV z-zo_yY!enY?60|-Nk@Y!IB=0RihN!<2b$+r>78*PehO1=XbgBdsh7h=HRqh?K)?NA zK9iFr^_56zb+2m@!{#8_jfFj`%k1NH==Hrt?^$_}v&x=Cho92*SjJ+Y9ofdxWJ(V@A- zvYcSzbyPw*NC{6o_Oz4}%;^j^$Vvq+B`KH_Q6_xlhN><)kv#lJUrE7CPYj)&Akv3T zvx%fG%Zlkb0t;zPuhQ2c5#y$l+?mXZIj$l=)rWu7WmZVkC zFNG?yIM7I7Xge_Q-hrV#2Mpers*cx#p=tzpFjPx>FtC3ZfT4{Ek%1vf$S?#LDB-}s zgDM#GAO{0bQ+oOtg$xWO2*fDkmmCDZe4AO4&ot)Y;q2!r8<6RSxIl+@80~|`k~SWe z`57v!6!1pkqPB?ZU-g86j%bkhJJ9z!EQ3i0i_D@dNXS>EirA>ahqcc{ICGn}1-HY* z`Tm{bAU$xTGyMF^l!eTM#4=ojO^GQh3zI_{Br6uw!Jaw@OJ+<$TEQtwJn(Ur znN`S(3Y$|YOPSfun4mo`7xCj1Maa=xYCzUp$)m|eXeoM1k8LRU^HoaQCotPp3xtaYSZE$vAe zdjhdziXBqcq&FjFWpQw6&XhHAF0;y6YSYYWSdOEwj8RPdo8S`JdP3QaNV&Il`5c|mbV zFgz>IRU8(|({PAlpIOM5)%cX4Y2(w_8Q?p7>SfXnpT3|}{Nk5Hmyb_vc7WG6hAIr(1D5b<+hNNuy%tmU8YImTg6{^w<=Or6Znx zj03Fc8;jGnJj7*3Zs{9Jpl^tAQ69C5zR?439QyO{W){lz4J(E_Bi#NtWGx*tL{#c> zXgfM3WI=Sg#CkVBnBr9;2$tQnR{7bqOr_k{$}+bPd1{M!c3P z#UcV{CDER#Xth$JRNAu&4ZnXxwzl$AmR{M)4?7D?q{9SmV(qS`wJfq{mU35#+*XQ( zJXTu=~Pl0|J3LuW3#DK0!-vJz)WawdN5Fn%0uJ=C$o%hv&=;dQ_Ds) z*QWG47a9=pJQ`ikjoa;9ED31Y&IQ{&iAYF6X{8M;8>)?|^w`E^q4?8}FD}g+8yOXG zrUzb}v1n}b=~;!$^s=SC#YS|yq+y2JEeZhf}2GelI)gUi}}k-1nVS; zn}K!P#o5B3xQtl0ouDl|R2BmiRd9KDy+|vEU51ReZH|uH-@pwf1+LmOm*A5eXSu)x z{-VivFYw(B%Xo?Tc~qtLCCd2C=bD?v$Se<;j8~Sq3dHolNk_-+wrAyrs&S0l>{$ic zO?jG3p*i{Q_jg#rE+wGz#()yg$rxDCLiTcvvL^$b^K+nqy7vGb9T%pcD>i+mQ_!Ks zD}&PmFZ$8x>cwnh;72=3M`tV9tKge;ZJl=rL5wUz-92OSQ;p;HQApzLewmj|FD!Yt zMUJ1(#H=L1GGXJ~}QrD(gsxRj+%edMWniE~VQs69f^N-LzES~8aJ)~aycp!0=#x%;L!{HH-4P|~5=hF5cUag%a8O=n&)Q=fg!De4 zu{BS4(chVB$zE{1sn-$YMo?V?R(~Cvf!B;eznYcuzVqL`X+HmVla-vOn0iIMSL2{Bo2F% z5)pyKVXP4tiZ&4W$~j~bXK&H92q{&_9d)fNcdm9_llxjOca-cdkUP?rekAhat$~x1 zJDOY-LdVh8#}=YBuZ@%m5pA>!NSRV%R(fi@2a;*Gg|v<(*3ia0D@zPXnjyMF3AG4= z9>ZXh8({g`RE zBzX1J8z*ZAz#5wD9%a~5IuF!~aAvB7#7!LG%3n5BBFT6#M9w%eE=lIcW9ZA2Mk)P) zbz?=%DG6SsIhPGeNqR(QG}rUZaojG5A~t(SegwIsV2|MB3cI0n$P@t~<$F@vUX7>= zt-2L7`c}0&N?sPKtN}C^lH%Fz$d2U&>;=K!s29s(O~2Xi_4p#Ol-6Nvdfh?J(7LcB z7+Jshj!4jgzY!maZ}^k+;miiW7v4gd)inU~Rw>h^=H8 zF0dqy7nXwNT=F!;lPo-8DXznk_7}mDjzTqdBljY?OmZx#uCPQ4V2O+qGZ6qX$q+Cf zOT%Q3L(^DR67~UtOVL}yM>^3izlyZxcohE+c@OPkD|5UXM#a0vH3$7 zv$k?(RkAghmGvPlK8;&#C|L&P9+82j<2l<-mfeCJT-qUjsyR|zC0ZyLw?$)l*55TT zuI*fw9-A}o(vc1X@)a+NVINAMxh@@26q^VGY>(NnBTRkWLk zF?uQqjDnt~ALsN`e)Y!5ekWq~8$De;gPsZzQ_vGq+miS-(9^zYdUBckYUl|%$`rvh zp(4nZS*!GP5sE;rTANV>u`GeOoT?E*?N3qIuSBIFaj5JJb1b=D`P?VkWP$)YkWUQx zXci^Q@FaE&0#C}FiBSg+$C>LWzFJ&VQvmp!YH?<%!WL$;28`empA3K6;&IzqxYriz zz8^I)iW#sJls;$FL=QO_6DXHeQ>6KvYI15dbGR8;-`m;BxW2N$@?Xni?Oziq)_x9* zeZ>81qC9|JKj&7{I)!mf9u@zZNKx@~zNXMLtCoklza~&8qDy zs_mO!ZC_Sxe^G7!{A&BNYS$LkuAN`)+N|1jMYZeZSG#UL1OHRg+Ht1#WcV=+&<0zN zL=@$O6wE|z&Y-nYQ`fd+NxUxW4waSelFPD{Mqz7#b9QN_N4dn2;lnh^<%oEfY3Hre zO%DR}@%%wa4I2nh!}CkC5>O9&al5m>{Birwi4<*$)VxqlZ6zUaWsl;erf45D~&#z zUs`I+N~6Z+mzMUj(rB;wrKPm2G)ilJY3V8}jjozsS}Mv)qoU@QzOG5iWqAw8mDy&R z>72d%qA-(0twzqyThQ6bTfhRKB^{M0+74M2refA?^?!@yEqI-@Z|hKeJ1b}{{kRQk zJi2ixZm}@T?Gg*NNPUuXrRTcqYebzzN32ZiNPK$|4gVYJrw{$uZ&Q>wRCWZ?`|!?f zABsO1X-9}Qv2|D>c^&l^*4Nst;ct~QCBPAK`rwk=VV*s2H!Eb_xGWk`5Qjo#v)wo-Nkpx+Vgx$Fq5&nG)Vh-ys6y4(m9VcXad%qlL&KPx})?pDZ8f;Fq4YDH8 zb>gi3=oC*sof9D}l8m}ffzgr5C%_$!eU)4YVG$GA^_dVd<}_yx zr?p_tZIB6p@fFNjp9di-7% zSY-Got1h!aFcl4U0$36$Wj277yPB5fnGHB%bK7M$VEl!hC|{`gmQ)LOTRi65_<(HD zQ2yyiXNF1Svlm_UISs-hW>O)#qY3L_4QSqu84Va?G3TkzXAlyEWZZVlW)PwhN3psL z7GaSL+sb6njP320$>5T(z5TKngs8j-Y?m?^fOgw{=wOzy@31{H7yyVume=Pmpa|&; zoE&uA{i4ZUz|i7sXy&RgXVzQ^P)Fx0a{+{~ler*|Bevk%mw4ua9m3d2X;IExU=(3{ zxU(}CAWL>K7wlv%u!)jCE5b}oO`zELj$M$eqpeXZ?T&sM_fh%SjlS3&ez=^<0Gd-O z15bLjsSJ3xlgfZJKVQpK1{fisD@0xVYFI=j*iIUQEGxnlNn;R#pV>lP5`(aaF>FH$ zgOBP8_vh1HYFbj$~LAR_^U0{ML(RTv;)C#q)IIuw<+mBP_{AU zz{eU>4qSQcyih~;?KY(v2*5NqT0JN`H_bp$c5ae^ploA`f%i0~7}!BoP1cbBq%Rz* zJZUwh6bSk-H=#gKc5XU>pzPda0zuiisRV+ua}x;!W#^_52+Gb)A`q0Fn?it0mzS18 zfHMg#Yzw(qNlI+t#9bweB#T{f{<%F?t~;`L6L>@};%7x_xHTchx)UbaJ! zzGdGhB(9p0fk!?YV+kZ4fJDia9?u3KK@gh)7#fg`n>Q z^k2>p^qqkI%L&cx9MF%5RX{(NJfI)>*iXMR2jpXuCP3 zkoJg>c0kZ}AmF`1BZ;t_0|IZVR73Qya6mufV;4IIL0v$9Sj0e38odJgUs9vrasmB7 zza!dn0sWkJfm&rx%Cd4VY!H=SPVW%2fkwQ2ZQ}nB)hyZ61@u#dT~tRfc|bqXKmq+G z6vQA!KtG-9sdITizbI^4Hf+6se#XhdUCtPF0sUbS?G~HqLz1&?5YSK8@gMf1s}Fe( zi{zurVutMi9*(E*^DmB}QOXwb-RI}RmyWpi2V0Wiz4X}ZKFi#~kWG z6pw=D$Wp?|_c~Ms0^_)tGuWTRq(H`$fQ&hRu5vtQ*mZ2sx`6($$d(@6bU;5{C!jyT z-E=^ISj0rO$!H54CLgFBnI56AGUm(!`i(iaK|nv_E10uBpg$~AX}KtF70lROUC)9h|r1@wbm0{XqtP#^Lh7RhzW_6X;zN;`eEg+rlom6e|sAS^fUg#PL!9=d`oIO2J|yb{8qi_st@rF zizx9Ep54D9XS!!offV`ojEDi9~I7d2wJejBWJ?OWq!1?IghY0UE@Q- z+2AAX0h$v)X*b(;Y(#ox=Mp`R33*D^EC9^;2UJ2c4W@#%z5^J^hv#4=cSWnX?wgxFH{TQX}&dJZ}1wq z4|UU+cdElvbyNq>495d)PO6o`da`5x`S+>u9+XiV zl3{DsPB+(P%uf71y7X%rzmLrkdOp;JaE3*M{GIsyD;mEaf*+An7r!4CG5(wrzYpUn zexJ+y_rmHvB8Q`Yqel@3E`j<*+#F1}C|K>taQ)K7KzeB8I)h_IL=HvH+N}G@04=Qawem|)6 zyyExcOO4;B1I4bJ520;}-w(=OLj3-f@1h@0Q~Z7~oVoG)LD@@)-+%E8-Gj6#em?-y z-1z;V?A)O6pzPfE{h;h6#P9E*swRFv0O<>dDo{`W#`842W98R?+0b)#_zK}eQELg(N6q68*@XJ)ZGqAOJ~gN#P4(1DccMi zfJLioZ8mK%Gj%c~#P18~ zmn+SHd6sQ`r0>ML)J?}+wX{65|lb>2J!pRHi_S7oGjesj8PZA9~RLJ zMT{Vqu5A#%PuFo5_M@wha1V>*qsu~sw|4w~*mcbFy7>LD$d(@6bo@SDCw@P`9qw&2 z6q||c`uP2fIrI2^W6o_5zYhos=B$t34~ygo-X8J$A#ED@PRC`1Me@;Q%(=DW_rtDl z_t8zq2{XD}J=*A|BN4(P#+*~}`#XHOCFA#BOq4qvzyD$y-R0rSYWzNIX_GuW61QFa zKG-FG-y03}@%v$sT&HZ0`2Dc!4e|S7k(bWswr~7C_$m}>ef)k{B#++@rlP@4KsA0J zR_Au2Bd+okw@&~Dog9n7+A z8@~@A3RzwszfTe3_njPc-2I}7-)CsV?|TtnAHPqL+#aZgX`}NMUjZTP#P8?Pv=)M@ z=zhi2R-9PTnpSROv=T(qvJFR68po8CV^Qqh)U8BZ4~$60S*aAc;S8;nQK5c5VFr4q4tB|7MOm-Qk4;(+~2W`SL zMDVifLSU{`3z56HxAAw8igGkCcY`I1-)$waLO6-Gt%Pve_r9j_`xq3V=R;lmepp0G zXD5FDipKAU;BScE4~v*xFeiQ=##8)0m-+Gg#-uy(`>Z-_jre_VozDOyQ6#7^Lo41) zc@Z(}CC2ZAc`v~)A%5S;W=giNI@vx*TVuj2EVr1EYP{}p{E*)Os!U=p>zCb)OZc;t zSgsoPZp}#{>Rsc6f7~eiIZmM>%I)C$r77WWj~5W^)53r8jg$RO`0qF2e>E#IgF4~Q z+G8R7UGj!49KRpRjfVLBu!v~sdB^WZ&oh3X4i)R5KIU|8{C-gBdBpF3?Yr*BJ2!qm z81Lre_k&8$BYyv-1SF4+x$*k}WH%qi9aK^{oSiX`{h-q3*hmfo8tF_vX>CQf91RAhtm|l9}H)1{C-gO65{t?JVW;& zZHnIyz%)00KPWplC_E@TH-0}TdkOLTJE*FO-w#0g!lBBOR#W_b(1*G4`$5^c@%us9 zx$*l!*}3uiLD{+S`$5^c@%us9x$*l!*~a+&4=l3AkhE@Uu`S6=d;L~^*w0uGBkm)2 zkBq#j6?4xE6=lKprdFGKV%>BP!{5~Ea4%uXJ(O}&tINIe#c~hh-qh-Gul$DGujqb( z`vvZq?iZaH@z8ey^p!dRib|aT4W&*1>QW~FXQ>l_tkj9?bYI(vr0B#%g#t(%)O`Sn zSLi-~#39`Wka(5u14ta!eE^A9>%O)VHy54wZ&fJh#A|gQbmEBagHGI{`=ArI>OSbi zZMqLS@r}B#=|p;TqeK?3SGk}cx9dLW$1&Xp{WzifpdWYXKIq3AbRYENjk>St$7`ZD z6~Oo(R4C}gH|sv=#NX3>(1~x+eb9;jQTIV7zE$@@C;n&M*LLE~MJN7O6$(1>7TpJ( z_}_IObmH4|A9P|}_dzF4>OSbiKhS+`C*E3g;vN+WI&oU}K_|}YKIp`~x(_<>cHIY^ zc!%zTPP|k1t`pJgTVEf+y1I~vL6?!c>~ojIT@Ja+&F*pwyAVe=f~qIn^EbK6x46rj z-R0Zd<*n{=@9>wSh@Ad-KAa`_b>vPgNa8~=(m_P26q?A6Lop(U;|i2d)!ieD*hS)= z7kZEEL11w&*~2{=1cAjp1$B>DL11x@(9%6(1cAjp6?Ko;KwxpdlHi2{jMv9JPZI?t zvf57IZEE}T+Ve`!#iRE{`-h)UFD2->+|;^M!D@n$M(Aj%5jtAJI~^_I-K1-V_pA|y zU25c_q-)j)uqicSA~v8vU{&ggiCEW@85A`9w+>tt+(s4La$mwN_l!Kltq5hpA0Y^R z!b?MRMkw4HqBBC_-VmJ;3ipO+M<}Is5`83S=b-L`b`I%2XyGnuC(*oN;|hy z+PST0X9n;byVSGa@E2luD8BE8_Bg(wosQNIwr^MBUyY$mszm4m!a6QTO*SNlw>p$Ykkkj9$ zy?eQSANMdp`u$vC$n-(3V9~w<_R{}IIS`fpC$4+A{ux&glRm>0grw&w4+7H9a0T$` zXSo9K^lx|%pwqwQ3SiUcxB}4hbG!$T=@VQ5AmS(e4SuQ%=eXX^^<7*~aD6w|H*lrq zo49=Ak@)^7iH8Toz$_89ri6Zy^^BsoVTeo*Lib;yg6EKpJt0+5sgG~chmm2^A#Mh2J7Q%V+IMK>Tl&=(qDOB)M+g) zMsa&_Q~z}rds(@K?8oK5_7@F6$u+`Ef81sJqIFzI&;XMD9Sp6D$lnj8o0)TIQ>n*RFzqvYz*gHigxxnKMJw=WHb)-;}!%W6m; zNbmPQ^$p#>-|i<1o%`x2z`nHq1TR4rSc3pc$m*vFJ{o5sZ0KV&^}2?p(wkKQtXhNV zTN%YvwSGE+L{2Azdxi{mXzWf`Ke!#bx+D}mU_AvXH2}an_gX)G{QLrdE|{2022ScB zV){@Bto7WzcO!j&@&El#|K&Tzoh8~IqaAD>V;96~l6Pr|=G{M+XvZo`;22!>>MicX6xL|rDv!D~cAoHvrm5q>Y6 zI-Op3_VhiIk$M^N1a+U2hAQVbPDa$gAw6&we>2eyx#?#WXY*O5!j6}2Y!u}#j<2^) zQDtaj9WqwPC>yH=a5lOARLYhtIat!}od^7|_npLb2X&z%qlUqdhc@JWuE#@3!ZHvI zW>ijAoi5s=7f7YTQzW?$WI~8xRj-PvkO1As$Q) zGhKmc^JDCa2zMp)P#^0SXtO~XEti4mKh`xe=wHIeR`oG~^0Ivl3^*Y=jR6D-us3&} z>!c1)h5`98Mp*tXlhAYu%^=N!b{&zQjh`L;9FB1x<{_?U0{wFGvOA?W))EwWi;Kye zc6xLAEDB@|1tLRFRGPMy7Nv_8@Se*>(12FO0`f@4MdI!Q)f@D69rnyjm~;;?Ia^5Y zP5;lNdtlv-+8V+Fa3)4c!_+l|A#=*x51Z3Dql~_%ipNJWFZ%bONR z&%O8m`X`-@WrE<+C>;2*M5sxkGCh??>w8v`SMX$6U})mUfA`XyWYGd9*>FGKQ(~hW z(DuE4SxcD7RRl(ymOUn-AG8zkVJs>B$oi7#IR#NITHnSII#&-*X=iLW{ zU3EgUUY!Z1bx>=}+O*$&D7$D&N=rmL$14BjGV9^R;g3swdLpoww93s*duqe~t74+}! z+~*icB)_&k`iW@Lmy{H+@u2{0V1FT9U6(B?M07mu)^LHq-!xxAuyR0~MkNZTSeL_k z7zx7HMxwZnw59iZlYJ7mShp}j`a|D6O7@QaBhL57z{1j@_%hb?(`otkD1=6I02& z`KrB{ESSi@{;tV_y5E_e+F%sBISLr+rw=V-xPc(RVfXLjepv|XfTD%=eE{Iu7C={G zyF?6FQp5lYDhI2bG@rS^;kmXF*9_8xDW%O@x`vKSmARhRw8y-K3V16*nY7Hj1vy)3 zlUYmWbTZ0jEihoBZez-cz*OA8>$PSEBuIZD(Qr>NLF)}^)BXo!eLq_RW)3I=4;0-C zD5{l94hIxY00by*IyWUo;KqdvD6oZkgyhIXNido7K=ChU0Y#I!Wdn*>Pm{Syn{Fz% z90En%X3Qm^ls@I;L89RT6uBFkIda;_ahU8W$ok(w)_ZcYcJtn30TW}XM@CLI{rW-JFf=R}2)x(PsAfCy;Rcw0oRad|WURD26sC${TQ?lPo$CKfqTc zbB*{B;*fh-4wQB@+p-CbfFgtFG%IhXylIH31xREt018+eY=MaP$4OVRWU8XWCLaTA zy%RE(v#Lkphw=HWerQ(tkLKmw3Yza5)}*yxTJZ4wI}(48@iOrJ^gsme#_OocL6?$J zW$k>_rN+@Tu5si=#mZ#(x3(UM-Fg?G*oP`Vvl7QG%=J3qJg=#rzxd&OL-fhmFg9}l zHLB7S0vva1>tlSiSh$0JZ5V01vBE$&;Lb!(K60pSKg?YBTujc$rDYlZw5$^tjX)tc z7L>I6vw(>fm_v@#=7H&F>cKRx+Rt8EwZ|@^ny0y2TR$hHxWfUD#GktO7LLT9Rto@f zw*;ON;N6`5!1s)j-4d-bY_VI-o`D5gCnVyXs6Bpa89MGH33It|!lcFqyrE7UK-~2CE7shA*_~x2ZNyZTe=JN%=B|%R zZrZw}=`m?;v2h+|_PRumvz2w$<^OFQMc50Yhayx+XWd=<{<`F^BY)lFulxM$_3SYx7mj&8hET?BzgM9{ zhC8E=v^f%jsg&}ho_i+~OFAUS!RyfkPUgi})!e2FURI>hSY*#7Hc627j_aGp?}6bv z_oU0ml|^8cztAO=3VHLTJ3SS(b$&g)z)q$c_d!74u|A1O)4EJLE0?1cNzN=HiTO&@ zWuIp_#um|V66$R*A{*K8WdKIqZjIh6D*MyH`shJ+j@ii>{qd`Ye||WA`F$Pj3=II) zxsOJ{mKt~392&4^wLY0Rt7ecs%FT76YTxcC{Uo+tk55SBVH@cUd~ssZ(_CsDe#9>okkD z%o)=E@LyLEQJv90iSE$EoXxXA`Xy#(*K&P|>&v*pgzUQws5*W*7k1%Z!G&G8S8`z& zP6t}E3%7?0yKvWVVHa*c7dFJM=kg@&+`tvKwB0w*l8Dld#1}*cTqTJ`4wHi-2!1ZD zJH{A_=2)`aMO(>m^x3aVb^#iIxhT|)nVXE|jL2tKZEWK)Z|KsJrl>#|g(pl?2PK&C zhOTZiiMElLZ)7@gt@~a#Sz)5YA6PxP7EVi6*iTD_cP;m6ODi|r>7IjPUB&LWXDr1m zq(hN}PfgY~-nhKLY3pKYbwq|+#~7Nm99#C0-Og;F$CqTvF@-;U59W*+LH%S+6Z~as zSUO{EoyN7o#^$3k+elB`waoWX7hT?|OmBngYHqTu1j_7(U>B}wq%?{oh&EQbttg6Q z05=Ec4M_$-?M|dXr^HdAXO~n=G)B z!qmKdnu1!wX=#rneeNqPC)}x*eJ$V|rw0Uw2@h)rCRd47WD?sQOnZA67DPf4NwTJmz8*Ot7#Z6!dUO>QVA?&KwokD#@&B{;E?|~c)t&cy-uIkSr|Q(@ zRCm+2>ZbR3yMgKp*dmt}knT-&Hw_Zyn_=ehnV1>#e3|)psya>@TRt*TyNqZsqG_uO z#RRn>1R2w6i-;J!l!iE%5YrNjBofn!B*BrG7KmUZ^8Nm6@AsUyF3n9c&ph*d6n);? zzOKF2+H0@1_S!5e^sem?{}cOUFHPah1WNBPV;5s?&w@guH_NgfBq*k1SylR5`|B$u z64-;<-rssRZ-CP}-t|MF-`&vUvDsg18t}t_Cu-4AEI$6>zR2`@{X^Z`2fMcq#9Niw z7uZ#w8V%E7F8&)Ru#dS|U+G^312i4R6p8LuFEUxATUTBYl@;_+LYju0iQiBDB-^tC zRA0jjbct6YUig_W^$4pF1c0?t=?koWgaF^dJHV+o3i06qJg6)<+7MjH5JV|EsMF9} zP)X2RkUk{U+9PT#eC@vq)%;EGFhiRP>h%vcMR9EZ1hpcZL_FEt(usHt?rfC;hT0jT za&4djthh4FJQ}vU-r902HEbCq((7-9Ur1d; z`E*^=&x&r^tDhWlE0h*ABWW)sN}hlw12Ty?rhCd{%ll3tV_3(68(gFGB-S zB-KZ=><2D@U&uk53w&c@Fbgbz!ulECEcEYgKz<}OcJ0&f>K=QA3Q$fgN7AOCI6Ko< zLMGmW03p+tJDFzeuBnlqos0fZ6R$g&=*y8*6~!#z8#H8<8lQUidH|!f8U@kCBiN4o zoyaf!Ow5b}lX+IN5rG_ROw5`HBd|fRsRhtFKUskZ%a&5zQ^kSF2#>+jJX9~~dDb&> zGFOXG)=L|~5I39opiqV4H!*bpZD9b^)vYgb4>Nst`IuC6GAWg?B&;c)jj>rHo-1>U z>?s(YXdG+~o<#?YL}&1ZSy5mDE^2WZ4K!Dw)Uu8+sT>cP8y#du-(UH3~#b$oGDxk$k=*d_CZtqe0g1cVgZ=Dx-=)6 z0vsf2;|l@pp>1%R2@%tkZy3jVo@mw+vN_Wq`FrV;K?#9VP?|TGFoACGB(cEGVaXk( zcVM}bMgQPMOj|aYiGNEI|9tybTd;q%D)V-U3_bRTuQ$zJRzDE*27t#33Hv^Uu5Bwyn-W340?Y}=&t?qqO$$VHk2Gdg&| z=m^g=UQF#j6*@rpdu?K``o*svfRV{*K)kRq07c|z*I1iEP0k;zJAg{e%EjN~y%{!Nqor3ctY z`4Y`!x`vr7FQM~t@%grMv_ev*KANd*ZcXCOfil}HZN!OKe;{r}u~RZQ6h-X_U-gdA z6$DSE)0ZpwG9lmL<>L&ndY&Mi;HJk?0_E??Zi!|T2`b-1P&t{Qs(ET*l=S(Ot{ihW zpHI<9`bv`~^z0d|YeiGZggwH{F#AFKM95${3RX44pt;&W&q@#=Obj+yW-Vb9)15Yk zIbzVNLid3)x*^8SJ;B3p2z)>y6KbplIaV3h(8_&1s|McYp?)Mb;HQBWchw3{;tAc= zP-|uddU!7+SjeTPi9@VK<2-s1=VbfnEY8Vu9O6M6VitQgyetJ1&1!CNuwE5BSmODL zWEd=5R|Lssfhxd8d3iDV`pD>8>*MSlB zQg;}CjlKaS_*xE1kzGrY#FnI*sTXKunNNhgV3Y{Re>o}CQzwP>pAhJp9}T&az>qNN zj6WKUppqRx&;|5BUTQVU;G-L6?7)^@f3#17D}@2ZVV+shg+gsb7cfx#5jtXV!$&iv z`eI!NLXYs(E#n7-8j)beH-7K7f`#AmWwklg!AKdb{^KWAP)WcV*Vu`s zKoVHDPSs#l88{etwNknaY7xtl&VV>SC?e?)YkSaP8M*BRV)SCU4<^Qy-gZsU?$bei z)#?Wo8LBLn@1yCHHFB9>#AR}I?^CxfV=}3%=abZSDALxam+G#{>s76<$(9Izsea6s zZ6CY9z2oY$(@UBtBcHO-W{6lg@8kKXEu$gSmVeSd!FT!ZDyE2VmAJuk6C|epXQjs~ zTfx&KlGM-(*?=DBOQ;I*vo5p z**?|AB3Ykp&Np753hlpr{}%~c{s<#eS)V0yKE0)skfCt+`<&`FwSKSSHohs}cy_j# zac^%#xf%*^8@nmqoS$}fmblYOCHx!K-Wnm=Fj{)87SPX9(Pw9)3=cD?aE-bsNaKaD z3i4<`Gt;!{PD7Xb4=+Twem34JZ3l8Xzb?TQ^S5HY5j%0q}3rAjkcSESJM`2^GVO84A>Ag3D3wi z-ufrqpqdXiM;{+XqZ}%t*C7?1wwr_hH0&FEY;I!vjNku(Z-Aj#1XyDDeW=WNny$1d z4%&M<+2d!@@nML3-E*j}`O!+H@n)B7pgaoLfD$r2&}M8lq|0GTTv~bk0Ax$qE}bF` zY+#BsTeM5Y-faOfNVg?^`6jQSNn&3Z3Stg=W-s?CU zn*4ixRe_kF)Txka24eOVSICTvB}Eo93#H2Js*-p|`pGBiCQl_IFtoX8tYCrS=a!>6 z2XO^Z29KAuGz}oC)H_3|Z7L>_p-*dkcxlo+T&ciOwPT5tI7daer-FM5+}Um@Natea zsr4C{>Q%q`gOXd})#OUYBRcQO`1;grGJG_cSW7T`&CSZrl&bpqY*{rpR$E5O)^D)O zu_y7vtzS)bZN=+Qybi|eK)m+HYcpQ^;M8adrFn#c4Kh^|@jDI5VA(Oks?o#(p(@L;6d3 zUG3&>b7;vWYKc&p?3X{?04fq>t74$^&Chyfr1ULx5R)VC+xo>i|J}3R~MEx70q8 zIHxx1;3FVdrzRs+Pvs}k&!MUOyXxgv7dcBqqq~pxPIcc zjE=0CYFoY~j4RnM&rg_=m*a+XG+(C6W%=@{Hh7@nJLlXJ$iB%fbIT8mo%_#M@vv-) zRTN%rQ~7dQ*gut@I>r7)UK|+Px^|cZsa_u#yXfv;`s`M;>Si zGO1g8VC?fhSV3ZHai<;_`{pnF7apt;>)mSmNaEG*Gy#i`JOH1?41DhtZ9^KiMy%C~ zqNvmKx+rS1V879AD2mz;S`>-`nuz@B>>FS45$ZirfqoB+-T$sW9@ZQfd#rlq7pLj+ za<|NqQ2R31cFvOU0ANBA=0{QeO9Q%|Zm+jalhUv?6#lZn2twg!6ge|z{UizH)!aIl z7lro}Nwk?@@f1bXrc_C7s*Sx+G(_FBa~d=)U?{20CFz>gdm-2Gh>GNjp(k28Ma%j?V1NS4mbGZ5TRTO`OQwYKYN(_?UKXjBSUCM~53 z(yrsR{Oc%gC6B+rV{XlrAa}9`c@bZMahkDVOZukf50_M4X3qJE*zu?)YW6bg?mS39 z6SX8twhbdgx>Sm{Ll=Dg>OYyRzU2aU%}3y^D5oZTjkiDkgXwE);Vr)XR@f>{{-aFY zO+{ef&WUM{GIeugg7zxaLxJD>hfn=;%qr&G3~xX3`N>bkwrC6XlXw{J|QH3&tqTy zmtP5QS86Lb?TkCee<`O!=2o{kwEq&dU*3Kcm{Q>Te(TXEVoNc|yP;6vjSoNc;aEQ| z7XVXkc})DHhyY9FVZz-e2{){nbCeXglDdIV;QK#)^v_~eVa(D{;N71&d`EmsaugYE z2zMU9fC-5mT}#CuLduU%zVjpX(3e#b6~f!^+;Hf9v6&1q%MMki0ln|(A3pHQAvv48 z-EesO!SDR(cO#fEb!kFhG=V&M=z=eQ?cMuhIc?^R6(RXoe)zUukF8s+&a6_kO8$jU zKKhTboE-FPh2+2Y&ZqtNMZ3 zoLAjxf*nA|<3yLM@+A>nx8%фCd8eL}3P~e|@>CnRwm>S(Bp}^0->yO_)XLOfq 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

    )h?Kbhd4yZ$&n*s(srzhJ|$e~@^O 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 %+(O7j=7MP*29LSi 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 N5~_V^w78|`{|nVGQ%L{- literal 0 HcmV?d00001 diff --git a/vite_vue_ts/public/dist/missile-120func.js b/vite_vue_ts/public/dist/missile-120func.js new file mode 100644 index 00000000..fc2a4eb1 --- /dev/null +++ b/vite_vue_ts/public/dist/missile-120func.js @@ -0,0 +1,7070 @@ +var ENVIRONMENT_IS_PTHREAD = true; +var Module = typeof Module !== "undefined" ? Module : {}; +var moduleOverrides = {}; +var key; +for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key] + } +} +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = function(status, toThrow) { + throw toThrow +}; +var ENVIRONMENT_IS_WEB = false; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = false; +var ENVIRONMENT_HAS_NODE = false; +var ENVIRONMENT_IS_SHELL = false; +ENVIRONMENT_IS_WEB = typeof window === "object"; +ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; +ENVIRONMENT_HAS_NODE = typeof process === "object" && typeof process.versions === "object" && typeof process.versions.node === "string"; +ENVIRONMENT_IS_NODE = ENVIRONMENT_HAS_NODE && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; +ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; +if (Module["ENVIRONMENT"]) { + throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)") +} +var scriptDirectory = ""; + +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory) + } + return scriptDirectory + path +} +var read_, readAsync, readBinary, setWindowTitle; +if (ENVIRONMENT_IS_NODE) { + scriptDirectory = __dirname + "/"; + var nodeFS; + var nodePath; + read_ = function shell_read(filename, binary) { + var ret; + if (!nodeFS) nodeFS = require("fs"); + if (!nodePath) nodePath = require("path"); + filename = nodePath["normalize"](filename); + ret = nodeFS["readFileSync"](filename); + return binary ? ret : ret.toString() + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret) + } + assert(ret.buffer); + return ret + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; + +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} + +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} + +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(100); + +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 100; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} + +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var getTempRet0 = function() { + return tempRet0 +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} + +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 8960, + "element": "anyfunc" +}); +var ABORT = false; +var EXITSTATUS = 0; + +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} + +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} + +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} + +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_NONE = 3; + +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++ >> 0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} + +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; + +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (u8Array[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { + return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) + } else { + var str = ""; + while (idx < endPtr) { + var u0 = u8Array[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + } + return str +} + +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; + +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +var STACK_BASE = 1398016, + STACK_MAX = 6640896, + DYNAMIC_BASE = 6640896, + DYNAMICTOP_PTR = 1397792; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 2147483648; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] +} else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE + }) +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; + +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} + +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} + +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +}(function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); + +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} + +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null : callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; + +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} + +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} + +function preMain() { + checkStackCookie(); + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} + +function exitRuntime() { + checkStackCookie(); + runtimeExited = true +} + +function postRun() { + checkStackCookie(); + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} + +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} + +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; + +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +if (!ENVIRONMENT_IS_PTHREAD) addOnPreRun(function() { + if (typeof SharedArrayBuffer !== "undefined") { + addRunDependency("pthreads"); + PThread.allocateUnusedWorkers(5, function() { + removeRunDependency("pthreads") + }) + } +}); +var dataURIPrefix = "data:application/octet-stream;base64,"; + +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-120func-v20220706.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch (err) { + abort(err) + } +} + +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }).catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} + +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + removeRunDependency("wasm-instantiate") + } + addRunDependency("wasm-instantiate"); + var trueModule = Module; + + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"]) + } + + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}]; + +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +__ATINIT__.push({ + func: function() { + ___emscripten_environ_constructor() + } +}); +var tempDoublePtr = 1398e3; +assert(tempDoublePtr % 8 == 0); + +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} + +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]" + }) +} + +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch (e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} + +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +var ENV = {}; + +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} + +function ___lock() {} + +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !!p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else + while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + }(fromHeap ? HEAP8 : buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + var src = populate ? remote : local; + var dst = populate ? local : remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch (e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== "." && p !== ".." + } + + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor.continue() + } + } catch (e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch (e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch (e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path + } + path = path ? node.name + "/" + path : node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !!node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch (e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch (e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray) + }, onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch (e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 80 >> 2] = tempI64[0], HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; + +function ___syscall221(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: { + return -28 + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall3(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall5(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___unlock() {} + +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} + +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} + +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >> 2] = tempI64[0], HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} + +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} + +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} + +function _abort() { + abort() +} + +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} + +function _emscripten_get_now() { + abort() +} + +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} + +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return -1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} + +function _emscripten_get_heap_size() { + return HEAP8.length +} + +function _emscripten_is_main_browser_thread() { + return !ENVIRONMENT_IS_WORKER +} + +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} + +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined"; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" || !ENVIRONMENT_IS_FETCH_WORKER) addRunDependency("library_fetch_init") + } +}; + +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch (e) { + if (onerror) onerror(fetch, xhr, e) + } +} + +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError : fetchAttrPersistFile ? performCachedXhr : performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess : reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +var _fabs = Math_abs; + +function _getenv(name) { + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} + +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone = (stringToUTF8("GMT", 1397888, 4), 1397888); + +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} + +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} + +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} + +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} + +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} + +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; + +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} + +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} + +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} + +function _usleep(useconds) { + var msec = useconds / 1e3; + if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { + var start = self["performance"]["now"](); + while (self["performance"]["now"]() - start < msec) {} + } else { + var start = Date.now(); + while (Date.now() - start < msec) {} + } + return 0 +} +Module["_usleep"] = _usleep; + +function _nanosleep(rqtp, rmtp) { + if (rqtp === 0) { + ___setErrNo(28); + return -1 + } + var seconds = HEAP32[rqtp >> 2]; + var nanoseconds = HEAP32[rqtp + 4 >> 2]; + if (nanoseconds < 0 || nanoseconds > 999999999 || seconds < 0) { + ___setErrNo(28); + return -1 + } + if (rmtp !== 0) { + HEAP32[rmtp >> 2] = 0; + HEAP32[rmtp + 4 >> 2] = 0 + } + return _usleep(seconds * 1e6 + nanoseconds / 1e3) +} + +function _pthread_cond_destroy() { + return 0 +} + +function _pthread_cond_init() { + return 0 +} + +function _pthread_create() { + return 6 +} + +function _pthread_join() {} + +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} + +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} + +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} + +function _sysconf(name) { + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return -1 +} + +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +Fetch.staticInit(); + +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "jsCall_dd_35", "jsCall_dd_36", "jsCall_dd_37", "jsCall_dd_38", "jsCall_dd_39", "jsCall_dd_40", "jsCall_dd_41", "jsCall_dd_42", "jsCall_dd_43", "jsCall_dd_44", "jsCall_dd_45", "jsCall_dd_46", "jsCall_dd_47", "jsCall_dd_48", "jsCall_dd_49", "jsCall_dd_50", "jsCall_dd_51", "jsCall_dd_52", "jsCall_dd_53", "jsCall_dd_54", "jsCall_dd_55", "jsCall_dd_56", "jsCall_dd_57", "jsCall_dd_58", "jsCall_dd_59", "jsCall_dd_60", "jsCall_dd_61", "jsCall_dd_62", "jsCall_dd_63", "jsCall_dd_64", "jsCall_dd_65", "jsCall_dd_66", "jsCall_dd_67", "jsCall_dd_68", "jsCall_dd_69", "jsCall_dd_70", "jsCall_dd_71", "jsCall_dd_72", "jsCall_dd_73", "jsCall_dd_74", "jsCall_dd_75", "jsCall_dd_76", "jsCall_dd_77", "jsCall_dd_78", "jsCall_dd_79", "jsCall_dd_80", "jsCall_dd_81", "jsCall_dd_82", "jsCall_dd_83", "jsCall_dd_84", "jsCall_dd_85", "jsCall_dd_86", "jsCall_dd_87", "jsCall_dd_88", "jsCall_dd_89", "jsCall_dd_90", "jsCall_dd_91", "jsCall_dd_92", "jsCall_dd_93", "jsCall_dd_94", "jsCall_dd_95", "jsCall_dd_96", "jsCall_dd_97", "jsCall_dd_98", "jsCall_dd_99", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", "jsCall_did_35", "jsCall_did_36", "jsCall_did_37", "jsCall_did_38", "jsCall_did_39", "jsCall_did_40", "jsCall_did_41", "jsCall_did_42", "jsCall_did_43", "jsCall_did_44", "jsCall_did_45", "jsCall_did_46", "jsCall_did_47", "jsCall_did_48", "jsCall_did_49", "jsCall_did_50", "jsCall_did_51", "jsCall_did_52", "jsCall_did_53", "jsCall_did_54", "jsCall_did_55", "jsCall_did_56", "jsCall_did_57", "jsCall_did_58", "jsCall_did_59", "jsCall_did_60", "jsCall_did_61", "jsCall_did_62", "jsCall_did_63", "jsCall_did_64", "jsCall_did_65", "jsCall_did_66", "jsCall_did_67", "jsCall_did_68", "jsCall_did_69", "jsCall_did_70", "jsCall_did_71", "jsCall_did_72", "jsCall_did_73", "jsCall_did_74", "jsCall_did_75", "jsCall_did_76", "jsCall_did_77", "jsCall_did_78", "jsCall_did_79", "jsCall_did_80", "jsCall_did_81", "jsCall_did_82", "jsCall_did_83", "jsCall_did_84", "jsCall_did_85", "jsCall_did_86", "jsCall_did_87", "jsCall_did_88", "jsCall_did_89", "jsCall_did_90", "jsCall_did_91", "jsCall_did_92", "jsCall_did_93", "jsCall_did_94", "jsCall_did_95", "jsCall_did_96", "jsCall_did_97", "jsCall_did_98", "jsCall_did_99", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", "jsCall_didd_35", "jsCall_didd_36", "jsCall_didd_37", "jsCall_didd_38", "jsCall_didd_39", "jsCall_didd_40", "jsCall_didd_41", "jsCall_didd_42", "jsCall_didd_43", "jsCall_didd_44", "jsCall_didd_45", "jsCall_didd_46", "jsCall_didd_47", "jsCall_didd_48", "jsCall_didd_49", "jsCall_didd_50", "jsCall_didd_51", "jsCall_didd_52", "jsCall_didd_53", "jsCall_didd_54", "jsCall_didd_55", "jsCall_didd_56", "jsCall_didd_57", "jsCall_didd_58", "jsCall_didd_59", "jsCall_didd_60", "jsCall_didd_61", "jsCall_didd_62", "jsCall_didd_63", "jsCall_didd_64", "jsCall_didd_65", "jsCall_didd_66", "jsCall_didd_67", "jsCall_didd_68", "jsCall_didd_69", "jsCall_didd_70", "jsCall_didd_71", "jsCall_didd_72", "jsCall_didd_73", "jsCall_didd_74", "jsCall_didd_75", "jsCall_didd_76", "jsCall_didd_77", "jsCall_didd_78", "jsCall_didd_79", "jsCall_didd_80", "jsCall_didd_81", "jsCall_didd_82", "jsCall_didd_83", "jsCall_didd_84", "jsCall_didd_85", "jsCall_didd_86", "jsCall_didd_87", "jsCall_didd_88", "jsCall_didd_89", "jsCall_didd_90", "jsCall_didd_91", "jsCall_didd_92", "jsCall_didd_93", "jsCall_didd_94", "jsCall_didd_95", "jsCall_didd_96", "jsCall_didd_97", "jsCall_didd_98", "jsCall_didd_99", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "jsCall_fii_35", "jsCall_fii_36", "jsCall_fii_37", "jsCall_fii_38", "jsCall_fii_39", "jsCall_fii_40", "jsCall_fii_41", "jsCall_fii_42", "jsCall_fii_43", "jsCall_fii_44", "jsCall_fii_45", "jsCall_fii_46", "jsCall_fii_47", "jsCall_fii_48", "jsCall_fii_49", "jsCall_fii_50", "jsCall_fii_51", "jsCall_fii_52", "jsCall_fii_53", "jsCall_fii_54", "jsCall_fii_55", "jsCall_fii_56", "jsCall_fii_57", "jsCall_fii_58", "jsCall_fii_59", "jsCall_fii_60", "jsCall_fii_61", "jsCall_fii_62", "jsCall_fii_63", "jsCall_fii_64", "jsCall_fii_65", "jsCall_fii_66", "jsCall_fii_67", "jsCall_fii_68", "jsCall_fii_69", "jsCall_fii_70", "jsCall_fii_71", "jsCall_fii_72", "jsCall_fii_73", "jsCall_fii_74", "jsCall_fii_75", "jsCall_fii_76", "jsCall_fii_77", "jsCall_fii_78", "jsCall_fii_79", "jsCall_fii_80", "jsCall_fii_81", "jsCall_fii_82", "jsCall_fii_83", "jsCall_fii_84", "jsCall_fii_85", "jsCall_fii_86", "jsCall_fii_87", "jsCall_fii_88", "jsCall_fii_89", "jsCall_fii_90", "jsCall_fii_91", "jsCall_fii_92", "jsCall_fii_93", "jsCall_fii_94", "jsCall_fii_95", "jsCall_fii_96", "jsCall_fii_97", "jsCall_fii_98", "jsCall_fii_99", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "jsCall_fiii_35", "jsCall_fiii_36", "jsCall_fiii_37", "jsCall_fiii_38", "jsCall_fiii_39", "jsCall_fiii_40", "jsCall_fiii_41", "jsCall_fiii_42", "jsCall_fiii_43", "jsCall_fiii_44", "jsCall_fiii_45", "jsCall_fiii_46", "jsCall_fiii_47", "jsCall_fiii_48", "jsCall_fiii_49", "jsCall_fiii_50", "jsCall_fiii_51", "jsCall_fiii_52", "jsCall_fiii_53", "jsCall_fiii_54", "jsCall_fiii_55", "jsCall_fiii_56", "jsCall_fiii_57", "jsCall_fiii_58", "jsCall_fiii_59", "jsCall_fiii_60", "jsCall_fiii_61", "jsCall_fiii_62", "jsCall_fiii_63", "jsCall_fiii_64", "jsCall_fiii_65", "jsCall_fiii_66", "jsCall_fiii_67", "jsCall_fiii_68", "jsCall_fiii_69", "jsCall_fiii_70", "jsCall_fiii_71", "jsCall_fiii_72", "jsCall_fiii_73", "jsCall_fiii_74", "jsCall_fiii_75", "jsCall_fiii_76", "jsCall_fiii_77", "jsCall_fiii_78", "jsCall_fiii_79", "jsCall_fiii_80", "jsCall_fiii_81", "jsCall_fiii_82", "jsCall_fiii_83", "jsCall_fiii_84", "jsCall_fiii_85", "jsCall_fiii_86", "jsCall_fiii_87", "jsCall_fiii_88", "jsCall_fiii_89", "jsCall_fiii_90", "jsCall_fiii_91", "jsCall_fiii_92", "jsCall_fiii_93", "jsCall_fiii_94", "jsCall_fiii_95", "jsCall_fiii_96", "jsCall_fiii_97", "jsCall_fiii_98", "jsCall_fiii_99", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "jsCall_ii_35", "jsCall_ii_36", "jsCall_ii_37", "jsCall_ii_38", "jsCall_ii_39", "jsCall_ii_40", "jsCall_ii_41", "jsCall_ii_42", "jsCall_ii_43", "jsCall_ii_44", "jsCall_ii_45", "jsCall_ii_46", "jsCall_ii_47", "jsCall_ii_48", "jsCall_ii_49", "jsCall_ii_50", "jsCall_ii_51", "jsCall_ii_52", "jsCall_ii_53", "jsCall_ii_54", "jsCall_ii_55", "jsCall_ii_56", "jsCall_ii_57", "jsCall_ii_58", "jsCall_ii_59", "jsCall_ii_60", "jsCall_ii_61", "jsCall_ii_62", "jsCall_ii_63", "jsCall_ii_64", "jsCall_ii_65", "jsCall_ii_66", "jsCall_ii_67", "jsCall_ii_68", "jsCall_ii_69", "jsCall_ii_70", "jsCall_ii_71", "jsCall_ii_72", "jsCall_ii_73", "jsCall_ii_74", "jsCall_ii_75", "jsCall_ii_76", "jsCall_ii_77", "jsCall_ii_78", "jsCall_ii_79", "jsCall_ii_80", "jsCall_ii_81", "jsCall_ii_82", "jsCall_ii_83", "jsCall_ii_84", "jsCall_ii_85", "jsCall_ii_86", "jsCall_ii_87", "jsCall_ii_88", "jsCall_ii_89", "jsCall_ii_90", "jsCall_ii_91", "jsCall_ii_92", "jsCall_ii_93", "jsCall_ii_94", "jsCall_ii_95", "jsCall_ii_96", "jsCall_ii_97", "jsCall_ii_98", "jsCall_ii_99", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2919", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "_context_to_name_6206", "_resample_flush", "___stdio_close", "___emscripten_stdout_close", "_releaseSniffStreamFunc", "_naluLListLengthFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_g711_releaseFunc", "_g711_decodeVideoFrameFunc", "_g711_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "jsCall_iid_35", "jsCall_iid_36", "jsCall_iid_37", "jsCall_iid_38", "jsCall_iid_39", "jsCall_iid_40", "jsCall_iid_41", "jsCall_iid_42", "jsCall_iid_43", "jsCall_iid_44", "jsCall_iid_45", "jsCall_iid_46", "jsCall_iid_47", "jsCall_iid_48", "jsCall_iid_49", "jsCall_iid_50", "jsCall_iid_51", "jsCall_iid_52", "jsCall_iid_53", "jsCall_iid_54", "jsCall_iid_55", "jsCall_iid_56", "jsCall_iid_57", "jsCall_iid_58", "jsCall_iid_59", "jsCall_iid_60", "jsCall_iid_61", "jsCall_iid_62", "jsCall_iid_63", "jsCall_iid_64", "jsCall_iid_65", "jsCall_iid_66", "jsCall_iid_67", "jsCall_iid_68", "jsCall_iid_69", "jsCall_iid_70", "jsCall_iid_71", "jsCall_iid_72", "jsCall_iid_73", "jsCall_iid_74", "jsCall_iid_75", "jsCall_iid_76", "jsCall_iid_77", "jsCall_iid_78", "jsCall_iid_79", "jsCall_iid_80", "jsCall_iid_81", "jsCall_iid_82", "jsCall_iid_83", "jsCall_iid_84", "jsCall_iid_85", "jsCall_iid_86", "jsCall_iid_87", "jsCall_iid_88", "jsCall_iid_89", "jsCall_iid_90", "jsCall_iid_91", "jsCall_iid_92", "jsCall_iid_93", "jsCall_iid_94", "jsCall_iid_95", "jsCall_iid_96", "jsCall_iid_97", "jsCall_iid_98", "jsCall_iid_99", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "jsCall_iidiiii_35", "jsCall_iidiiii_36", "jsCall_iidiiii_37", "jsCall_iidiiii_38", "jsCall_iidiiii_39", "jsCall_iidiiii_40", "jsCall_iidiiii_41", "jsCall_iidiiii_42", "jsCall_iidiiii_43", "jsCall_iidiiii_44", "jsCall_iidiiii_45", "jsCall_iidiiii_46", "jsCall_iidiiii_47", "jsCall_iidiiii_48", "jsCall_iidiiii_49", "jsCall_iidiiii_50", "jsCall_iidiiii_51", "jsCall_iidiiii_52", "jsCall_iidiiii_53", "jsCall_iidiiii_54", "jsCall_iidiiii_55", "jsCall_iidiiii_56", "jsCall_iidiiii_57", "jsCall_iidiiii_58", "jsCall_iidiiii_59", "jsCall_iidiiii_60", "jsCall_iidiiii_61", "jsCall_iidiiii_62", "jsCall_iidiiii_63", "jsCall_iidiiii_64", "jsCall_iidiiii_65", "jsCall_iidiiii_66", "jsCall_iidiiii_67", "jsCall_iidiiii_68", "jsCall_iidiiii_69", "jsCall_iidiiii_70", "jsCall_iidiiii_71", "jsCall_iidiiii_72", "jsCall_iidiiii_73", "jsCall_iidiiii_74", "jsCall_iidiiii_75", "jsCall_iidiiii_76", "jsCall_iidiiii_77", "jsCall_iidiiii_78", "jsCall_iidiiii_79", "jsCall_iidiiii_80", "jsCall_iidiiii_81", "jsCall_iidiiii_82", "jsCall_iidiiii_83", "jsCall_iidiiii_84", "jsCall_iidiiii_85", "jsCall_iidiiii_86", "jsCall_iidiiii_87", "jsCall_iidiiii_88", "jsCall_iidiiii_89", "jsCall_iidiiii_90", "jsCall_iidiiii_91", "jsCall_iidiiii_92", "jsCall_iidiiii_93", "jsCall_iidiiii_94", "jsCall_iidiiii_95", "jsCall_iidiiii_96", "jsCall_iidiiii_97", "jsCall_iidiiii_98", "jsCall_iidiiii_99", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "jsCall_iii_35", "jsCall_iii_36", "jsCall_iii_37", "jsCall_iii_38", "jsCall_iii_39", "jsCall_iii_40", "jsCall_iii_41", "jsCall_iii_42", "jsCall_iii_43", "jsCall_iii_44", "jsCall_iii_45", "jsCall_iii_46", "jsCall_iii_47", "jsCall_iii_48", "jsCall_iii_49", "jsCall_iii_50", "jsCall_iii_51", "jsCall_iii_52", "jsCall_iii_53", "jsCall_iii_54", "jsCall_iii_55", "jsCall_iii_56", "jsCall_iii_57", "jsCall_iii_58", "jsCall_iii_59", "jsCall_iii_60", "jsCall_iii_61", "jsCall_iii_62", "jsCall_iii_63", "jsCall_iii_64", "jsCall_iii_65", "jsCall_iii_66", "jsCall_iii_67", "jsCall_iii_68", "jsCall_iii_69", "jsCall_iii_70", "jsCall_iii_71", "jsCall_iii_72", "jsCall_iii_73", "jsCall_iii_74", "jsCall_iii_75", "jsCall_iii_76", "jsCall_iii_77", "jsCall_iii_78", "jsCall_iii_79", "jsCall_iii_80", "jsCall_iii_81", "jsCall_iii_82", "jsCall_iii_83", "jsCall_iii_84", "jsCall_iii_85", "jsCall_iii_86", "jsCall_iii_87", "jsCall_iii_88", "jsCall_iii_89", "jsCall_iii_90", "jsCall_iii_91", "jsCall_iii_92", "jsCall_iii_93", "jsCall_iii_94", "jsCall_iii_95", "jsCall_iii_96", "jsCall_iii_97", "jsCall_iii_98", "jsCall_iii_99", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_g711_initFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare", 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, 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, 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, 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]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "jsCall_iiii_35", "jsCall_iiii_36", "jsCall_iiii_37", "jsCall_iiii_38", "jsCall_iiii_39", "jsCall_iiii_40", "jsCall_iiii_41", "jsCall_iiii_42", "jsCall_iiii_43", "jsCall_iiii_44", "jsCall_iiii_45", "jsCall_iiii_46", "jsCall_iiii_47", "jsCall_iiii_48", "jsCall_iiii_49", "jsCall_iiii_50", "jsCall_iiii_51", "jsCall_iiii_52", "jsCall_iiii_53", "jsCall_iiii_54", "jsCall_iiii_55", "jsCall_iiii_56", "jsCall_iiii_57", "jsCall_iiii_58", "jsCall_iiii_59", "jsCall_iiii_60", "jsCall_iiii_61", "jsCall_iiii_62", "jsCall_iiii_63", "jsCall_iiii_64", "jsCall_iiii_65", "jsCall_iiii_66", "jsCall_iiii_67", "jsCall_iiii_68", "jsCall_iiii_69", "jsCall_iiii_70", "jsCall_iiii_71", "jsCall_iiii_72", "jsCall_iiii_73", "jsCall_iiii_74", "jsCall_iiii_75", "jsCall_iiii_76", "jsCall_iiii_77", "jsCall_iiii_78", "jsCall_iiii_79", "jsCall_iiii_80", "jsCall_iiii_81", "jsCall_iiii_82", "jsCall_iiii_83", "jsCall_iiii_84", "jsCall_iiii_85", "jsCall_iiii_86", "jsCall_iiii_87", "jsCall_iiii_88", "jsCall_iiii_89", "jsCall_iiii_90", "jsCall_iiii_91", "jsCall_iiii_92", "jsCall_iiii_93", "jsCall_iiii_94", "jsCall_iiii_95", "jsCall_iiii_96", "jsCall_iiii_97", "jsCall_iiii_98", "jsCall_iiii_99", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "_set_compensation", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_g711_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "jsCall_iiiii_35", "jsCall_iiiii_36", "jsCall_iiiii_37", "jsCall_iiiii_38", "jsCall_iiiii_39", "jsCall_iiiii_40", "jsCall_iiiii_41", "jsCall_iiiii_42", "jsCall_iiiii_43", "jsCall_iiiii_44", "jsCall_iiiii_45", "jsCall_iiiii_46", "jsCall_iiiii_47", "jsCall_iiiii_48", "jsCall_iiiii_49", "jsCall_iiiii_50", "jsCall_iiiii_51", "jsCall_iiiii_52", "jsCall_iiiii_53", "jsCall_iiiii_54", "jsCall_iiiii_55", "jsCall_iiiii_56", "jsCall_iiiii_57", "jsCall_iiiii_58", "jsCall_iiiii_59", "jsCall_iiiii_60", "jsCall_iiiii_61", "jsCall_iiiii_62", "jsCall_iiiii_63", "jsCall_iiiii_64", "jsCall_iiiii_65", "jsCall_iiiii_66", "jsCall_iiiii_67", "jsCall_iiiii_68", "jsCall_iiiii_69", "jsCall_iiiii_70", "jsCall_iiiii_71", "jsCall_iiiii_72", "jsCall_iiiii_73", "jsCall_iiiii_74", "jsCall_iiiii_75", "jsCall_iiiii_76", "jsCall_iiiii_77", "jsCall_iiiii_78", "jsCall_iiiii_79", "jsCall_iiiii_80", "jsCall_iiiii_81", "jsCall_iiiii_82", "jsCall_iiiii_83", "jsCall_iiiii_84", "jsCall_iiiii_85", "jsCall_iiiii_86", "jsCall_iiiii_87", "jsCall_iiiii_88", "jsCall_iiiii_89", "jsCall_iiiii_90", "jsCall_iiiii_91", "jsCall_iiiii_92", "jsCall_iiiii_93", "jsCall_iiiii_94", "jsCall_iiiii_95", "jsCall_iiiii_96", "jsCall_iiiii_97", "jsCall_iiiii_98", "jsCall_iiiii_99", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_g711_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "jsCall_iiiiii_35", "jsCall_iiiiii_36", "jsCall_iiiiii_37", "jsCall_iiiiii_38", "jsCall_iiiiii_39", "jsCall_iiiiii_40", "jsCall_iiiiii_41", "jsCall_iiiiii_42", "jsCall_iiiiii_43", "jsCall_iiiiii_44", "jsCall_iiiiii_45", "jsCall_iiiiii_46", "jsCall_iiiiii_47", "jsCall_iiiiii_48", "jsCall_iiiiii_49", "jsCall_iiiiii_50", "jsCall_iiiiii_51", "jsCall_iiiiii_52", "jsCall_iiiiii_53", "jsCall_iiiiii_54", "jsCall_iiiiii_55", "jsCall_iiiiii_56", "jsCall_iiiiii_57", "jsCall_iiiiii_58", "jsCall_iiiiii_59", "jsCall_iiiiii_60", "jsCall_iiiiii_61", "jsCall_iiiiii_62", "jsCall_iiiiii_63", "jsCall_iiiiii_64", "jsCall_iiiiii_65", "jsCall_iiiiii_66", "jsCall_iiiiii_67", "jsCall_iiiiii_68", "jsCall_iiiiii_69", "jsCall_iiiiii_70", "jsCall_iiiiii_71", "jsCall_iiiiii_72", "jsCall_iiiiii_73", "jsCall_iiiiii_74", "jsCall_iiiiii_75", "jsCall_iiiiii_76", "jsCall_iiiiii_77", "jsCall_iiiiii_78", "jsCall_iiiiii_79", "jsCall_iiiiii_80", "jsCall_iiiiii_81", "jsCall_iiiiii_82", "jsCall_iiiiii_83", "jsCall_iiiiii_84", "jsCall_iiiiii_85", "jsCall_iiiiii_86", "jsCall_iiiiii_87", "jsCall_iiiiii_88", "jsCall_iiiiii_89", "jsCall_iiiiii_90", "jsCall_iiiiii_91", "jsCall_iiiiii_92", "jsCall_iiiiii_93", "jsCall_iiiiii_94", "jsCall_iiiiii_95", "jsCall_iiiiii_96", "jsCall_iiiiii_97", "jsCall_iiiiii_98", "jsCall_iiiiii_99", "_pushBufferFunc", "_g711_setSniffStreamCodecTypeFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", "_resample_common_int16", "_resample_linear_int16", "_resample_common_int32", "_resample_linear_int32", "_resample_common_float", "_resample_linear_float", "_resample_common_double", "_resample_linear_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "jsCall_iiiiiii_35", "jsCall_iiiiiii_36", "jsCall_iiiiiii_37", "jsCall_iiiiiii_38", "jsCall_iiiiiii_39", "jsCall_iiiiiii_40", "jsCall_iiiiiii_41", "jsCall_iiiiiii_42", "jsCall_iiiiiii_43", "jsCall_iiiiiii_44", "jsCall_iiiiiii_45", "jsCall_iiiiiii_46", "jsCall_iiiiiii_47", "jsCall_iiiiiii_48", "jsCall_iiiiiii_49", "jsCall_iiiiiii_50", "jsCall_iiiiiii_51", "jsCall_iiiiiii_52", "jsCall_iiiiiii_53", "jsCall_iiiiiii_54", "jsCall_iiiiiii_55", "jsCall_iiiiiii_56", "jsCall_iiiiiii_57", "jsCall_iiiiiii_58", "jsCall_iiiiiii_59", "jsCall_iiiiiii_60", "jsCall_iiiiiii_61", "jsCall_iiiiiii_62", "jsCall_iiiiiii_63", "jsCall_iiiiiii_64", "jsCall_iiiiiii_65", "jsCall_iiiiiii_66", "jsCall_iiiiiii_67", "jsCall_iiiiiii_68", "jsCall_iiiiiii_69", "jsCall_iiiiiii_70", "jsCall_iiiiiii_71", "jsCall_iiiiiii_72", "jsCall_iiiiiii_73", "jsCall_iiiiiii_74", "jsCall_iiiiiii_75", "jsCall_iiiiiii_76", "jsCall_iiiiiii_77", "jsCall_iiiiiii_78", "jsCall_iiiiiii_79", "jsCall_iiiiiii_80", "jsCall_iiiiiii_81", "jsCall_iiiiiii_82", "jsCall_iiiiiii_83", "jsCall_iiiiiii_84", "jsCall_iiiiiii_85", "jsCall_iiiiiii_86", "jsCall_iiiiiii_87", "jsCall_iiiiiii_88", "jsCall_iiiiiii_89", "jsCall_iiiiiii_90", "jsCall_iiiiiii_91", "jsCall_iiiiiii_92", "jsCall_iiiiiii_93", "jsCall_iiiiiii_94", "jsCall_iiiiiii_95", "jsCall_iiiiiii_96", "jsCall_iiiiiii_97", "jsCall_iiiiiii_98", "jsCall_iiiiiii_99", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_multiple_resample", "_invert_initial_buffer", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiidiiddii = [0, "jsCall_iiiiiiidiiddii_0", "jsCall_iiiiiiidiiddii_1", "jsCall_iiiiiiidiiddii_2", "jsCall_iiiiiiidiiddii_3", "jsCall_iiiiiiidiiddii_4", "jsCall_iiiiiiidiiddii_5", "jsCall_iiiiiiidiiddii_6", "jsCall_iiiiiiidiiddii_7", "jsCall_iiiiiiidiiddii_8", "jsCall_iiiiiiidiiddii_9", "jsCall_iiiiiiidiiddii_10", "jsCall_iiiiiiidiiddii_11", "jsCall_iiiiiiidiiddii_12", "jsCall_iiiiiiidiiddii_13", "jsCall_iiiiiiidiiddii_14", "jsCall_iiiiiiidiiddii_15", "jsCall_iiiiiiidiiddii_16", "jsCall_iiiiiiidiiddii_17", "jsCall_iiiiiiidiiddii_18", "jsCall_iiiiiiidiiddii_19", "jsCall_iiiiiiidiiddii_20", "jsCall_iiiiiiidiiddii_21", "jsCall_iiiiiiidiiddii_22", "jsCall_iiiiiiidiiddii_23", "jsCall_iiiiiiidiiddii_24", "jsCall_iiiiiiidiiddii_25", "jsCall_iiiiiiidiiddii_26", "jsCall_iiiiiiidiiddii_27", "jsCall_iiiiiiidiiddii_28", "jsCall_iiiiiiidiiddii_29", "jsCall_iiiiiiidiiddii_30", "jsCall_iiiiiiidiiddii_31", "jsCall_iiiiiiidiiddii_32", "jsCall_iiiiiiidiiddii_33", "jsCall_iiiiiiidiiddii_34", "jsCall_iiiiiiidiiddii_35", "jsCall_iiiiiiidiiddii_36", "jsCall_iiiiiiidiiddii_37", "jsCall_iiiiiiidiiddii_38", "jsCall_iiiiiiidiiddii_39", "jsCall_iiiiiiidiiddii_40", "jsCall_iiiiiiidiiddii_41", "jsCall_iiiiiiidiiddii_42", "jsCall_iiiiiiidiiddii_43", "jsCall_iiiiiiidiiddii_44", "jsCall_iiiiiiidiiddii_45", "jsCall_iiiiiiidiiddii_46", "jsCall_iiiiiiidiiddii_47", "jsCall_iiiiiiidiiddii_48", "jsCall_iiiiiiidiiddii_49", "jsCall_iiiiiiidiiddii_50", "jsCall_iiiiiiidiiddii_51", "jsCall_iiiiiiidiiddii_52", "jsCall_iiiiiiidiiddii_53", "jsCall_iiiiiiidiiddii_54", "jsCall_iiiiiiidiiddii_55", "jsCall_iiiiiiidiiddii_56", "jsCall_iiiiiiidiiddii_57", "jsCall_iiiiiiidiiddii_58", "jsCall_iiiiiiidiiddii_59", "jsCall_iiiiiiidiiddii_60", "jsCall_iiiiiiidiiddii_61", "jsCall_iiiiiiidiiddii_62", "jsCall_iiiiiiidiiddii_63", "jsCall_iiiiiiidiiddii_64", "jsCall_iiiiiiidiiddii_65", "jsCall_iiiiiiidiiddii_66", "jsCall_iiiiiiidiiddii_67", "jsCall_iiiiiiidiiddii_68", "jsCall_iiiiiiidiiddii_69", "jsCall_iiiiiiidiiddii_70", "jsCall_iiiiiiidiiddii_71", "jsCall_iiiiiiidiiddii_72", "jsCall_iiiiiiidiiddii_73", "jsCall_iiiiiiidiiddii_74", "jsCall_iiiiiiidiiddii_75", "jsCall_iiiiiiidiiddii_76", "jsCall_iiiiiiidiiddii_77", "jsCall_iiiiiiidiiddii_78", "jsCall_iiiiiiidiiddii_79", "jsCall_iiiiiiidiiddii_80", "jsCall_iiiiiiidiiddii_81", "jsCall_iiiiiiidiiddii_82", "jsCall_iiiiiiidiiddii_83", "jsCall_iiiiiiidiiddii_84", "jsCall_iiiiiiidiiddii_85", "jsCall_iiiiiiidiiddii_86", "jsCall_iiiiiiidiiddii_87", "jsCall_iiiiiiidiiddii_88", "jsCall_iiiiiiidiiddii_89", "jsCall_iiiiiiidiiddii_90", "jsCall_iiiiiiidiiddii_91", "jsCall_iiiiiiidiiddii_92", "jsCall_iiiiiiidiiddii_93", "jsCall_iiiiiiidiiddii_94", "jsCall_iiiiiiidiiddii_95", "jsCall_iiiiiiidiiddii_96", "jsCall_iiiiiiidiiddii_97", "jsCall_iiiiiiidiiddii_98", "jsCall_iiiiiiidiiddii_99", "_resample_init", 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]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "jsCall_iiiiiiii_35", "jsCall_iiiiiiii_36", "jsCall_iiiiiiii_37", "jsCall_iiiiiiii_38", "jsCall_iiiiiiii_39", "jsCall_iiiiiiii_40", "jsCall_iiiiiiii_41", "jsCall_iiiiiiii_42", "jsCall_iiiiiiii_43", "jsCall_iiiiiiii_44", "jsCall_iiiiiiii_45", "jsCall_iiiiiiii_46", "jsCall_iiiiiiii_47", "jsCall_iiiiiiii_48", "jsCall_iiiiiiii_49", "jsCall_iiiiiiii_50", "jsCall_iiiiiiii_51", "jsCall_iiiiiiii_52", "jsCall_iiiiiiii_53", "jsCall_iiiiiiii_54", "jsCall_iiiiiiii_55", "jsCall_iiiiiiii_56", "jsCall_iiiiiiii_57", "jsCall_iiiiiiii_58", "jsCall_iiiiiiii_59", "jsCall_iiiiiiii_60", "jsCall_iiiiiiii_61", "jsCall_iiiiiiii_62", "jsCall_iiiiiiii_63", "jsCall_iiiiiiii_64", "jsCall_iiiiiiii_65", "jsCall_iiiiiiii_66", "jsCall_iiiiiiii_67", "jsCall_iiiiiiii_68", "jsCall_iiiiiiii_69", "jsCall_iiiiiiii_70", "jsCall_iiiiiiii_71", "jsCall_iiiiiiii_72", "jsCall_iiiiiiii_73", "jsCall_iiiiiiii_74", "jsCall_iiiiiiii_75", "jsCall_iiiiiiii_76", "jsCall_iiiiiiii_77", "jsCall_iiiiiiii_78", "jsCall_iiiiiiii_79", "jsCall_iiiiiiii_80", "jsCall_iiiiiiii_81", "jsCall_iiiiiiii_82", "jsCall_iiiiiiii_83", "jsCall_iiiiiiii_84", "jsCall_iiiiiiii_85", "jsCall_iiiiiiii_86", "jsCall_iiiiiiii_87", "jsCall_iiiiiiii_88", "jsCall_iiiiiiii_89", "jsCall_iiiiiiii_90", "jsCall_iiiiiiii_91", "jsCall_iiiiiiii_92", "jsCall_iiiiiiii_93", "jsCall_iiiiiiii_94", "jsCall_iiiiiiii_95", "jsCall_iiiiiiii_96", "jsCall_iiiiiiii_97", "jsCall_iiiiiiii_98", "jsCall_iiiiiiii_99", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "jsCall_iiiiiiiid_35", "jsCall_iiiiiiiid_36", "jsCall_iiiiiiiid_37", "jsCall_iiiiiiiid_38", "jsCall_iiiiiiiid_39", "jsCall_iiiiiiiid_40", "jsCall_iiiiiiiid_41", "jsCall_iiiiiiiid_42", "jsCall_iiiiiiiid_43", "jsCall_iiiiiiiid_44", "jsCall_iiiiiiiid_45", "jsCall_iiiiiiiid_46", "jsCall_iiiiiiiid_47", "jsCall_iiiiiiiid_48", "jsCall_iiiiiiiid_49", "jsCall_iiiiiiiid_50", "jsCall_iiiiiiiid_51", "jsCall_iiiiiiiid_52", "jsCall_iiiiiiiid_53", "jsCall_iiiiiiiid_54", "jsCall_iiiiiiiid_55", "jsCall_iiiiiiiid_56", "jsCall_iiiiiiiid_57", "jsCall_iiiiiiiid_58", "jsCall_iiiiiiiid_59", "jsCall_iiiiiiiid_60", "jsCall_iiiiiiiid_61", "jsCall_iiiiiiiid_62", "jsCall_iiiiiiiid_63", "jsCall_iiiiiiiid_64", "jsCall_iiiiiiiid_65", "jsCall_iiiiiiiid_66", "jsCall_iiiiiiiid_67", "jsCall_iiiiiiiid_68", "jsCall_iiiiiiiid_69", "jsCall_iiiiiiiid_70", "jsCall_iiiiiiiid_71", "jsCall_iiiiiiiid_72", "jsCall_iiiiiiiid_73", "jsCall_iiiiiiiid_74", "jsCall_iiiiiiiid_75", "jsCall_iiiiiiiid_76", "jsCall_iiiiiiiid_77", "jsCall_iiiiiiiid_78", "jsCall_iiiiiiiid_79", "jsCall_iiiiiiiid_80", "jsCall_iiiiiiiid_81", "jsCall_iiiiiiiid_82", "jsCall_iiiiiiiid_83", "jsCall_iiiiiiiid_84", "jsCall_iiiiiiiid_85", "jsCall_iiiiiiiid_86", "jsCall_iiiiiiiid_87", "jsCall_iiiiiiiid_88", "jsCall_iiiiiiiid_89", "jsCall_iiiiiiiid_90", "jsCall_iiiiiiiid_91", "jsCall_iiiiiiiid_92", "jsCall_iiiiiiiid_93", "jsCall_iiiiiiiid_94", "jsCall_iiiiiiiid_95", "jsCall_iiiiiiiid_96", "jsCall_iiiiiiiid_97", "jsCall_iiiiiiiid_98", "jsCall_iiiiiiiid_99", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "jsCall_iiiiij_35", "jsCall_iiiiij_36", "jsCall_iiiiij_37", "jsCall_iiiiij_38", "jsCall_iiiiij_39", "jsCall_iiiiij_40", "jsCall_iiiiij_41", "jsCall_iiiiij_42", "jsCall_iiiiij_43", "jsCall_iiiiij_44", "jsCall_iiiiij_45", "jsCall_iiiiij_46", "jsCall_iiiiij_47", "jsCall_iiiiij_48", "jsCall_iiiiij_49", "jsCall_iiiiij_50", "jsCall_iiiiij_51", "jsCall_iiiiij_52", "jsCall_iiiiij_53", "jsCall_iiiiij_54", "jsCall_iiiiij_55", "jsCall_iiiiij_56", "jsCall_iiiiij_57", "jsCall_iiiiij_58", "jsCall_iiiiij_59", "jsCall_iiiiij_60", "jsCall_iiiiij_61", "jsCall_iiiiij_62", "jsCall_iiiiij_63", "jsCall_iiiiij_64", "jsCall_iiiiij_65", "jsCall_iiiiij_66", "jsCall_iiiiij_67", "jsCall_iiiiij_68", "jsCall_iiiiij_69", "jsCall_iiiiij_70", "jsCall_iiiiij_71", "jsCall_iiiiij_72", "jsCall_iiiiij_73", "jsCall_iiiiij_74", "jsCall_iiiiij_75", "jsCall_iiiiij_76", "jsCall_iiiiij_77", "jsCall_iiiiij_78", "jsCall_iiiiij_79", "jsCall_iiiiij_80", "jsCall_iiiiij_81", "jsCall_iiiiij_82", "jsCall_iiiiij_83", "jsCall_iiiiij_84", "jsCall_iiiiij_85", "jsCall_iiiiij_86", "jsCall_iiiiij_87", "jsCall_iiiiij_88", "jsCall_iiiiij_89", "jsCall_iiiiij_90", "jsCall_iiiiij_91", "jsCall_iiiiij_92", "jsCall_iiiiij_93", "jsCall_iiiiij_94", "jsCall_iiiiij_95", "jsCall_iiiiij_96", "jsCall_iiiiij_97", "jsCall_iiiiij_98", "jsCall_iiiiij_99", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "jsCall_iiiji_35", "jsCall_iiiji_36", "jsCall_iiiji_37", "jsCall_iiiji_38", "jsCall_iiiji_39", "jsCall_iiiji_40", "jsCall_iiiji_41", "jsCall_iiiji_42", "jsCall_iiiji_43", "jsCall_iiiji_44", "jsCall_iiiji_45", "jsCall_iiiji_46", "jsCall_iiiji_47", "jsCall_iiiji_48", "jsCall_iiiji_49", "jsCall_iiiji_50", "jsCall_iiiji_51", "jsCall_iiiji_52", "jsCall_iiiji_53", "jsCall_iiiji_54", "jsCall_iiiji_55", "jsCall_iiiji_56", "jsCall_iiiji_57", "jsCall_iiiji_58", "jsCall_iiiji_59", "jsCall_iiiji_60", "jsCall_iiiji_61", "jsCall_iiiji_62", "jsCall_iiiji_63", "jsCall_iiiji_64", "jsCall_iiiji_65", "jsCall_iiiji_66", "jsCall_iiiji_67", "jsCall_iiiji_68", "jsCall_iiiji_69", "jsCall_iiiji_70", "jsCall_iiiji_71", "jsCall_iiiji_72", "jsCall_iiiji_73", "jsCall_iiiji_74", "jsCall_iiiji_75", "jsCall_iiiji_76", "jsCall_iiiji_77", "jsCall_iiiji_78", "jsCall_iiiji_79", "jsCall_iiiji_80", "jsCall_iiiji_81", "jsCall_iiiji_82", "jsCall_iiiji_83", "jsCall_iiiji_84", "jsCall_iiiji_85", "jsCall_iiiji_86", "jsCall_iiiji_87", "jsCall_iiiji_88", "jsCall_iiiji_89", "jsCall_iiiji_90", "jsCall_iiiji_91", "jsCall_iiiji_92", "jsCall_iiiji_93", "jsCall_iiiji_94", "jsCall_iiiji_95", "jsCall_iiiji_96", "jsCall_iiiji_97", "jsCall_iiiji_98", "jsCall_iiiji_99", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", "jsCall_iiijjji_35", "jsCall_iiijjji_36", "jsCall_iiijjji_37", "jsCall_iiijjji_38", "jsCall_iiijjji_39", "jsCall_iiijjji_40", "jsCall_iiijjji_41", "jsCall_iiijjji_42", "jsCall_iiijjji_43", "jsCall_iiijjji_44", "jsCall_iiijjji_45", "jsCall_iiijjji_46", "jsCall_iiijjji_47", "jsCall_iiijjji_48", "jsCall_iiijjji_49", "jsCall_iiijjji_50", "jsCall_iiijjji_51", "jsCall_iiijjji_52", "jsCall_iiijjji_53", "jsCall_iiijjji_54", "jsCall_iiijjji_55", "jsCall_iiijjji_56", "jsCall_iiijjji_57", "jsCall_iiijjji_58", "jsCall_iiijjji_59", "jsCall_iiijjji_60", "jsCall_iiijjji_61", "jsCall_iiijjji_62", "jsCall_iiijjji_63", "jsCall_iiijjji_64", "jsCall_iiijjji_65", "jsCall_iiijjji_66", "jsCall_iiijjji_67", "jsCall_iiijjji_68", "jsCall_iiijjji_69", "jsCall_iiijjji_70", "jsCall_iiijjji_71", "jsCall_iiijjji_72", "jsCall_iiijjji_73", "jsCall_iiijjji_74", "jsCall_iiijjji_75", "jsCall_iiijjji_76", "jsCall_iiijjji_77", "jsCall_iiijjji_78", "jsCall_iiijjji_79", "jsCall_iiijjji_80", "jsCall_iiijjji_81", "jsCall_iiijjji_82", "jsCall_iiijjji_83", "jsCall_iiijjji_84", "jsCall_iiijjji_85", "jsCall_iiijjji_86", "jsCall_iiijjji_87", "jsCall_iiijjji_88", "jsCall_iiijjji_89", "jsCall_iiijjji_90", "jsCall_iiijjji_91", "jsCall_iiijjji_92", "jsCall_iiijjji_93", "jsCall_iiijjji_94", "jsCall_iiijjji_95", "jsCall_iiijjji_96", "jsCall_iiijjji_97", "jsCall_iiijjji_98", "jsCall_iiijjji_99", 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]; +var debug_table_jii = [0, "jsCall_jii_0", "jsCall_jii_1", "jsCall_jii_2", "jsCall_jii_3", "jsCall_jii_4", "jsCall_jii_5", "jsCall_jii_6", "jsCall_jii_7", "jsCall_jii_8", "jsCall_jii_9", "jsCall_jii_10", "jsCall_jii_11", "jsCall_jii_12", "jsCall_jii_13", "jsCall_jii_14", "jsCall_jii_15", "jsCall_jii_16", "jsCall_jii_17", "jsCall_jii_18", "jsCall_jii_19", "jsCall_jii_20", "jsCall_jii_21", "jsCall_jii_22", "jsCall_jii_23", "jsCall_jii_24", "jsCall_jii_25", "jsCall_jii_26", "jsCall_jii_27", "jsCall_jii_28", "jsCall_jii_29", "jsCall_jii_30", "jsCall_jii_31", "jsCall_jii_32", "jsCall_jii_33", "jsCall_jii_34", "jsCall_jii_35", "jsCall_jii_36", "jsCall_jii_37", "jsCall_jii_38", "jsCall_jii_39", "jsCall_jii_40", "jsCall_jii_41", "jsCall_jii_42", "jsCall_jii_43", "jsCall_jii_44", "jsCall_jii_45", "jsCall_jii_46", "jsCall_jii_47", "jsCall_jii_48", "jsCall_jii_49", "jsCall_jii_50", "jsCall_jii_51", "jsCall_jii_52", "jsCall_jii_53", "jsCall_jii_54", "jsCall_jii_55", "jsCall_jii_56", "jsCall_jii_57", "jsCall_jii_58", "jsCall_jii_59", "jsCall_jii_60", "jsCall_jii_61", "jsCall_jii_62", "jsCall_jii_63", "jsCall_jii_64", "jsCall_jii_65", "jsCall_jii_66", "jsCall_jii_67", "jsCall_jii_68", "jsCall_jii_69", "jsCall_jii_70", "jsCall_jii_71", "jsCall_jii_72", "jsCall_jii_73", "jsCall_jii_74", "jsCall_jii_75", "jsCall_jii_76", "jsCall_jii_77", "jsCall_jii_78", "jsCall_jii_79", "jsCall_jii_80", "jsCall_jii_81", "jsCall_jii_82", "jsCall_jii_83", "jsCall_jii_84", "jsCall_jii_85", "jsCall_jii_86", "jsCall_jii_87", "jsCall_jii_88", "jsCall_jii_89", "jsCall_jii_90", "jsCall_jii_91", "jsCall_jii_92", "jsCall_jii_93", "jsCall_jii_94", "jsCall_jii_95", "jsCall_jii_96", "jsCall_jii_97", "jsCall_jii_98", "jsCall_jii_99", "_get_out_samples", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "jsCall_jiiij_35", "jsCall_jiiij_36", "jsCall_jiiij_37", "jsCall_jiiij_38", "jsCall_jiiij_39", "jsCall_jiiij_40", "jsCall_jiiij_41", "jsCall_jiiij_42", "jsCall_jiiij_43", "jsCall_jiiij_44", "jsCall_jiiij_45", "jsCall_jiiij_46", "jsCall_jiiij_47", "jsCall_jiiij_48", "jsCall_jiiij_49", "jsCall_jiiij_50", "jsCall_jiiij_51", "jsCall_jiiij_52", "jsCall_jiiij_53", "jsCall_jiiij_54", "jsCall_jiiij_55", "jsCall_jiiij_56", "jsCall_jiiij_57", "jsCall_jiiij_58", "jsCall_jiiij_59", "jsCall_jiiij_60", "jsCall_jiiij_61", "jsCall_jiiij_62", "jsCall_jiiij_63", "jsCall_jiiij_64", "jsCall_jiiij_65", "jsCall_jiiij_66", "jsCall_jiiij_67", "jsCall_jiiij_68", "jsCall_jiiij_69", "jsCall_jiiij_70", "jsCall_jiiij_71", "jsCall_jiiij_72", "jsCall_jiiij_73", "jsCall_jiiij_74", "jsCall_jiiij_75", "jsCall_jiiij_76", "jsCall_jiiij_77", "jsCall_jiiij_78", "jsCall_jiiij_79", "jsCall_jiiij_80", "jsCall_jiiij_81", "jsCall_jiiij_82", "jsCall_jiiij_83", "jsCall_jiiij_84", "jsCall_jiiij_85", "jsCall_jiiij_86", "jsCall_jiiij_87", "jsCall_jiiij_88", "jsCall_jiiij_89", "jsCall_jiiij_90", "jsCall_jiiij_91", "jsCall_jiiij_92", "jsCall_jiiij_93", "jsCall_jiiij_94", "jsCall_jiiij_95", "jsCall_jiiij_96", "jsCall_jiiij_97", "jsCall_jiiij_98", "jsCall_jiiij_99", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "jsCall_jiiji_35", "jsCall_jiiji_36", "jsCall_jiiji_37", "jsCall_jiiji_38", "jsCall_jiiji_39", "jsCall_jiiji_40", "jsCall_jiiji_41", "jsCall_jiiji_42", "jsCall_jiiji_43", "jsCall_jiiji_44", "jsCall_jiiji_45", "jsCall_jiiji_46", "jsCall_jiiji_47", "jsCall_jiiji_48", "jsCall_jiiji_49", "jsCall_jiiji_50", "jsCall_jiiji_51", "jsCall_jiiji_52", "jsCall_jiiji_53", "jsCall_jiiji_54", "jsCall_jiiji_55", "jsCall_jiiji_56", "jsCall_jiiji_57", "jsCall_jiiji_58", "jsCall_jiiji_59", "jsCall_jiiji_60", "jsCall_jiiji_61", "jsCall_jiiji_62", "jsCall_jiiji_63", "jsCall_jiiji_64", "jsCall_jiiji_65", "jsCall_jiiji_66", "jsCall_jiiji_67", "jsCall_jiiji_68", "jsCall_jiiji_69", "jsCall_jiiji_70", "jsCall_jiiji_71", "jsCall_jiiji_72", "jsCall_jiiji_73", "jsCall_jiiji_74", "jsCall_jiiji_75", "jsCall_jiiji_76", "jsCall_jiiji_77", "jsCall_jiiji_78", "jsCall_jiiji_79", "jsCall_jiiji_80", "jsCall_jiiji_81", "jsCall_jiiji_82", "jsCall_jiiji_83", "jsCall_jiiji_84", "jsCall_jiiji_85", "jsCall_jiiji_86", "jsCall_jiiji_87", "jsCall_jiiji_88", "jsCall_jiiji_89", "jsCall_jiiji_90", "jsCall_jiiji_91", "jsCall_jiiji_92", "jsCall_jiiji_93", "jsCall_jiiji_94", "jsCall_jiiji_95", "jsCall_jiiji_96", "jsCall_jiiji_97", "jsCall_jiiji_98", "jsCall_jiiji_99", "_io_read_seek", 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]; +var debug_table_jij = [0, "jsCall_jij_0", "jsCall_jij_1", "jsCall_jij_2", "jsCall_jij_3", "jsCall_jij_4", "jsCall_jij_5", "jsCall_jij_6", "jsCall_jij_7", "jsCall_jij_8", "jsCall_jij_9", "jsCall_jij_10", "jsCall_jij_11", "jsCall_jij_12", "jsCall_jij_13", "jsCall_jij_14", "jsCall_jij_15", "jsCall_jij_16", "jsCall_jij_17", "jsCall_jij_18", "jsCall_jij_19", "jsCall_jij_20", "jsCall_jij_21", "jsCall_jij_22", "jsCall_jij_23", "jsCall_jij_24", "jsCall_jij_25", "jsCall_jij_26", "jsCall_jij_27", "jsCall_jij_28", "jsCall_jij_29", "jsCall_jij_30", "jsCall_jij_31", "jsCall_jij_32", "jsCall_jij_33", "jsCall_jij_34", "jsCall_jij_35", "jsCall_jij_36", "jsCall_jij_37", "jsCall_jij_38", "jsCall_jij_39", "jsCall_jij_40", "jsCall_jij_41", "jsCall_jij_42", "jsCall_jij_43", "jsCall_jij_44", "jsCall_jij_45", "jsCall_jij_46", "jsCall_jij_47", "jsCall_jij_48", "jsCall_jij_49", "jsCall_jij_50", "jsCall_jij_51", "jsCall_jij_52", "jsCall_jij_53", "jsCall_jij_54", "jsCall_jij_55", "jsCall_jij_56", "jsCall_jij_57", "jsCall_jij_58", "jsCall_jij_59", "jsCall_jij_60", "jsCall_jij_61", "jsCall_jij_62", "jsCall_jij_63", "jsCall_jij_64", "jsCall_jij_65", "jsCall_jij_66", "jsCall_jij_67", "jsCall_jij_68", "jsCall_jij_69", "jsCall_jij_70", "jsCall_jij_71", "jsCall_jij_72", "jsCall_jij_73", "jsCall_jij_74", "jsCall_jij_75", "jsCall_jij_76", "jsCall_jij_77", "jsCall_jij_78", "jsCall_jij_79", "jsCall_jij_80", "jsCall_jij_81", "jsCall_jij_82", "jsCall_jij_83", "jsCall_jij_84", "jsCall_jij_85", "jsCall_jij_86", "jsCall_jij_87", "jsCall_jij_88", "jsCall_jij_89", "jsCall_jij_90", "jsCall_jij_91", "jsCall_jij_92", "jsCall_jij_93", "jsCall_jij_94", "jsCall_jij_95", "jsCall_jij_96", "jsCall_jij_97", "jsCall_jij_98", "jsCall_jij_99", "_get_delay", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "jsCall_jiji_35", "jsCall_jiji_36", "jsCall_jiji_37", "jsCall_jiji_38", "jsCall_jiji_39", "jsCall_jiji_40", "jsCall_jiji_41", "jsCall_jiji_42", "jsCall_jiji_43", "jsCall_jiji_44", "jsCall_jiji_45", "jsCall_jiji_46", "jsCall_jiji_47", "jsCall_jiji_48", "jsCall_jiji_49", "jsCall_jiji_50", "jsCall_jiji_51", "jsCall_jiji_52", "jsCall_jiji_53", "jsCall_jiji_54", "jsCall_jiji_55", "jsCall_jiji_56", "jsCall_jiji_57", "jsCall_jiji_58", "jsCall_jiji_59", "jsCall_jiji_60", "jsCall_jiji_61", "jsCall_jiji_62", "jsCall_jiji_63", "jsCall_jiji_64", "jsCall_jiji_65", "jsCall_jiji_66", "jsCall_jiji_67", "jsCall_jiji_68", "jsCall_jiji_69", "jsCall_jiji_70", "jsCall_jiji_71", "jsCall_jiji_72", "jsCall_jiji_73", "jsCall_jiji_74", "jsCall_jiji_75", "jsCall_jiji_76", "jsCall_jiji_77", "jsCall_jiji_78", "jsCall_jiji_79", "jsCall_jiji_80", "jsCall_jiji_81", "jsCall_jiji_82", "jsCall_jiji_83", "jsCall_jiji_84", "jsCall_jiji_85", "jsCall_jiji_86", "jsCall_jiji_87", "jsCall_jiji_88", "jsCall_jiji_89", "jsCall_jiji_90", "jsCall_jiji_91", "jsCall_jiji_92", "jsCall_jiji_93", "jsCall_jiji_94", "jsCall_jiji_95", "jsCall_jiji_96", "jsCall_jiji_97", "jsCall_jiji_98", "jsCall_jiji_99", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "jsCall_v_35", "jsCall_v_36", "jsCall_v_37", "jsCall_v_38", "jsCall_v_39", "jsCall_v_40", "jsCall_v_41", "jsCall_v_42", "jsCall_v_43", "jsCall_v_44", "jsCall_v_45", "jsCall_v_46", "jsCall_v_47", "jsCall_v_48", "jsCall_v_49", "jsCall_v_50", "jsCall_v_51", "jsCall_v_52", "jsCall_v_53", "jsCall_v_54", "jsCall_v_55", "jsCall_v_56", "jsCall_v_57", "jsCall_v_58", "jsCall_v_59", "jsCall_v_60", "jsCall_v_61", "jsCall_v_62", "jsCall_v_63", "jsCall_v_64", "jsCall_v_65", "jsCall_v_66", "jsCall_v_67", "jsCall_v_68", "jsCall_v_69", "jsCall_v_70", "jsCall_v_71", "jsCall_v_72", "jsCall_v_73", "jsCall_v_74", "jsCall_v_75", "jsCall_v_76", "jsCall_v_77", "jsCall_v_78", "jsCall_v_79", "jsCall_v_80", "jsCall_v_81", "jsCall_v_82", "jsCall_v_83", "jsCall_v_84", "jsCall_v_85", "jsCall_v_86", "jsCall_v_87", "jsCall_v_88", "jsCall_v_89", "jsCall_v_90", "jsCall_v_91", "jsCall_v_92", "jsCall_v_93", "jsCall_v_94", "jsCall_v_95", "jsCall_v_96", "jsCall_v_97", "jsCall_v_98", "jsCall_v_99", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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, 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", "jsCall_vdiidiiiii_35", "jsCall_vdiidiiiii_36", "jsCall_vdiidiiiii_37", "jsCall_vdiidiiiii_38", "jsCall_vdiidiiiii_39", "jsCall_vdiidiiiii_40", "jsCall_vdiidiiiii_41", "jsCall_vdiidiiiii_42", "jsCall_vdiidiiiii_43", "jsCall_vdiidiiiii_44", "jsCall_vdiidiiiii_45", "jsCall_vdiidiiiii_46", "jsCall_vdiidiiiii_47", "jsCall_vdiidiiiii_48", "jsCall_vdiidiiiii_49", "jsCall_vdiidiiiii_50", "jsCall_vdiidiiiii_51", "jsCall_vdiidiiiii_52", "jsCall_vdiidiiiii_53", "jsCall_vdiidiiiii_54", "jsCall_vdiidiiiii_55", "jsCall_vdiidiiiii_56", "jsCall_vdiidiiiii_57", "jsCall_vdiidiiiii_58", "jsCall_vdiidiiiii_59", "jsCall_vdiidiiiii_60", "jsCall_vdiidiiiii_61", "jsCall_vdiidiiiii_62", "jsCall_vdiidiiiii_63", "jsCall_vdiidiiiii_64", "jsCall_vdiidiiiii_65", "jsCall_vdiidiiiii_66", "jsCall_vdiidiiiii_67", "jsCall_vdiidiiiii_68", "jsCall_vdiidiiiii_69", "jsCall_vdiidiiiii_70", "jsCall_vdiidiiiii_71", "jsCall_vdiidiiiii_72", "jsCall_vdiidiiiii_73", "jsCall_vdiidiiiii_74", "jsCall_vdiidiiiii_75", "jsCall_vdiidiiiii_76", "jsCall_vdiidiiiii_77", "jsCall_vdiidiiiii_78", "jsCall_vdiidiiiii_79", "jsCall_vdiidiiiii_80", "jsCall_vdiidiiiii_81", "jsCall_vdiidiiiii_82", "jsCall_vdiidiiiii_83", "jsCall_vdiidiiiii_84", "jsCall_vdiidiiiii_85", "jsCall_vdiidiiiii_86", "jsCall_vdiidiiiii_87", "jsCall_vdiidiiiii_88", "jsCall_vdiidiiiii_89", "jsCall_vdiidiiiii_90", "jsCall_vdiidiiiii_91", "jsCall_vdiidiiiii_92", "jsCall_vdiidiiiii_93", "jsCall_vdiidiiiii_94", "jsCall_vdiidiiiii_95", "jsCall_vdiidiiiii_96", "jsCall_vdiidiiiii_97", "jsCall_vdiidiiiii_98", "jsCall_vdiidiiiii_99", 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]; +var debug_table_vdiidiiiiii = [0, "jsCall_vdiidiiiiii_0", "jsCall_vdiidiiiiii_1", "jsCall_vdiidiiiiii_2", "jsCall_vdiidiiiiii_3", "jsCall_vdiidiiiiii_4", "jsCall_vdiidiiiiii_5", "jsCall_vdiidiiiiii_6", "jsCall_vdiidiiiiii_7", "jsCall_vdiidiiiiii_8", "jsCall_vdiidiiiiii_9", "jsCall_vdiidiiiiii_10", "jsCall_vdiidiiiiii_11", "jsCall_vdiidiiiiii_12", "jsCall_vdiidiiiiii_13", "jsCall_vdiidiiiiii_14", "jsCall_vdiidiiiiii_15", "jsCall_vdiidiiiiii_16", "jsCall_vdiidiiiiii_17", "jsCall_vdiidiiiiii_18", "jsCall_vdiidiiiiii_19", "jsCall_vdiidiiiiii_20", "jsCall_vdiidiiiiii_21", "jsCall_vdiidiiiiii_22", "jsCall_vdiidiiiiii_23", "jsCall_vdiidiiiiii_24", "jsCall_vdiidiiiiii_25", "jsCall_vdiidiiiiii_26", "jsCall_vdiidiiiiii_27", "jsCall_vdiidiiiiii_28", "jsCall_vdiidiiiiii_29", "jsCall_vdiidiiiiii_30", "jsCall_vdiidiiiiii_31", "jsCall_vdiidiiiiii_32", "jsCall_vdiidiiiiii_33", "jsCall_vdiidiiiiii_34", "jsCall_vdiidiiiiii_35", "jsCall_vdiidiiiiii_36", "jsCall_vdiidiiiiii_37", "jsCall_vdiidiiiiii_38", "jsCall_vdiidiiiiii_39", "jsCall_vdiidiiiiii_40", "jsCall_vdiidiiiiii_41", "jsCall_vdiidiiiiii_42", "jsCall_vdiidiiiiii_43", "jsCall_vdiidiiiiii_44", "jsCall_vdiidiiiiii_45", "jsCall_vdiidiiiiii_46", "jsCall_vdiidiiiiii_47", "jsCall_vdiidiiiiii_48", "jsCall_vdiidiiiiii_49", "jsCall_vdiidiiiiii_50", "jsCall_vdiidiiiiii_51", "jsCall_vdiidiiiiii_52", "jsCall_vdiidiiiiii_53", "jsCall_vdiidiiiiii_54", "jsCall_vdiidiiiiii_55", "jsCall_vdiidiiiiii_56", "jsCall_vdiidiiiiii_57", "jsCall_vdiidiiiiii_58", "jsCall_vdiidiiiiii_59", "jsCall_vdiidiiiiii_60", "jsCall_vdiidiiiiii_61", "jsCall_vdiidiiiiii_62", "jsCall_vdiidiiiiii_63", "jsCall_vdiidiiiiii_64", "jsCall_vdiidiiiiii_65", "jsCall_vdiidiiiiii_66", "jsCall_vdiidiiiiii_67", "jsCall_vdiidiiiiii_68", "jsCall_vdiidiiiiii_69", "jsCall_vdiidiiiiii_70", "jsCall_vdiidiiiiii_71", "jsCall_vdiidiiiiii_72", "jsCall_vdiidiiiiii_73", "jsCall_vdiidiiiiii_74", "jsCall_vdiidiiiiii_75", "jsCall_vdiidiiiiii_76", "jsCall_vdiidiiiiii_77", "jsCall_vdiidiiiiii_78", "jsCall_vdiidiiiiii_79", "jsCall_vdiidiiiiii_80", "jsCall_vdiidiiiiii_81", "jsCall_vdiidiiiiii_82", "jsCall_vdiidiiiiii_83", "jsCall_vdiidiiiiii_84", "jsCall_vdiidiiiiii_85", "jsCall_vdiidiiiiii_86", "jsCall_vdiidiiiiii_87", "jsCall_vdiidiiiiii_88", "jsCall_vdiidiiiiii_89", "jsCall_vdiidiiiiii_90", "jsCall_vdiidiiiiii_91", "jsCall_vdiidiiiiii_92", "jsCall_vdiidiiiiii_93", "jsCall_vdiidiiiiii_94", "jsCall_vdiidiiiiii_95", "jsCall_vdiidiiiiii_96", "jsCall_vdiidiiiiii_97", "jsCall_vdiidiiiiii_98", "jsCall_vdiidiiiiii_99", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "jsCall_vi_35", "jsCall_vi_36", "jsCall_vi_37", "jsCall_vi_38", "jsCall_vi_39", "jsCall_vi_40", "jsCall_vi_41", "jsCall_vi_42", "jsCall_vi_43", "jsCall_vi_44", "jsCall_vi_45", "jsCall_vi_46", "jsCall_vi_47", "jsCall_vi_48", "jsCall_vi_49", "jsCall_vi_50", "jsCall_vi_51", "jsCall_vi_52", "jsCall_vi_53", "jsCall_vi_54", "jsCall_vi_55", "jsCall_vi_56", "jsCall_vi_57", "jsCall_vi_58", "jsCall_vi_59", "jsCall_vi_60", "jsCall_vi_61", "jsCall_vi_62", "jsCall_vi_63", "jsCall_vi_64", "jsCall_vi_65", "jsCall_vi_66", "jsCall_vi_67", "jsCall_vi_68", "jsCall_vi_69", "jsCall_vi_70", "jsCall_vi_71", "jsCall_vi_72", "jsCall_vi_73", "jsCall_vi_74", "jsCall_vi_75", "jsCall_vi_76", "jsCall_vi_77", "jsCall_vi_78", "jsCall_vi_79", "jsCall_vi_80", "jsCall_vi_81", "jsCall_vi_82", "jsCall_vi_83", "jsCall_vi_84", "jsCall_vi_85", "jsCall_vi_86", "jsCall_vi_87", "jsCall_vi_88", "jsCall_vi_89", "jsCall_vi_90", "jsCall_vi_91", "jsCall_vi_92", "jsCall_vi_93", "jsCall_vi_94", "jsCall_vi_95", "jsCall_vi_96", "jsCall_vi_97", "jsCall_vi_98", "jsCall_vi_99", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3923", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_resample_free", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", 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, 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, 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, 0]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "jsCall_vii_35", "jsCall_vii_36", "jsCall_vii_37", "jsCall_vii_38", "jsCall_vii_39", "jsCall_vii_40", "jsCall_vii_41", "jsCall_vii_42", "jsCall_vii_43", "jsCall_vii_44", "jsCall_vii_45", "jsCall_vii_46", "jsCall_vii_47", "jsCall_vii_48", "jsCall_vii_49", "jsCall_vii_50", "jsCall_vii_51", "jsCall_vii_52", "jsCall_vii_53", "jsCall_vii_54", "jsCall_vii_55", "jsCall_vii_56", "jsCall_vii_57", "jsCall_vii_58", "jsCall_vii_59", "jsCall_vii_60", "jsCall_vii_61", "jsCall_vii_62", "jsCall_vii_63", "jsCall_vii_64", "jsCall_vii_65", "jsCall_vii_66", "jsCall_vii_67", "jsCall_vii_68", "jsCall_vii_69", "jsCall_vii_70", "jsCall_vii_71", "jsCall_vii_72", "jsCall_vii_73", "jsCall_vii_74", "jsCall_vii_75", "jsCall_vii_76", "jsCall_vii_77", "jsCall_vii_78", "jsCall_vii_79", "jsCall_vii_80", "jsCall_vii_81", "jsCall_vii_82", "jsCall_vii_83", "jsCall_vii_84", "jsCall_vii_85", "jsCall_vii_86", "jsCall_vii_87", "jsCall_vii_88", "jsCall_vii_89", "jsCall_vii_90", "jsCall_vii_91", "jsCall_vii_92", "jsCall_vii_93", "jsCall_vii_94", "jsCall_vii_95", "jsCall_vii_96", "jsCall_vii_97", "jsCall_vii_98", "jsCall_vii_99", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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, 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, 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "jsCall_viidi_35", "jsCall_viidi_36", "jsCall_viidi_37", "jsCall_viidi_38", "jsCall_viidi_39", "jsCall_viidi_40", "jsCall_viidi_41", "jsCall_viidi_42", "jsCall_viidi_43", "jsCall_viidi_44", "jsCall_viidi_45", "jsCall_viidi_46", "jsCall_viidi_47", "jsCall_viidi_48", "jsCall_viidi_49", "jsCall_viidi_50", "jsCall_viidi_51", "jsCall_viidi_52", "jsCall_viidi_53", "jsCall_viidi_54", "jsCall_viidi_55", "jsCall_viidi_56", "jsCall_viidi_57", "jsCall_viidi_58", "jsCall_viidi_59", "jsCall_viidi_60", "jsCall_viidi_61", "jsCall_viidi_62", "jsCall_viidi_63", "jsCall_viidi_64", "jsCall_viidi_65", "jsCall_viidi_66", "jsCall_viidi_67", "jsCall_viidi_68", "jsCall_viidi_69", "jsCall_viidi_70", "jsCall_viidi_71", "jsCall_viidi_72", "jsCall_viidi_73", "jsCall_viidi_74", "jsCall_viidi_75", "jsCall_viidi_76", "jsCall_viidi_77", "jsCall_viidi_78", "jsCall_viidi_79", "jsCall_viidi_80", "jsCall_viidi_81", "jsCall_viidi_82", "jsCall_viidi_83", "jsCall_viidi_84", "jsCall_viidi_85", "jsCall_viidi_86", "jsCall_viidi_87", "jsCall_viidi_88", "jsCall_viidi_89", "jsCall_viidi_90", "jsCall_viidi_91", "jsCall_viidi_92", "jsCall_viidi_93", "jsCall_viidi_94", "jsCall_viidi_95", "jsCall_viidi_96", "jsCall_viidi_97", "jsCall_viidi_98", "jsCall_viidi_99", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "jsCall_viifi_35", "jsCall_viifi_36", "jsCall_viifi_37", "jsCall_viifi_38", "jsCall_viifi_39", "jsCall_viifi_40", "jsCall_viifi_41", "jsCall_viifi_42", "jsCall_viifi_43", "jsCall_viifi_44", "jsCall_viifi_45", "jsCall_viifi_46", "jsCall_viifi_47", "jsCall_viifi_48", "jsCall_viifi_49", "jsCall_viifi_50", "jsCall_viifi_51", "jsCall_viifi_52", "jsCall_viifi_53", "jsCall_viifi_54", "jsCall_viifi_55", "jsCall_viifi_56", "jsCall_viifi_57", "jsCall_viifi_58", "jsCall_viifi_59", "jsCall_viifi_60", "jsCall_viifi_61", "jsCall_viifi_62", "jsCall_viifi_63", "jsCall_viifi_64", "jsCall_viifi_65", "jsCall_viifi_66", "jsCall_viifi_67", "jsCall_viifi_68", "jsCall_viifi_69", "jsCall_viifi_70", "jsCall_viifi_71", "jsCall_viifi_72", "jsCall_viifi_73", "jsCall_viifi_74", "jsCall_viifi_75", "jsCall_viifi_76", "jsCall_viifi_77", "jsCall_viifi_78", "jsCall_viifi_79", "jsCall_viifi_80", "jsCall_viifi_81", "jsCall_viifi_82", "jsCall_viifi_83", "jsCall_viifi_84", "jsCall_viifi_85", "jsCall_viifi_86", "jsCall_viifi_87", "jsCall_viifi_88", "jsCall_viifi_89", "jsCall_viifi_90", "jsCall_viifi_91", "jsCall_viifi_92", "jsCall_viifi_93", "jsCall_viifi_94", "jsCall_viifi_95", "jsCall_viifi_96", "jsCall_viifi_97", "jsCall_viifi_98", "jsCall_viifi_99", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "jsCall_viii_35", "jsCall_viii_36", "jsCall_viii_37", "jsCall_viii_38", "jsCall_viii_39", "jsCall_viii_40", "jsCall_viii_41", "jsCall_viii_42", "jsCall_viii_43", "jsCall_viii_44", "jsCall_viii_45", "jsCall_viii_46", "jsCall_viii_47", "jsCall_viii_48", "jsCall_viii_49", "jsCall_viii_50", "jsCall_viii_51", "jsCall_viii_52", "jsCall_viii_53", "jsCall_viii_54", "jsCall_viii_55", "jsCall_viii_56", "jsCall_viii_57", "jsCall_viii_58", "jsCall_viii_59", "jsCall_viii_60", "jsCall_viii_61", "jsCall_viii_62", "jsCall_viii_63", "jsCall_viii_64", "jsCall_viii_65", "jsCall_viii_66", "jsCall_viii_67", "jsCall_viii_68", "jsCall_viii_69", "jsCall_viii_70", "jsCall_viii_71", "jsCall_viii_72", "jsCall_viii_73", "jsCall_viii_74", "jsCall_viii_75", "jsCall_viii_76", "jsCall_viii_77", "jsCall_viii_78", "jsCall_viii_79", "jsCall_viii_80", "jsCall_viii_81", "jsCall_viii_82", "jsCall_viii_83", "jsCall_viii_84", "jsCall_viii_85", "jsCall_viii_86", "jsCall_viii_87", "jsCall_viii_88", "jsCall_viii_89", "jsCall_viii_90", "jsCall_viii_91", "jsCall_viii_92", "jsCall_viii_93", "jsCall_viii_94", "jsCall_viii_95", "jsCall_viii_96", "jsCall_viii_97", "jsCall_viii_98", "jsCall_viii_99", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", "_cpy1", "_cpy2", "_cpy4", "_cpy8", 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, 0, 0, 0, 0, 0]; +var debug_table_viiid = [0, "jsCall_viiid_0", "jsCall_viiid_1", "jsCall_viiid_2", "jsCall_viiid_3", "jsCall_viiid_4", "jsCall_viiid_5", "jsCall_viiid_6", "jsCall_viiid_7", "jsCall_viiid_8", "jsCall_viiid_9", "jsCall_viiid_10", "jsCall_viiid_11", "jsCall_viiid_12", "jsCall_viiid_13", "jsCall_viiid_14", "jsCall_viiid_15", "jsCall_viiid_16", "jsCall_viiid_17", "jsCall_viiid_18", "jsCall_viiid_19", "jsCall_viiid_20", "jsCall_viiid_21", "jsCall_viiid_22", "jsCall_viiid_23", "jsCall_viiid_24", "jsCall_viiid_25", "jsCall_viiid_26", "jsCall_viiid_27", "jsCall_viiid_28", "jsCall_viiid_29", "jsCall_viiid_30", "jsCall_viiid_31", "jsCall_viiid_32", "jsCall_viiid_33", "jsCall_viiid_34", "jsCall_viiid_35", "jsCall_viiid_36", "jsCall_viiid_37", "jsCall_viiid_38", "jsCall_viiid_39", "jsCall_viiid_40", "jsCall_viiid_41", "jsCall_viiid_42", "jsCall_viiid_43", "jsCall_viiid_44", "jsCall_viiid_45", "jsCall_viiid_46", "jsCall_viiid_47", "jsCall_viiid_48", "jsCall_viiid_49", "jsCall_viiid_50", "jsCall_viiid_51", "jsCall_viiid_52", "jsCall_viiid_53", "jsCall_viiid_54", "jsCall_viiid_55", "jsCall_viiid_56", "jsCall_viiid_57", "jsCall_viiid_58", "jsCall_viiid_59", "jsCall_viiid_60", "jsCall_viiid_61", "jsCall_viiid_62", "jsCall_viiid_63", "jsCall_viiid_64", "jsCall_viiid_65", "jsCall_viiid_66", "jsCall_viiid_67", "jsCall_viiid_68", "jsCall_viiid_69", "jsCall_viiid_70", "jsCall_viiid_71", "jsCall_viiid_72", "jsCall_viiid_73", "jsCall_viiid_74", "jsCall_viiid_75", "jsCall_viiid_76", "jsCall_viiid_77", "jsCall_viiid_78", "jsCall_viiid_79", "jsCall_viiid_80", "jsCall_viiid_81", "jsCall_viiid_82", "jsCall_viiid_83", "jsCall_viiid_84", "jsCall_viiid_85", "jsCall_viiid_86", "jsCall_viiid_87", "jsCall_viiid_88", "jsCall_viiid_89", "jsCall_viiid_90", "jsCall_viiid_91", "jsCall_viiid_92", "jsCall_viiid_93", "jsCall_viiid_94", "jsCall_viiid_95", "jsCall_viiid_96", "jsCall_viiid_97", "jsCall_viiid_98", "jsCall_viiid_99", 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]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "jsCall_viiii_35", "jsCall_viiii_36", "jsCall_viiii_37", "jsCall_viiii_38", "jsCall_viiii_39", "jsCall_viiii_40", "jsCall_viiii_41", "jsCall_viiii_42", "jsCall_viiii_43", "jsCall_viiii_44", "jsCall_viiii_45", "jsCall_viiii_46", "jsCall_viiii_47", "jsCall_viiii_48", "jsCall_viiii_49", "jsCall_viiii_50", "jsCall_viiii_51", "jsCall_viiii_52", "jsCall_viiii_53", "jsCall_viiii_54", "jsCall_viiii_55", "jsCall_viiii_56", "jsCall_viiii_57", "jsCall_viiii_58", "jsCall_viiii_59", "jsCall_viiii_60", "jsCall_viiii_61", "jsCall_viiii_62", "jsCall_viiii_63", "jsCall_viiii_64", "jsCall_viiii_65", "jsCall_viiii_66", "jsCall_viiii_67", "jsCall_viiii_68", "jsCall_viiii_69", "jsCall_viiii_70", "jsCall_viiii_71", "jsCall_viiii_72", "jsCall_viiii_73", "jsCall_viiii_74", "jsCall_viiii_75", "jsCall_viiii_76", "jsCall_viiii_77", "jsCall_viiii_78", "jsCall_viiii_79", "jsCall_viiii_80", "jsCall_viiii_81", "jsCall_viiii_82", "jsCall_viiii_83", "jsCall_viiii_84", "jsCall_viiii_85", "jsCall_viiii_86", "jsCall_viiii_87", "jsCall_viiii_88", "jsCall_viiii_89", "jsCall_viiii_90", "jsCall_viiii_91", "jsCall_viiii_92", "jsCall_viiii_93", "jsCall_viiii_94", "jsCall_viiii_95", "jsCall_viiii_96", "jsCall_viiii_97", "jsCall_viiii_98", "jsCall_viiii_99", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", "_mix6to2_s16", "_mix8to2_s16", "_mix6to2_clip_s16", "_mix8to2_clip_s16", "_mix6to2_float", "_mix8to2_float", "_mix6to2_double", "_mix8to2_double", "_mix6to2_s32", "_mix8to2_s32", 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, 0, 0, 0, 0, 0]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "jsCall_viiiifii_35", "jsCall_viiiifii_36", "jsCall_viiiifii_37", "jsCall_viiiifii_38", "jsCall_viiiifii_39", "jsCall_viiiifii_40", "jsCall_viiiifii_41", "jsCall_viiiifii_42", "jsCall_viiiifii_43", "jsCall_viiiifii_44", "jsCall_viiiifii_45", "jsCall_viiiifii_46", "jsCall_viiiifii_47", "jsCall_viiiifii_48", "jsCall_viiiifii_49", "jsCall_viiiifii_50", "jsCall_viiiifii_51", "jsCall_viiiifii_52", "jsCall_viiiifii_53", "jsCall_viiiifii_54", "jsCall_viiiifii_55", "jsCall_viiiifii_56", "jsCall_viiiifii_57", "jsCall_viiiifii_58", "jsCall_viiiifii_59", "jsCall_viiiifii_60", "jsCall_viiiifii_61", "jsCall_viiiifii_62", "jsCall_viiiifii_63", "jsCall_viiiifii_64", "jsCall_viiiifii_65", "jsCall_viiiifii_66", "jsCall_viiiifii_67", "jsCall_viiiifii_68", "jsCall_viiiifii_69", "jsCall_viiiifii_70", "jsCall_viiiifii_71", "jsCall_viiiifii_72", "jsCall_viiiifii_73", "jsCall_viiiifii_74", "jsCall_viiiifii_75", "jsCall_viiiifii_76", "jsCall_viiiifii_77", "jsCall_viiiifii_78", "jsCall_viiiifii_79", "jsCall_viiiifii_80", "jsCall_viiiifii_81", "jsCall_viiiifii_82", "jsCall_viiiifii_83", "jsCall_viiiifii_84", "jsCall_viiiifii_85", "jsCall_viiiifii_86", "jsCall_viiiifii_87", "jsCall_viiiifii_88", "jsCall_viiiifii_89", "jsCall_viiiifii_90", "jsCall_viiiifii_91", "jsCall_viiiifii_92", "jsCall_viiiifii_93", "jsCall_viiiifii_94", "jsCall_viiiifii_95", "jsCall_viiiifii_96", "jsCall_viiiifii_97", "jsCall_viiiifii_98", "jsCall_viiiifii_99", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "jsCall_viiiii_35", "jsCall_viiiii_36", "jsCall_viiiii_37", "jsCall_viiiii_38", "jsCall_viiiii_39", "jsCall_viiiii_40", "jsCall_viiiii_41", "jsCall_viiiii_42", "jsCall_viiiii_43", "jsCall_viiiii_44", "jsCall_viiiii_45", "jsCall_viiiii_46", "jsCall_viiiii_47", "jsCall_viiiii_48", "jsCall_viiiii_49", "jsCall_viiiii_50", "jsCall_viiiii_51", "jsCall_viiiii_52", "jsCall_viiiii_53", "jsCall_viiiii_54", "jsCall_viiiii_55", "jsCall_viiiii_56", "jsCall_viiiii_57", "jsCall_viiiii_58", "jsCall_viiiii_59", "jsCall_viiiii_60", "jsCall_viiiii_61", "jsCall_viiiii_62", "jsCall_viiiii_63", "jsCall_viiiii_64", "jsCall_viiiii_65", "jsCall_viiiii_66", "jsCall_viiiii_67", "jsCall_viiiii_68", "jsCall_viiiii_69", "jsCall_viiiii_70", "jsCall_viiiii_71", "jsCall_viiiii_72", "jsCall_viiiii_73", "jsCall_viiiii_74", "jsCall_viiiii_75", "jsCall_viiiii_76", "jsCall_viiiii_77", "jsCall_viiiii_78", "jsCall_viiiii_79", "jsCall_viiiii_80", "jsCall_viiiii_81", "jsCall_viiiii_82", "jsCall_viiiii_83", "jsCall_viiiii_84", "jsCall_viiiii_85", "jsCall_viiiii_86", "jsCall_viiiii_87", "jsCall_viiiii_88", "jsCall_viiiii_89", "jsCall_viiiii_90", "jsCall_viiiii_91", "jsCall_viiiii_92", "jsCall_viiiii_93", "jsCall_viiiii_94", "jsCall_viiiii_95", "jsCall_viiiii_96", "jsCall_viiiii_97", "jsCall_viiiii_98", "jsCall_viiiii_99", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S64", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", "_copy_s16", "_copy_clip_s16", "_copy_float", "_copy_double", "_copy_s32", 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, 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, 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, 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, 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", "jsCall_viiiiidd_35", "jsCall_viiiiidd_36", "jsCall_viiiiidd_37", "jsCall_viiiiidd_38", "jsCall_viiiiidd_39", "jsCall_viiiiidd_40", "jsCall_viiiiidd_41", "jsCall_viiiiidd_42", "jsCall_viiiiidd_43", "jsCall_viiiiidd_44", "jsCall_viiiiidd_45", "jsCall_viiiiidd_46", "jsCall_viiiiidd_47", "jsCall_viiiiidd_48", "jsCall_viiiiidd_49", "jsCall_viiiiidd_50", "jsCall_viiiiidd_51", "jsCall_viiiiidd_52", "jsCall_viiiiidd_53", "jsCall_viiiiidd_54", "jsCall_viiiiidd_55", "jsCall_viiiiidd_56", "jsCall_viiiiidd_57", "jsCall_viiiiidd_58", "jsCall_viiiiidd_59", "jsCall_viiiiidd_60", "jsCall_viiiiidd_61", "jsCall_viiiiidd_62", "jsCall_viiiiidd_63", "jsCall_viiiiidd_64", "jsCall_viiiiidd_65", "jsCall_viiiiidd_66", "jsCall_viiiiidd_67", "jsCall_viiiiidd_68", "jsCall_viiiiidd_69", "jsCall_viiiiidd_70", "jsCall_viiiiidd_71", "jsCall_viiiiidd_72", "jsCall_viiiiidd_73", "jsCall_viiiiidd_74", "jsCall_viiiiidd_75", "jsCall_viiiiidd_76", "jsCall_viiiiidd_77", "jsCall_viiiiidd_78", "jsCall_viiiiidd_79", "jsCall_viiiiidd_80", "jsCall_viiiiidd_81", "jsCall_viiiiidd_82", "jsCall_viiiiidd_83", "jsCall_viiiiidd_84", "jsCall_viiiiidd_85", "jsCall_viiiiidd_86", "jsCall_viiiiidd_87", "jsCall_viiiiidd_88", "jsCall_viiiiidd_89", "jsCall_viiiiidd_90", "jsCall_viiiiidd_91", "jsCall_viiiiidd_92", "jsCall_viiiiidd_93", "jsCall_viiiiidd_94", "jsCall_viiiiidd_95", "jsCall_viiiiidd_96", "jsCall_viiiiidd_97", "jsCall_viiiiidd_98", "jsCall_viiiiidd_99", 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]; +var debug_table_viiiiiddi = [0, "jsCall_viiiiiddi_0", "jsCall_viiiiiddi_1", "jsCall_viiiiiddi_2", "jsCall_viiiiiddi_3", "jsCall_viiiiiddi_4", "jsCall_viiiiiddi_5", "jsCall_viiiiiddi_6", "jsCall_viiiiiddi_7", "jsCall_viiiiiddi_8", "jsCall_viiiiiddi_9", "jsCall_viiiiiddi_10", "jsCall_viiiiiddi_11", "jsCall_viiiiiddi_12", "jsCall_viiiiiddi_13", "jsCall_viiiiiddi_14", "jsCall_viiiiiddi_15", "jsCall_viiiiiddi_16", "jsCall_viiiiiddi_17", "jsCall_viiiiiddi_18", "jsCall_viiiiiddi_19", "jsCall_viiiiiddi_20", "jsCall_viiiiiddi_21", "jsCall_viiiiiddi_22", "jsCall_viiiiiddi_23", "jsCall_viiiiiddi_24", "jsCall_viiiiiddi_25", "jsCall_viiiiiddi_26", "jsCall_viiiiiddi_27", "jsCall_viiiiiddi_28", "jsCall_viiiiiddi_29", "jsCall_viiiiiddi_30", "jsCall_viiiiiddi_31", "jsCall_viiiiiddi_32", "jsCall_viiiiiddi_33", "jsCall_viiiiiddi_34", "jsCall_viiiiiddi_35", "jsCall_viiiiiddi_36", "jsCall_viiiiiddi_37", "jsCall_viiiiiddi_38", "jsCall_viiiiiddi_39", "jsCall_viiiiiddi_40", "jsCall_viiiiiddi_41", "jsCall_viiiiiddi_42", "jsCall_viiiiiddi_43", "jsCall_viiiiiddi_44", "jsCall_viiiiiddi_45", "jsCall_viiiiiddi_46", "jsCall_viiiiiddi_47", "jsCall_viiiiiddi_48", "jsCall_viiiiiddi_49", "jsCall_viiiiiddi_50", "jsCall_viiiiiddi_51", "jsCall_viiiiiddi_52", "jsCall_viiiiiddi_53", "jsCall_viiiiiddi_54", "jsCall_viiiiiddi_55", "jsCall_viiiiiddi_56", "jsCall_viiiiiddi_57", "jsCall_viiiiiddi_58", "jsCall_viiiiiddi_59", "jsCall_viiiiiddi_60", "jsCall_viiiiiddi_61", "jsCall_viiiiiddi_62", "jsCall_viiiiiddi_63", "jsCall_viiiiiddi_64", "jsCall_viiiiiddi_65", "jsCall_viiiiiddi_66", "jsCall_viiiiiddi_67", "jsCall_viiiiiddi_68", "jsCall_viiiiiddi_69", "jsCall_viiiiiddi_70", "jsCall_viiiiiddi_71", "jsCall_viiiiiddi_72", "jsCall_viiiiiddi_73", "jsCall_viiiiiddi_74", "jsCall_viiiiiddi_75", "jsCall_viiiiiddi_76", "jsCall_viiiiiddi_77", "jsCall_viiiiiddi_78", "jsCall_viiiiiddi_79", "jsCall_viiiiiddi_80", "jsCall_viiiiiddi_81", "jsCall_viiiiiddi_82", "jsCall_viiiiiddi_83", "jsCall_viiiiiddi_84", "jsCall_viiiiiddi_85", "jsCall_viiiiiddi_86", "jsCall_viiiiiddi_87", "jsCall_viiiiiddi_88", "jsCall_viiiiiddi_89", "jsCall_viiiiiddi_90", "jsCall_viiiiiddi_91", "jsCall_viiiiiddi_92", "jsCall_viiiiiddi_93", "jsCall_viiiiiddi_94", "jsCall_viiiiiddi_95", "jsCall_viiiiiddi_96", "jsCall_viiiiiddi_97", "jsCall_viiiiiddi_98", "jsCall_viiiiiddi_99", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "jsCall_viiiiii_35", "jsCall_viiiiii_36", "jsCall_viiiiii_37", "jsCall_viiiiii_38", "jsCall_viiiiii_39", "jsCall_viiiiii_40", "jsCall_viiiiii_41", "jsCall_viiiiii_42", "jsCall_viiiiii_43", "jsCall_viiiiii_44", "jsCall_viiiiii_45", "jsCall_viiiiii_46", "jsCall_viiiiii_47", "jsCall_viiiiii_48", "jsCall_viiiiii_49", "jsCall_viiiiii_50", "jsCall_viiiiii_51", "jsCall_viiiiii_52", "jsCall_viiiiii_53", "jsCall_viiiiii_54", "jsCall_viiiiii_55", "jsCall_viiiiii_56", "jsCall_viiiiii_57", "jsCall_viiiiii_58", "jsCall_viiiiii_59", "jsCall_viiiiii_60", "jsCall_viiiiii_61", "jsCall_viiiiii_62", "jsCall_viiiiii_63", "jsCall_viiiiii_64", "jsCall_viiiiii_65", "jsCall_viiiiii_66", "jsCall_viiiiii_67", "jsCall_viiiiii_68", "jsCall_viiiiii_69", "jsCall_viiiiii_70", "jsCall_viiiiii_71", "jsCall_viiiiii_72", "jsCall_viiiiii_73", "jsCall_viiiiii_74", "jsCall_viiiiii_75", "jsCall_viiiiii_76", "jsCall_viiiiii_77", "jsCall_viiiiii_78", "jsCall_viiiiii_79", "jsCall_viiiiii_80", "jsCall_viiiiii_81", "jsCall_viiiiii_82", "jsCall_viiiiii_83", "jsCall_viiiiii_84", "jsCall_viiiiii_85", "jsCall_viiiiii_86", "jsCall_viiiiii_87", "jsCall_viiiiii_88", "jsCall_viiiiii_89", "jsCall_viiiiii_90", "jsCall_viiiiii_91", "jsCall_viiiiii_92", "jsCall_viiiiii_93", "jsCall_viiiiii_94", "jsCall_viiiiii_95", "jsCall_viiiiii_96", "jsCall_viiiiii_97", "jsCall_viiiiii_98", "jsCall_viiiiii_99", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "jsCall_viiiiiifi_35", "jsCall_viiiiiifi_36", "jsCall_viiiiiifi_37", "jsCall_viiiiiifi_38", "jsCall_viiiiiifi_39", "jsCall_viiiiiifi_40", "jsCall_viiiiiifi_41", "jsCall_viiiiiifi_42", "jsCall_viiiiiifi_43", "jsCall_viiiiiifi_44", "jsCall_viiiiiifi_45", "jsCall_viiiiiifi_46", "jsCall_viiiiiifi_47", "jsCall_viiiiiifi_48", "jsCall_viiiiiifi_49", "jsCall_viiiiiifi_50", "jsCall_viiiiiifi_51", "jsCall_viiiiiifi_52", "jsCall_viiiiiifi_53", "jsCall_viiiiiifi_54", "jsCall_viiiiiifi_55", "jsCall_viiiiiifi_56", "jsCall_viiiiiifi_57", "jsCall_viiiiiifi_58", "jsCall_viiiiiifi_59", "jsCall_viiiiiifi_60", "jsCall_viiiiiifi_61", "jsCall_viiiiiifi_62", "jsCall_viiiiiifi_63", "jsCall_viiiiiifi_64", "jsCall_viiiiiifi_65", "jsCall_viiiiiifi_66", "jsCall_viiiiiifi_67", "jsCall_viiiiiifi_68", "jsCall_viiiiiifi_69", "jsCall_viiiiiifi_70", "jsCall_viiiiiifi_71", "jsCall_viiiiiifi_72", "jsCall_viiiiiifi_73", "jsCall_viiiiiifi_74", "jsCall_viiiiiifi_75", "jsCall_viiiiiifi_76", "jsCall_viiiiiifi_77", "jsCall_viiiiiifi_78", "jsCall_viiiiiifi_79", "jsCall_viiiiiifi_80", "jsCall_viiiiiifi_81", "jsCall_viiiiiifi_82", "jsCall_viiiiiifi_83", "jsCall_viiiiiifi_84", "jsCall_viiiiiifi_85", "jsCall_viiiiiifi_86", "jsCall_viiiiiifi_87", "jsCall_viiiiiifi_88", "jsCall_viiiiiifi_89", "jsCall_viiiiiifi_90", "jsCall_viiiiiifi_91", "jsCall_viiiiiifi_92", "jsCall_viiiiiifi_93", "jsCall_viiiiiifi_94", "jsCall_viiiiiifi_95", "jsCall_viiiiiifi_96", "jsCall_viiiiiifi_97", "jsCall_viiiiiifi_98", "jsCall_viiiiiifi_99", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "jsCall_viiiiiii_35", "jsCall_viiiiiii_36", "jsCall_viiiiiii_37", "jsCall_viiiiiii_38", "jsCall_viiiiiii_39", "jsCall_viiiiiii_40", "jsCall_viiiiiii_41", "jsCall_viiiiiii_42", "jsCall_viiiiiii_43", "jsCall_viiiiiii_44", "jsCall_viiiiiii_45", "jsCall_viiiiiii_46", "jsCall_viiiiiii_47", "jsCall_viiiiiii_48", "jsCall_viiiiiii_49", "jsCall_viiiiiii_50", "jsCall_viiiiiii_51", "jsCall_viiiiiii_52", "jsCall_viiiiiii_53", "jsCall_viiiiiii_54", "jsCall_viiiiiii_55", "jsCall_viiiiiii_56", "jsCall_viiiiiii_57", "jsCall_viiiiiii_58", "jsCall_viiiiiii_59", "jsCall_viiiiiii_60", "jsCall_viiiiiii_61", "jsCall_viiiiiii_62", "jsCall_viiiiiii_63", "jsCall_viiiiiii_64", "jsCall_viiiiiii_65", "jsCall_viiiiiii_66", "jsCall_viiiiiii_67", "jsCall_viiiiiii_68", "jsCall_viiiiiii_69", "jsCall_viiiiiii_70", "jsCall_viiiiiii_71", "jsCall_viiiiiii_72", "jsCall_viiiiiii_73", "jsCall_viiiiiii_74", "jsCall_viiiiiii_75", "jsCall_viiiiiii_76", "jsCall_viiiiiii_77", "jsCall_viiiiiii_78", "jsCall_viiiiiii_79", "jsCall_viiiiiii_80", "jsCall_viiiiiii_81", "jsCall_viiiiiii_82", "jsCall_viiiiiii_83", "jsCall_viiiiiii_84", "jsCall_viiiiiii_85", "jsCall_viiiiiii_86", "jsCall_viiiiiii_87", "jsCall_viiiiiii_88", "jsCall_viiiiiii_89", "jsCall_viiiiiii_90", "jsCall_viiiiiii_91", "jsCall_viiiiiii_92", "jsCall_viiiiiii_93", "jsCall_viiiiiii_94", "jsCall_viiiiiii_95", "jsCall_viiiiiii_96", "jsCall_viiiiiii_97", "jsCall_viiiiiii_98", "jsCall_viiiiiii_99", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", "_sum2_s16", "_sum2_clip_s16", "_sum2_float", "_sum2_double", "_sum2_s32", 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]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "jsCall_viiiiiiii_35", "jsCall_viiiiiiii_36", "jsCall_viiiiiiii_37", "jsCall_viiiiiiii_38", "jsCall_viiiiiiii_39", "jsCall_viiiiiiii_40", "jsCall_viiiiiiii_41", "jsCall_viiiiiiii_42", "jsCall_viiiiiiii_43", "jsCall_viiiiiiii_44", "jsCall_viiiiiiii_45", "jsCall_viiiiiiii_46", "jsCall_viiiiiiii_47", "jsCall_viiiiiiii_48", "jsCall_viiiiiiii_49", "jsCall_viiiiiiii_50", "jsCall_viiiiiiii_51", "jsCall_viiiiiiii_52", "jsCall_viiiiiiii_53", "jsCall_viiiiiiii_54", "jsCall_viiiiiiii_55", "jsCall_viiiiiiii_56", "jsCall_viiiiiiii_57", "jsCall_viiiiiiii_58", "jsCall_viiiiiiii_59", "jsCall_viiiiiiii_60", "jsCall_viiiiiiii_61", "jsCall_viiiiiiii_62", "jsCall_viiiiiiii_63", "jsCall_viiiiiiii_64", "jsCall_viiiiiiii_65", "jsCall_viiiiiiii_66", "jsCall_viiiiiiii_67", "jsCall_viiiiiiii_68", "jsCall_viiiiiiii_69", "jsCall_viiiiiiii_70", "jsCall_viiiiiiii_71", "jsCall_viiiiiiii_72", "jsCall_viiiiiiii_73", "jsCall_viiiiiiii_74", "jsCall_viiiiiiii_75", "jsCall_viiiiiiii_76", "jsCall_viiiiiiii_77", "jsCall_viiiiiiii_78", "jsCall_viiiiiiii_79", "jsCall_viiiiiiii_80", "jsCall_viiiiiiii_81", "jsCall_viiiiiiii_82", "jsCall_viiiiiiii_83", "jsCall_viiiiiiii_84", "jsCall_viiiiiiii_85", "jsCall_viiiiiiii_86", "jsCall_viiiiiiii_87", "jsCall_viiiiiiii_88", "jsCall_viiiiiiii_89", "jsCall_viiiiiiii_90", "jsCall_viiiiiiii_91", "jsCall_viiiiiiii_92", "jsCall_viiiiiiii_93", "jsCall_viiiiiiii_94", "jsCall_viiiiiiii_95", "jsCall_viiiiiiii_96", "jsCall_viiiiiiii_97", "jsCall_viiiiiiii_98", "jsCall_viiiiiiii_99", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", "jsCall_viiiiiiiid_35", "jsCall_viiiiiiiid_36", "jsCall_viiiiiiiid_37", "jsCall_viiiiiiiid_38", "jsCall_viiiiiiiid_39", "jsCall_viiiiiiiid_40", "jsCall_viiiiiiiid_41", "jsCall_viiiiiiiid_42", "jsCall_viiiiiiiid_43", "jsCall_viiiiiiiid_44", "jsCall_viiiiiiiid_45", "jsCall_viiiiiiiid_46", "jsCall_viiiiiiiid_47", "jsCall_viiiiiiiid_48", "jsCall_viiiiiiiid_49", "jsCall_viiiiiiiid_50", "jsCall_viiiiiiiid_51", "jsCall_viiiiiiiid_52", "jsCall_viiiiiiiid_53", "jsCall_viiiiiiiid_54", "jsCall_viiiiiiiid_55", "jsCall_viiiiiiiid_56", "jsCall_viiiiiiiid_57", "jsCall_viiiiiiiid_58", "jsCall_viiiiiiiid_59", "jsCall_viiiiiiiid_60", "jsCall_viiiiiiiid_61", "jsCall_viiiiiiiid_62", "jsCall_viiiiiiiid_63", "jsCall_viiiiiiiid_64", "jsCall_viiiiiiiid_65", "jsCall_viiiiiiiid_66", "jsCall_viiiiiiiid_67", "jsCall_viiiiiiiid_68", "jsCall_viiiiiiiid_69", "jsCall_viiiiiiiid_70", "jsCall_viiiiiiiid_71", "jsCall_viiiiiiiid_72", "jsCall_viiiiiiiid_73", "jsCall_viiiiiiiid_74", "jsCall_viiiiiiiid_75", "jsCall_viiiiiiiid_76", "jsCall_viiiiiiiid_77", "jsCall_viiiiiiiid_78", "jsCall_viiiiiiiid_79", "jsCall_viiiiiiiid_80", "jsCall_viiiiiiiid_81", "jsCall_viiiiiiiid_82", "jsCall_viiiiiiiid_83", "jsCall_viiiiiiiid_84", "jsCall_viiiiiiiid_85", "jsCall_viiiiiiiid_86", "jsCall_viiiiiiiid_87", "jsCall_viiiiiiiid_88", "jsCall_viiiiiiiid_89", "jsCall_viiiiiiiid_90", "jsCall_viiiiiiiid_91", "jsCall_viiiiiiiid_92", "jsCall_viiiiiiiid_93", "jsCall_viiiiiiiid_94", "jsCall_viiiiiiiid_95", "jsCall_viiiiiiiid_96", "jsCall_viiiiiiiid_97", "jsCall_viiiiiiiid_98", "jsCall_viiiiiiiid_99", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", "jsCall_viiiiiiiidi_35", "jsCall_viiiiiiiidi_36", "jsCall_viiiiiiiidi_37", "jsCall_viiiiiiiidi_38", "jsCall_viiiiiiiidi_39", "jsCall_viiiiiiiidi_40", "jsCall_viiiiiiiidi_41", "jsCall_viiiiiiiidi_42", "jsCall_viiiiiiiidi_43", "jsCall_viiiiiiiidi_44", "jsCall_viiiiiiiidi_45", "jsCall_viiiiiiiidi_46", "jsCall_viiiiiiiidi_47", "jsCall_viiiiiiiidi_48", "jsCall_viiiiiiiidi_49", "jsCall_viiiiiiiidi_50", "jsCall_viiiiiiiidi_51", "jsCall_viiiiiiiidi_52", "jsCall_viiiiiiiidi_53", "jsCall_viiiiiiiidi_54", "jsCall_viiiiiiiidi_55", "jsCall_viiiiiiiidi_56", "jsCall_viiiiiiiidi_57", "jsCall_viiiiiiiidi_58", "jsCall_viiiiiiiidi_59", "jsCall_viiiiiiiidi_60", "jsCall_viiiiiiiidi_61", "jsCall_viiiiiiiidi_62", "jsCall_viiiiiiiidi_63", "jsCall_viiiiiiiidi_64", "jsCall_viiiiiiiidi_65", "jsCall_viiiiiiiidi_66", "jsCall_viiiiiiiidi_67", "jsCall_viiiiiiiidi_68", "jsCall_viiiiiiiidi_69", "jsCall_viiiiiiiidi_70", "jsCall_viiiiiiiidi_71", "jsCall_viiiiiiiidi_72", "jsCall_viiiiiiiidi_73", "jsCall_viiiiiiiidi_74", "jsCall_viiiiiiiidi_75", "jsCall_viiiiiiiidi_76", "jsCall_viiiiiiiidi_77", "jsCall_viiiiiiiidi_78", "jsCall_viiiiiiiidi_79", "jsCall_viiiiiiiidi_80", "jsCall_viiiiiiiidi_81", "jsCall_viiiiiiiidi_82", "jsCall_viiiiiiiidi_83", "jsCall_viiiiiiiidi_84", "jsCall_viiiiiiiidi_85", "jsCall_viiiiiiiidi_86", "jsCall_viiiiiiiidi_87", "jsCall_viiiiiiiidi_88", "jsCall_viiiiiiiidi_89", "jsCall_viiiiiiiidi_90", "jsCall_viiiiiiiidi_91", "jsCall_viiiiiiiidi_92", "jsCall_viiiiiiiidi_93", "jsCall_viiiiiiiidi_94", "jsCall_viiiiiiiidi_95", "jsCall_viiiiiiiidi_96", "jsCall_viiiiiiiidi_97", "jsCall_viiiiiiiidi_98", "jsCall_viiiiiiiidi_99", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "jsCall_viiiiiiiii_35", "jsCall_viiiiiiiii_36", "jsCall_viiiiiiiii_37", "jsCall_viiiiiiiii_38", "jsCall_viiiiiiiii_39", "jsCall_viiiiiiiii_40", "jsCall_viiiiiiiii_41", "jsCall_viiiiiiiii_42", "jsCall_viiiiiiiii_43", "jsCall_viiiiiiiii_44", "jsCall_viiiiiiiii_45", "jsCall_viiiiiiiii_46", "jsCall_viiiiiiiii_47", "jsCall_viiiiiiiii_48", "jsCall_viiiiiiiii_49", "jsCall_viiiiiiiii_50", "jsCall_viiiiiiiii_51", "jsCall_viiiiiiiii_52", "jsCall_viiiiiiiii_53", "jsCall_viiiiiiiii_54", "jsCall_viiiiiiiii_55", "jsCall_viiiiiiiii_56", "jsCall_viiiiiiiii_57", "jsCall_viiiiiiiii_58", "jsCall_viiiiiiiii_59", "jsCall_viiiiiiiii_60", "jsCall_viiiiiiiii_61", "jsCall_viiiiiiiii_62", "jsCall_viiiiiiiii_63", "jsCall_viiiiiiiii_64", "jsCall_viiiiiiiii_65", "jsCall_viiiiiiiii_66", "jsCall_viiiiiiiii_67", "jsCall_viiiiiiiii_68", "jsCall_viiiiiiiii_69", "jsCall_viiiiiiiii_70", "jsCall_viiiiiiiii_71", "jsCall_viiiiiiiii_72", "jsCall_viiiiiiiii_73", "jsCall_viiiiiiiii_74", "jsCall_viiiiiiiii_75", "jsCall_viiiiiiiii_76", "jsCall_viiiiiiiii_77", "jsCall_viiiiiiiii_78", "jsCall_viiiiiiiii_79", "jsCall_viiiiiiiii_80", "jsCall_viiiiiiiii_81", "jsCall_viiiiiiiii_82", "jsCall_viiiiiiiii_83", "jsCall_viiiiiiiii_84", "jsCall_viiiiiiiii_85", "jsCall_viiiiiiiii_86", "jsCall_viiiiiiiii_87", "jsCall_viiiiiiiii_88", "jsCall_viiiiiiiii_89", "jsCall_viiiiiiiii_90", "jsCall_viiiiiiiii_91", "jsCall_viiiiiiiii_92", "jsCall_viiiiiiiii_93", "jsCall_viiiiiiiii_94", "jsCall_viiiiiiiii_95", "jsCall_viiiiiiiii_96", "jsCall_viiiiiiiii_97", "jsCall_viiiiiiiii_98", "jsCall_viiiiiiiii_99", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 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, 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, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "jsCall_viiiiiiiiii_35", "jsCall_viiiiiiiiii_36", "jsCall_viiiiiiiiii_37", "jsCall_viiiiiiiiii_38", "jsCall_viiiiiiiiii_39", "jsCall_viiiiiiiiii_40", "jsCall_viiiiiiiiii_41", "jsCall_viiiiiiiiii_42", "jsCall_viiiiiiiiii_43", "jsCall_viiiiiiiiii_44", "jsCall_viiiiiiiiii_45", "jsCall_viiiiiiiiii_46", "jsCall_viiiiiiiiii_47", "jsCall_viiiiiiiiii_48", "jsCall_viiiiiiiiii_49", "jsCall_viiiiiiiiii_50", "jsCall_viiiiiiiiii_51", "jsCall_viiiiiiiiii_52", "jsCall_viiiiiiiiii_53", "jsCall_viiiiiiiiii_54", "jsCall_viiiiiiiiii_55", "jsCall_viiiiiiiiii_56", "jsCall_viiiiiiiiii_57", "jsCall_viiiiiiiiii_58", "jsCall_viiiiiiiiii_59", "jsCall_viiiiiiiiii_60", "jsCall_viiiiiiiiii_61", "jsCall_viiiiiiiiii_62", "jsCall_viiiiiiiiii_63", "jsCall_viiiiiiiiii_64", "jsCall_viiiiiiiiii_65", "jsCall_viiiiiiiiii_66", "jsCall_viiiiiiiiii_67", "jsCall_viiiiiiiiii_68", "jsCall_viiiiiiiiii_69", "jsCall_viiiiiiiiii_70", "jsCall_viiiiiiiiii_71", "jsCall_viiiiiiiiii_72", "jsCall_viiiiiiiiii_73", "jsCall_viiiiiiiiii_74", "jsCall_viiiiiiiiii_75", "jsCall_viiiiiiiiii_76", "jsCall_viiiiiiiiii_77", "jsCall_viiiiiiiiii_78", "jsCall_viiiiiiiiii_79", "jsCall_viiiiiiiiii_80", "jsCall_viiiiiiiiii_81", "jsCall_viiiiiiiiii_82", "jsCall_viiiiiiiiii_83", "jsCall_viiiiiiiiii_84", "jsCall_viiiiiiiiii_85", "jsCall_viiiiiiiiii_86", "jsCall_viiiiiiiiii_87", "jsCall_viiiiiiiiii_88", "jsCall_viiiiiiiiii_89", "jsCall_viiiiiiiiii_90", "jsCall_viiiiiiiiii_91", "jsCall_viiiiiiiiii_92", "jsCall_viiiiiiiiii_93", "jsCall_viiiiiiiiii_94", "jsCall_viiiiiiiiii_95", "jsCall_viiiiiiiiii_96", "jsCall_viiiiiiiiii_97", "jsCall_viiiiiiiiii_98", "jsCall_viiiiiiiiii_99", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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, 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, 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "jsCall_viiiiiiiiiii_35", "jsCall_viiiiiiiiiii_36", "jsCall_viiiiiiiiiii_37", "jsCall_viiiiiiiiiii_38", "jsCall_viiiiiiiiiii_39", "jsCall_viiiiiiiiiii_40", "jsCall_viiiiiiiiiii_41", "jsCall_viiiiiiiiiii_42", "jsCall_viiiiiiiiiii_43", "jsCall_viiiiiiiiiii_44", "jsCall_viiiiiiiiiii_45", "jsCall_viiiiiiiiiii_46", "jsCall_viiiiiiiiiii_47", "jsCall_viiiiiiiiiii_48", "jsCall_viiiiiiiiiii_49", "jsCall_viiiiiiiiiii_50", "jsCall_viiiiiiiiiii_51", "jsCall_viiiiiiiiiii_52", "jsCall_viiiiiiiiiii_53", "jsCall_viiiiiiiiiii_54", "jsCall_viiiiiiiiiii_55", "jsCall_viiiiiiiiiii_56", "jsCall_viiiiiiiiiii_57", "jsCall_viiiiiiiiiii_58", "jsCall_viiiiiiiiiii_59", "jsCall_viiiiiiiiiii_60", "jsCall_viiiiiiiiiii_61", "jsCall_viiiiiiiiiii_62", "jsCall_viiiiiiiiiii_63", "jsCall_viiiiiiiiiii_64", "jsCall_viiiiiiiiiii_65", "jsCall_viiiiiiiiiii_66", "jsCall_viiiiiiiiiii_67", "jsCall_viiiiiiiiiii_68", "jsCall_viiiiiiiiiii_69", "jsCall_viiiiiiiiiii_70", "jsCall_viiiiiiiiiii_71", "jsCall_viiiiiiiiiii_72", "jsCall_viiiiiiiiiii_73", "jsCall_viiiiiiiiiii_74", "jsCall_viiiiiiiiiii_75", "jsCall_viiiiiiiiiii_76", "jsCall_viiiiiiiiiii_77", "jsCall_viiiiiiiiiii_78", "jsCall_viiiiiiiiiii_79", "jsCall_viiiiiiiiiii_80", "jsCall_viiiiiiiiiii_81", "jsCall_viiiiiiiiiii_82", "jsCall_viiiiiiiiiii_83", "jsCall_viiiiiiiiiii_84", "jsCall_viiiiiiiiiii_85", "jsCall_viiiiiiiiiii_86", "jsCall_viiiiiiiiiii_87", "jsCall_viiiiiiiiiii_88", "jsCall_viiiiiiiiiii_89", "jsCall_viiiiiiiiiii_90", "jsCall_viiiiiiiiiii_91", "jsCall_viiiiiiiiiii_92", "jsCall_viiiiiiiiiii_93", "jsCall_viiiiiiiiiii_94", "jsCall_viiiiiiiiiii_95", "jsCall_viiiiiiiiiii_96", "jsCall_viiiiiiiiiii_97", "jsCall_viiiiiiiiiii_98", "jsCall_viiiiiiiiiii_99", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8", 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, 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, 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, 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]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "jsCall_viiiiiiiiiiii_35", "jsCall_viiiiiiiiiiii_36", "jsCall_viiiiiiiiiiii_37", "jsCall_viiiiiiiiiiii_38", "jsCall_viiiiiiiiiiii_39", "jsCall_viiiiiiiiiiii_40", "jsCall_viiiiiiiiiiii_41", "jsCall_viiiiiiiiiiii_42", "jsCall_viiiiiiiiiiii_43", "jsCall_viiiiiiiiiiii_44", "jsCall_viiiiiiiiiiii_45", "jsCall_viiiiiiiiiiii_46", "jsCall_viiiiiiiiiiii_47", "jsCall_viiiiiiiiiiii_48", "jsCall_viiiiiiiiiiii_49", "jsCall_viiiiiiiiiiii_50", "jsCall_viiiiiiiiiiii_51", "jsCall_viiiiiiiiiiii_52", "jsCall_viiiiiiiiiiii_53", "jsCall_viiiiiiiiiiii_54", "jsCall_viiiiiiiiiiii_55", "jsCall_viiiiiiiiiiii_56", "jsCall_viiiiiiiiiiii_57", "jsCall_viiiiiiiiiiii_58", "jsCall_viiiiiiiiiiii_59", "jsCall_viiiiiiiiiiii_60", "jsCall_viiiiiiiiiiii_61", "jsCall_viiiiiiiiiiii_62", "jsCall_viiiiiiiiiiii_63", "jsCall_viiiiiiiiiiii_64", "jsCall_viiiiiiiiiiii_65", "jsCall_viiiiiiiiiiii_66", "jsCall_viiiiiiiiiiii_67", "jsCall_viiiiiiiiiiii_68", "jsCall_viiiiiiiiiiii_69", "jsCall_viiiiiiiiiiii_70", "jsCall_viiiiiiiiiiii_71", "jsCall_viiiiiiiiiiii_72", "jsCall_viiiiiiiiiiii_73", "jsCall_viiiiiiiiiiii_74", "jsCall_viiiiiiiiiiii_75", "jsCall_viiiiiiiiiiii_76", "jsCall_viiiiiiiiiiii_77", "jsCall_viiiiiiiiiiii_78", "jsCall_viiiiiiiiiiii_79", "jsCall_viiiiiiiiiiii_80", "jsCall_viiiiiiiiiiii_81", "jsCall_viiiiiiiiiiii_82", "jsCall_viiiiiiiiiiii_83", "jsCall_viiiiiiiiiiii_84", "jsCall_viiiiiiiiiiii_85", "jsCall_viiiiiiiiiiii_86", "jsCall_viiiiiiiiiiii_87", "jsCall_viiiiiiiiiiii_88", "jsCall_viiiiiiiiiiii_89", "jsCall_viiiiiiiiiiii_90", "jsCall_viiiiiiiiiiii_91", "jsCall_viiiiiiiiiiii_92", "jsCall_viiiiiiiiiiii_93", "jsCall_viiiiiiiiiiii_94", "jsCall_viiiiiiiiiiii_95", "jsCall_viiiiiiiiiiii_96", "jsCall_viiiiiiiiiiii_97", "jsCall_viiiiiiiiiiii_98", "jsCall_viiiiiiiiiiii_99", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "jsCall_viiiiiiiiiiiiii_35", "jsCall_viiiiiiiiiiiiii_36", "jsCall_viiiiiiiiiiiiii_37", "jsCall_viiiiiiiiiiiiii_38", "jsCall_viiiiiiiiiiiiii_39", "jsCall_viiiiiiiiiiiiii_40", "jsCall_viiiiiiiiiiiiii_41", "jsCall_viiiiiiiiiiiiii_42", "jsCall_viiiiiiiiiiiiii_43", "jsCall_viiiiiiiiiiiiii_44", "jsCall_viiiiiiiiiiiiii_45", "jsCall_viiiiiiiiiiiiii_46", "jsCall_viiiiiiiiiiiiii_47", "jsCall_viiiiiiiiiiiiii_48", "jsCall_viiiiiiiiiiiiii_49", "jsCall_viiiiiiiiiiiiii_50", "jsCall_viiiiiiiiiiiiii_51", "jsCall_viiiiiiiiiiiiii_52", "jsCall_viiiiiiiiiiiiii_53", "jsCall_viiiiiiiiiiiiii_54", "jsCall_viiiiiiiiiiiiii_55", "jsCall_viiiiiiiiiiiiii_56", "jsCall_viiiiiiiiiiiiii_57", "jsCall_viiiiiiiiiiiiii_58", "jsCall_viiiiiiiiiiiiii_59", "jsCall_viiiiiiiiiiiiii_60", "jsCall_viiiiiiiiiiiiii_61", "jsCall_viiiiiiiiiiiiii_62", "jsCall_viiiiiiiiiiiiii_63", "jsCall_viiiiiiiiiiiiii_64", "jsCall_viiiiiiiiiiiiii_65", "jsCall_viiiiiiiiiiiiii_66", "jsCall_viiiiiiiiiiiiii_67", "jsCall_viiiiiiiiiiiiii_68", "jsCall_viiiiiiiiiiiiii_69", "jsCall_viiiiiiiiiiiiii_70", "jsCall_viiiiiiiiiiiiii_71", "jsCall_viiiiiiiiiiiiii_72", "jsCall_viiiiiiiiiiiiii_73", "jsCall_viiiiiiiiiiiiii_74", "jsCall_viiiiiiiiiiiiii_75", "jsCall_viiiiiiiiiiiiii_76", "jsCall_viiiiiiiiiiiiii_77", "jsCall_viiiiiiiiiiiiii_78", "jsCall_viiiiiiiiiiiiii_79", "jsCall_viiiiiiiiiiiiii_80", "jsCall_viiiiiiiiiiiiii_81", "jsCall_viiiiiiiiiiiiii_82", "jsCall_viiiiiiiiiiiiii_83", "jsCall_viiiiiiiiiiiiii_84", "jsCall_viiiiiiiiiiiiii_85", "jsCall_viiiiiiiiiiiiii_86", "jsCall_viiiiiiiiiiiiii_87", "jsCall_viiiiiiiiiiiiii_88", "jsCall_viiiiiiiiiiiiii_89", "jsCall_viiiiiiiiiiiiii_90", "jsCall_viiiiiiiiiiiiii_91", "jsCall_viiiiiiiiiiiiii_92", "jsCall_viiiiiiiiiiiiii_93", "jsCall_viiiiiiiiiiiiii_94", "jsCall_viiiiiiiiiiiiii_95", "jsCall_viiiiiiiiiiiiii_96", "jsCall_viiiiiiiiiiiiii_97", "jsCall_viiiiiiiiiiiiii_98", "jsCall_viiiiiiiiiiiiii_99", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8", 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, 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, 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, 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]; +var debug_table_viiijj = [0, "jsCall_viiijj_0", "jsCall_viiijj_1", "jsCall_viiijj_2", "jsCall_viiijj_3", "jsCall_viiijj_4", "jsCall_viiijj_5", "jsCall_viiijj_6", "jsCall_viiijj_7", "jsCall_viiijj_8", "jsCall_viiijj_9", "jsCall_viiijj_10", "jsCall_viiijj_11", "jsCall_viiijj_12", "jsCall_viiijj_13", "jsCall_viiijj_14", "jsCall_viiijj_15", "jsCall_viiijj_16", "jsCall_viiijj_17", "jsCall_viiijj_18", "jsCall_viiijj_19", "jsCall_viiijj_20", "jsCall_viiijj_21", "jsCall_viiijj_22", "jsCall_viiijj_23", "jsCall_viiijj_24", "jsCall_viiijj_25", "jsCall_viiijj_26", "jsCall_viiijj_27", "jsCall_viiijj_28", "jsCall_viiijj_29", "jsCall_viiijj_30", "jsCall_viiijj_31", "jsCall_viiijj_32", "jsCall_viiijj_33", "jsCall_viiijj_34", "jsCall_viiijj_35", "jsCall_viiijj_36", "jsCall_viiijj_37", "jsCall_viiijj_38", "jsCall_viiijj_39", "jsCall_viiijj_40", "jsCall_viiijj_41", "jsCall_viiijj_42", "jsCall_viiijj_43", "jsCall_viiijj_44", "jsCall_viiijj_45", "jsCall_viiijj_46", "jsCall_viiijj_47", "jsCall_viiijj_48", "jsCall_viiijj_49", "jsCall_viiijj_50", "jsCall_viiijj_51", "jsCall_viiijj_52", "jsCall_viiijj_53", "jsCall_viiijj_54", "jsCall_viiijj_55", "jsCall_viiijj_56", "jsCall_viiijj_57", "jsCall_viiijj_58", "jsCall_viiijj_59", "jsCall_viiijj_60", "jsCall_viiijj_61", "jsCall_viiijj_62", "jsCall_viiijj_63", "jsCall_viiijj_64", "jsCall_viiijj_65", "jsCall_viiijj_66", "jsCall_viiijj_67", "jsCall_viiijj_68", "jsCall_viiijj_69", "jsCall_viiijj_70", "jsCall_viiijj_71", "jsCall_viiijj_72", "jsCall_viiijj_73", "jsCall_viiijj_74", "jsCall_viiijj_75", "jsCall_viiijj_76", "jsCall_viiijj_77", "jsCall_viiijj_78", "jsCall_viiijj_79", "jsCall_viiijj_80", "jsCall_viiijj_81", "jsCall_viiijj_82", "jsCall_viiijj_83", "jsCall_viiijj_84", "jsCall_viiijj_85", "jsCall_viiijj_86", "jsCall_viiijj_87", "jsCall_viiijj_88", "jsCall_viiijj_89", "jsCall_viiijj_90", "jsCall_viiijj_91", "jsCall_viiijj_92", "jsCall_viiijj_93", "jsCall_viiijj_94", "jsCall_viiijj_95", "jsCall_viiijj_96", "jsCall_viiijj_97", "jsCall_viiijj_98", "jsCall_viiijj_99", "_resample_one_int16", "_resample_one_int32", "_resample_one_float", "_resample_one_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiidiiddii": debug_table_iiiiiiidiiddii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jii": debug_table_jii, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jij": debug_table_jij, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vdiidiiiiii": debug_table_vdiidiiiiii, + "vi": debug_table_vi, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiid": debug_table_viiid, + "viiii": debug_table_viiii, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiiddi": debug_table_viiiiiddi, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii, + "viiijj": debug_table_viiijj +}; + +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} + +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} + +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} + +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} + +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} + +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} + +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} + +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} + +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} + +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} + +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} + +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} + +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} + +function nullFunc_iiiiiiidiiddii(x) { + abortFnPtrError(x, "iiiiiiidiiddii") +} + +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} + +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} + +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} + +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} + +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} + +function nullFunc_jii(x) { + abortFnPtrError(x, "jii") +} + +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} + +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} + +function nullFunc_jij(x) { + abortFnPtrError(x, "jij") +} + +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} + +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} + +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} + +function nullFunc_vdiidiiiiii(x) { + abortFnPtrError(x, "vdiidiiiiii") +} + +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} + +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} + +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} + +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} + +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} + +function nullFunc_viiid(x) { + abortFnPtrError(x, "viiid") +} + +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} + +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} + +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} + +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} + +function nullFunc_viiiiiddi(x) { + abortFnPtrError(x, "viiiiiddi") +} + +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} + +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} + +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} + +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} + +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} + +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} + +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} + +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} + +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} + +function nullFunc_viiijj(x) { + abortFnPtrError(x, "viiijj") +} + +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iiiiiiidiiddii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) +} + +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_jii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jij(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_v(index) { + functionPointers[index]() +} + +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_vdiidiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} + +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} + +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} + +function jsCall_viiid(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiddi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} + +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} + +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} + +function jsCall_viiijj(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___buildEnvironment": ___buildEnvironment, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_nanosleep": _nanosleep, + "_pthread_cond_destroy": _pthread_cond_destroy, + "_pthread_cond_init": _pthread_cond_init, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiidiiddii": jsCall_iiiiiiidiiddii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jii": jsCall_jii, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jij": jsCall_jij, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vdiidiiiiii": jsCall_vdiidiiiiii, + "jsCall_vi": jsCall_vi, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiid": jsCall_viiid, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiiddi": jsCall_viiiiiddi, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "jsCall_viiijj": jsCall_viiijj, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiidiiddii": nullFunc_iiiiiiidiiddii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jii": nullFunc_jii, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jij": nullFunc_jij, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vdiidiiiiii": nullFunc_vdiidiiiiii, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiid": nullFunc_viiid, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiiddi": nullFunc_viiiiiddi, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "nullFunc_viiijj": nullFunc_viiijj, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffHttpG711Init = Module["_AVSniffHttpG711Init"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpG711Init"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeG711Frame = Module["_decodeG711Frame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeG711Frame"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getG711BufferLengthApi = Module["_getG711BufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getG711BufferLengthApi"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffG711Module = Module["_initializeSniffG711Module"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffG711Module"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _naluLListLength = Module["_naluLListLength"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_naluLListLength"].apply(null, arguments) +}; +var _pushSniffG711FlvData = Module["_pushSniffG711FlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffG711FlvData"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseG711 = Module["_releaseG711"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseG711"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "establishStackSpace")) Module["establishStackSpace"] = function() { + abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +var calledRun; + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; + +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch (e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} + +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; + +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} + +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +noExitRuntime = true; +run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-256mb-v20220421.js b/vite_vue_ts/public/dist/missile-256mb-v20220421.js deleted file mode 100644 index 6fb2b65e..00000000 --- a/vite_vue_ts/public/dist/missile-256mb-v20220421.js +++ /dev/null @@ -1,2 +0,0 @@ -var ENVIRONMENT_IS_PTHREAD = true; -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";var nodeFS;var nodePath;read_=function shell_read(filename,binary){var ret;if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)};setWindowTitle=function(title){document.title=title}}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments"))Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_")}});if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram"))Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram")}});if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit"))Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_")}});assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");if(!Object.getOwnPropertyDescriptor(Module,"read"))Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_")}});if(!Object.getOwnPropertyDescriptor(Module,"readAsync"))Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync")}});if(!Object.getOwnPropertyDescriptor(Module,"readBinary"))Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary")}});stackSave=stackRestore=stackAlloc=function(){abort("cannot use the stack before compiled code is ready to run, and has provided stack access")};function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly")}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var asm2wasmImports={"f64-rem":function(x,y){return x%y},"debugger":function(){debugger}};var jsCallStartIndex=1;var functionPointers=new Array(35);function addFunction(func,sig){assert(typeof func!=="undefined");var base=0;for(var i=base;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":3968,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;assert(returnType!=="array",'Return type should not be "array".');if(args){for(var i=0;i>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;if(u>=2097152)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).");outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var PAGE_SIZE=16384;var WASM_PAGE_SIZE=65536;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=1134400,STACK_MAX=6377280,DYNAMIC_BASE=6377280,DYNAMICTOP_PTR=1134176;assert(STACK_BASE%16===0,"stack must start aligned");assert(DYNAMIC_BASE%16===0,"heap must start aligned");var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||268435456;if(!Object.getOwnPropertyDescriptor(Module,"TOTAL_MEMORY"))Object.defineProperty(Module,"TOTAL_MEMORY",{configurable:true,get:function(){abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}});assert(INITIAL_TOTAL_MEMORY>=TOTAL_STACK,"TOTAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE,"maximum":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;assert(INITIAL_TOTAL_MEMORY%WASM_PAGE_SIZE===0);updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){var cookie1=HEAPU32[(STACK_MAX>>2)-1];var cookie2=HEAPU32[(STACK_MAX>>2)-2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+cookie2.toString(16)+" "+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-stackSave()+allocSize)+" bytes available!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function abortFnPtrError(ptr,sig){var possibleSig="";for(var x in debug_tables){var tbl=debug_tables[x];if(tbl[ptr]){possibleSig+='as sig "'+x+'" pointing to function '+tbl[ptr]+", "}}abort("Invalid function pointer "+ptr+" called with signature '"+sig+"'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: "+possibleSig)}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;var extra="";var output="abort("+what+") at "+stackTrace()+extra;throw output}if(!ENVIRONMENT_IS_PTHREAD)addOnPreRun(function(){if(typeof SharedArrayBuffer!=="undefined"){addRunDependency("pthreads");PThread.allocateUnusedWorkers(5,function(){removeRunDependency("pthreads")})}});var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="missile-256mb-v20220421.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_unstable":asmLibraryArg,"global":{"NaN":NaN,Infinity:Infinity},"global.Math":Math,"asm2wasm":asm2wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiatedSource(output){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}Module["asm"]=createWasm;var tempDouble;var tempI64;var ASM_CONSTS=[function(){if(typeof window!="undefined"){window.dispatchEvent(new CustomEvent("wasmLoaded"))}else{global.onWASMLoaded&&global.onWASMLoaded()}}];function _emscripten_asm_const_i(code){return ASM_CONSTS[code]()}__ATINIT__.push({func:function(){___emscripten_environ_constructor()}});var tempDoublePtr=1134384;assert(tempDoublePtr%8==0);function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b__Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var ENV={};function ___buildEnvironment(environ){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]="web_user";ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]=(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";ENV["_"]=thisProgram;poolPtr=getMemory(TOTAL_ENV_SIZE);envPtr=getMemory(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[environ>>2]=envPtr}else{envPtr=HEAP32[environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in ENV){if(typeof ENV[key]==="string"){var line=key+"="+ENV[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}function ___lock(){}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else err("failed to set errno from JS");return value}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=function(e){done(this.error);e.preventDefault()};transaction.oncomplete=function(e){if(!errored){callback(null)}};create.sort().forEach(function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};var NODEFS={isWindows:false,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={1024:flags["O_APPEND"],64:flags["O_CREAT"],128:flags["O_EXCL"],0:flags["O_RDONLY"],2:flags["O_RDWR"],4096:flags["O_SYNC"],512:flags["O_TRUNC"],1:flags["O_WRONLY"]}},bufferFrom:function(arrayBuffer){return Buffer["alloc"]?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)},convertNodeCode:function(e){var code=e.code;assert(code in ERRNO_CODES);return ERRNO_CODES[code]},mount:function(mount){assert(ENVIRONMENT_HAS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)},createNode:function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(28)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode:function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return stat.mode},realPath:function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)},flagsForNode:function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(28)}},node_ops:{getattr:function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr:function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},lookup:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod:function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}return node},rename:function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},unlink:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},rmdir:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readdir:function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},symlink:function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},readlink:function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}},stream_ops:{open:function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},close:function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},read:function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},write:function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size},write:function(stream,buffer,offset,length,position){throw new FS.ErrnoError(29)},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(28)}return position}}};var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(path,opts){path=PATH_FS.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 2}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 2}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(fd){if(fd===undefined)fd=SYSCALLS.get();var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:___setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_close(){return _fd_close.apply(null,arguments)}function _fd_fdstat_get(fd,pbuf){try{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4;HEAP8[pbuf>>0]=type;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_fdstat_get(){return _fd_fdstat_get.apply(null,arguments)}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_seek(){return _fd_seek.apply(null,arguments)}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function ___wasi_fd_write(){return _fd_write.apply(null,arguments)}function __emscripten_fetch_free(id){delete Fetch.xhrs[id-1]}function _abort(){abort()}function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return 0||ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||typeof performance==="object"&&performance&&typeof performance["now"]==="function"}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(28);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function _emscripten_get_heap_size(){return HEAP8.length}function _emscripten_is_main_browser_thread(){return!ENVIRONMENT_IS_WORKER}function abortOnCannotGrowMemory(requestedSize){abort("Cannot enlarge memory arrays to size "+requestedSize+" bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+HEAP8.length+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function _emscripten_resize_heap(requestedSize){abortOnCannotGrowMemory(requestedSize)}var Fetch={xhrs:[],setu64:function(addr,val){HEAPU32[addr>>2]=val;HEAPU32[addr+4>>2]=val/4294967296|0},openDatabase:function(dbname,dbversion,onsuccess,onerror){try{var openRequest=indexedDB.open(dbname,dbversion)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function(event){var db=event.target.result;if(db.objectStoreNames.contains("FILES")){db.deleteObjectStore("FILES")}db.createObjectStore("FILES")};openRequest.onsuccess=function(event){onsuccess(event.target.result)};openRequest.onerror=function(error){onerror(error)}},staticInit:function(){var isMainThread=typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined";var onsuccess=function(db){Fetch.dbInstance=db;if(isMainThread){removeRunDependency("library_fetch_init")}};var onerror=function(){Fetch.dbInstance=false;if(isMainThread){removeRunDependency("library_fetch_init")}};Fetch.openDatabase("emscripten_filesystem",1,onsuccess,onerror);if(typeof ENVIRONMENT_IS_FETCH_WORKER==="undefined"||!ENVIRONMENT_IS_FETCH_WORKER)addRunDependency("library_fetch_init")}};function __emscripten_fetch_xhr(fetch,onsuccess,onerror,onprogress,onreadystatechange){var url=HEAPU32[fetch+8>>2];if(!url){onerror(fetch,0,"no url specified!");return}var url_=UTF8ToString(url);var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);if(!requestMethod)requestMethod="GET";var userData=HEAPU32[fetch_attr+32>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var timeoutMsecs=HEAPU32[fetch_attr+56>>2];var withCredentials=!!HEAPU32[fetch_attr+60>>2];var destinationPath=HEAPU32[fetch_attr+64>>2];var userName=HEAPU32[fetch_attr+68>>2];var password=HEAPU32[fetch_attr+72>>2];var requestHeaders=HEAPU32[fetch_attr+76>>2];var overriddenMimeType=HEAPU32[fetch_attr+80>>2];var dataPtr=HEAPU32[fetch_attr+84>>2];var dataLength=HEAPU32[fetch_attr+88>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var fetchAttrSynchronous=!!(fetchAttributes&64);var fetchAttrWaitable=!!(fetchAttributes&128);var userNameStr=userName?UTF8ToString(userName):undefined;var passwordStr=password?UTF8ToString(password):undefined;var overriddenMimeTypeStr=overriddenMimeType?UTF8ToString(overriddenMimeType):undefined;var xhr=new XMLHttpRequest;xhr.withCredentials=withCredentials;xhr.open(requestMethod,url_,!fetchAttrSynchronous,userNameStr,passwordStr);if(!fetchAttrSynchronous)xhr.timeout=timeoutMsecs;xhr.url_=url_;assert(!fetchAttrStreamData,"streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()");xhr.responseType="arraybuffer";if(overriddenMimeType){xhr.overrideMimeType(overriddenMimeTypeStr)}if(requestHeaders){for(;;){var key=HEAPU32[requestHeaders>>2];if(!key)break;var value=HEAPU32[requestHeaders+4>>2];if(!value)break;requestHeaders+=8;var keyStr=UTF8ToString(key);var valueStr=UTF8ToString(value);xhr.setRequestHeader(keyStr,valueStr)}}Fetch.xhrs.push(xhr);var id=Fetch.xhrs.length;HEAPU32[fetch+0>>2]=id;var data=dataPtr&&dataLength?HEAPU8.slice(dataPtr,dataPtr+dataLength):null;xhr.onload=function(e){var len=xhr.response?xhr.response.byteLength:0;var ptr=0;var ptrLen=0;if(fetchAttrLoadToMemory&&!fetchAttrStreamData){ptrLen=len;ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,0);if(len){Fetch.setu64(fetch+32,len)}HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState===4&&xhr.status===0){if(len>0)xhr.status=200;else xhr.status=404}HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(xhr.status>=200&&xhr.status<300){if(onsuccess)onsuccess(fetch,xhr,e)}else{if(onerror)onerror(fetch,xhr,e)}};xhr.onerror=function(e){var status=xhr.status;if(xhr.readyState===4&&status===0)status=404;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=xhr.readyState;HEAPU16[fetch+42>>1]=status;if(onerror)onerror(fetch,xhr,e)};xhr.ontimeout=function(e){if(onerror)onerror(fetch,xhr,e)};xhr.onprogress=function(e){var ptrLen=fetchAttrLoadToMemory&&fetchAttrStreamData&&xhr.response?xhr.response.byteLength:0;var ptr=0;if(fetchAttrLoadToMemory&&fetchAttrStreamData){ptr=_malloc(ptrLen);HEAPU8.set(new Uint8Array(xhr.response),ptr)}HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,ptrLen);Fetch.setu64(fetch+24,e.loaded-ptrLen);Fetch.setu64(fetch+32,e.total);HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=3&&xhr.status===0&&e.loaded>0)xhr.status=200;HEAPU16[fetch+42>>1]=xhr.status;if(xhr.statusText)stringToUTF8(xhr.statusText,fetch+44,64);if(onprogress)onprogress(fetch,xhr,e)};xhr.onreadystatechange=function(e){HEAPU16[fetch+40>>1]=xhr.readyState;if(xhr.readyState>=2){HEAPU16[fetch+42>>1]=xhr.status}if(onreadystatechange)onreadystatechange(fetch,xhr,e)};try{xhr.send(data)}catch(e){if(onerror)onerror(fetch,xhr,e)}}function __emscripten_fetch_cache_data(db,fetch,data,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var destinationPath=HEAPU32[fetch_attr+64>>2];if(!destinationPath)destinationPath=HEAPU32[fetch+8>>2];var destinationPathStr=UTF8ToString(destinationPath);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var putRequest=packages.put(data,destinationPathStr);putRequest.onsuccess=function(event){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,destinationPathStr)};putRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=413;stringToUTF8("Payload Too Large",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_load_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readonly");var packages=transaction.objectStore("FILES");var getRequest=packages.get(pathStr);getRequest.onsuccess=function(event){if(event.target.result){var value=event.target.result;var len=value.byteLength||value.length;var ptr=_malloc(len);HEAPU8.set(new Uint8Array(value),ptr);HEAPU32[fetch+12>>2]=ptr;Fetch.setu64(fetch+16,len);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,len);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)}else{HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,"no data")}};getRequest.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function __emscripten_fetch_delete_cached_data(db,fetch,onsuccess,onerror){if(!db){onerror(fetch,0,"IndexedDB not available!");return}var fetch_attr=fetch+112;var path=HEAPU32[fetch_attr+64>>2];if(!path)path=HEAPU32[fetch+8>>2];var pathStr=UTF8ToString(path);try{var transaction=db.transaction(["FILES"],"readwrite");var packages=transaction.objectStore("FILES");var request=packages.delete(pathStr);request.onsuccess=function(event){var value=event.target.result;HEAPU32[fetch+12>>2]=0;Fetch.setu64(fetch+16,0);Fetch.setu64(fetch+24,0);Fetch.setu64(fetch+32,0);HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=200;stringToUTF8("OK",fetch+44,64);onsuccess(fetch,0,value)};request.onerror=function(error){HEAPU16[fetch+40>>1]=4;HEAPU16[fetch+42>>1]=404;stringToUTF8("Not Found",fetch+44,64);onerror(fetch,0,error)}}catch(e){onerror(fetch,0,e)}}function _emscripten_start_fetch(fetch,successcb,errorcb,progresscb,readystatechangecb){if(typeof noExitRuntime!=="undefined")noExitRuntime=true;var fetch_attr=fetch+112;var requestMethod=UTF8ToString(fetch_attr);var onsuccess=HEAPU32[fetch_attr+36>>2];var onerror=HEAPU32[fetch_attr+40>>2];var onprogress=HEAPU32[fetch_attr+44>>2];var onreadystatechange=HEAPU32[fetch_attr+48>>2];var fetchAttributes=HEAPU32[fetch_attr+52>>2];var fetchAttrLoadToMemory=!!(fetchAttributes&1);var fetchAttrStreamData=!!(fetchAttributes&2);var fetchAttrPersistFile=!!(fetchAttributes&4);var fetchAttrNoDownload=!!(fetchAttributes&32);var fetchAttrAppend=!!(fetchAttributes&8);var fetchAttrReplace=!!(fetchAttributes&16);var reportSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var reportProgress=function(fetch,xhr,e){if(onprogress)dynCall_vi(onprogress,fetch);else if(progresscb)progresscb(fetch)};var reportError=function(fetch,xhr,e){if(onerror)dynCall_vi(onerror,fetch);else if(errorcb)errorcb(fetch)};var reportReadyStateChange=function(fetch,xhr,e){if(onreadystatechange)dynCall_vi(onreadystatechange,fetch);else if(readystatechangecb)readystatechangecb(fetch)};var performUncachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,reportSuccess,reportError,reportProgress,reportReadyStateChange)};var cacheResultAndReportSuccess=function(fetch,xhr,e){var storeSuccess=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};var storeError=function(fetch,xhr,e){if(onsuccess)dynCall_vi(onsuccess,fetch);else if(successcb)successcb(fetch)};__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,xhr.response,storeSuccess,storeError)};var performCachedXhr=function(fetch,xhr,e){__emscripten_fetch_xhr(fetch,cacheResultAndReportSuccess,reportError,reportProgress,reportReadyStateChange)};if(requestMethod==="EM_IDB_STORE"){var ptr=HEAPU32[fetch_attr+84>>2];__emscripten_fetch_cache_data(Fetch.dbInstance,fetch,HEAPU8.slice(ptr,ptr+HEAPU32[fetch_attr+88>>2]),reportSuccess,reportError)}else if(requestMethod==="EM_IDB_DELETE"){__emscripten_fetch_delete_cached_data(Fetch.dbInstance,fetch,reportSuccess,reportError)}else if(!fetchAttrReplace){__emscripten_fetch_load_cached_data(Fetch.dbInstance,fetch,reportSuccess,fetchAttrNoDownload?reportError:fetchAttrPersistFile?performCachedXhr:performUncachedXhr)}else if(!fetchAttrNoDownload){__emscripten_fetch_xhr(fetch,fetchAttrPersistFile?cacheResultAndReportSuccess:reportSuccess,reportError,reportProgress,reportReadyStateChange)}else{return 0}return fetch}var _fabs=Math_abs;function _getenv(name){if(name===0)return 0;name=UTF8ToString(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var ___tm_timezone=(stringToUTF8("GMT",1134272,4),1134272);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(a0){return _llvm_exp2_f32(a0)}function _llvm_log2_f32(x){return Math.log(x)/Math.LN2}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);stackRestore(ret)}function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(stackSave());return self.LLVM_SAVEDSTACKS.length-1}var _llvm_trunc_f64=Math_trunc;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[__get_timezone()>>2]=(new Date).getTimezoneOffset()*60;var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);HEAP32[__get_daylight()>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()>2]=winterNamePtr;HEAP32[__get_tzname()+4>>2]=summerNamePtr}else{HEAP32[__get_tzname()>>2]=summerNamePtr;HEAP32[__get_tzname()+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[__get_tzname()+(dst?4:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _usleep(useconds){var msec=useconds/1e3;if((ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]){var start=self["performance"]["now"]();while(self["performance"]["now"]()-start>2];var nanoseconds=HEAP32[rqtp+4>>2];if(nanoseconds<0||nanoseconds>999999999||seconds<0){___setErrNo(28);return-1}if(rmtp!==0){HEAP32[rmtp>>2]=0;HEAP32[rmtp+4>>2]=0}return _usleep(seconds*1e6+nanoseconds/1e3)}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_create(){return 6}function _pthread_join(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:var maxHeapSize=2*1024*1024*1024-65536;maxHeapSize=HEAPU8.length;return maxHeapSize/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(28);return-1}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}FS.staticInit();if(ENVIRONMENT_HAS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof performance==="object"&&performance&&typeof performance["now"]==="function"){_emscripten_get_now=function(){return performance["now"]()}}else{_emscripten_get_now=Date.now}Fetch.staticInit();function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var debug_table_dd=[0,"jsCall_dd_0","jsCall_dd_1","jsCall_dd_2","jsCall_dd_3","jsCall_dd_4","jsCall_dd_5","jsCall_dd_6","jsCall_dd_7","jsCall_dd_8","jsCall_dd_9","jsCall_dd_10","jsCall_dd_11","jsCall_dd_12","jsCall_dd_13","jsCall_dd_14","jsCall_dd_15","jsCall_dd_16","jsCall_dd_17","jsCall_dd_18","jsCall_dd_19","jsCall_dd_20","jsCall_dd_21","jsCall_dd_22","jsCall_dd_23","jsCall_dd_24","jsCall_dd_25","jsCall_dd_26","jsCall_dd_27","jsCall_dd_28","jsCall_dd_29","jsCall_dd_30","jsCall_dd_31","jsCall_dd_32","jsCall_dd_33","jsCall_dd_34","_sinh","_cosh","_tanh","_sin","_cos","_tan","_atan","_asin","_acos","_exp","_log","_fabs","_etime",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_did=[0,"jsCall_did_0","jsCall_did_1","jsCall_did_2","jsCall_did_3","jsCall_did_4","jsCall_did_5","jsCall_did_6","jsCall_did_7","jsCall_did_8","jsCall_did_9","jsCall_did_10","jsCall_did_11","jsCall_did_12","jsCall_did_13","jsCall_did_14","jsCall_did_15","jsCall_did_16","jsCall_did_17","jsCall_did_18","jsCall_did_19","jsCall_did_20","jsCall_did_21","jsCall_did_22","jsCall_did_23","jsCall_did_24","jsCall_did_25","jsCall_did_26","jsCall_did_27","jsCall_did_28","jsCall_did_29","jsCall_did_30","jsCall_did_31","jsCall_did_32","jsCall_did_33","jsCall_did_34",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];var debug_table_didd=[0,"jsCall_didd_0","jsCall_didd_1","jsCall_didd_2","jsCall_didd_3","jsCall_didd_4","jsCall_didd_5","jsCall_didd_6","jsCall_didd_7","jsCall_didd_8","jsCall_didd_9","jsCall_didd_10","jsCall_didd_11","jsCall_didd_12","jsCall_didd_13","jsCall_didd_14","jsCall_didd_15","jsCall_didd_16","jsCall_didd_17","jsCall_didd_18","jsCall_didd_19","jsCall_didd_20","jsCall_didd_21","jsCall_didd_22","jsCall_didd_23","jsCall_didd_24","jsCall_didd_25","jsCall_didd_26","jsCall_didd_27","jsCall_didd_28","jsCall_didd_29","jsCall_didd_30","jsCall_didd_31","jsCall_didd_32","jsCall_didd_33","jsCall_didd_34",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];var debug_table_fii=[0,"jsCall_fii_0","jsCall_fii_1","jsCall_fii_2","jsCall_fii_3","jsCall_fii_4","jsCall_fii_5","jsCall_fii_6","jsCall_fii_7","jsCall_fii_8","jsCall_fii_9","jsCall_fii_10","jsCall_fii_11","jsCall_fii_12","jsCall_fii_13","jsCall_fii_14","jsCall_fii_15","jsCall_fii_16","jsCall_fii_17","jsCall_fii_18","jsCall_fii_19","jsCall_fii_20","jsCall_fii_21","jsCall_fii_22","jsCall_fii_23","jsCall_fii_24","jsCall_fii_25","jsCall_fii_26","jsCall_fii_27","jsCall_fii_28","jsCall_fii_29","jsCall_fii_30","jsCall_fii_31","jsCall_fii_32","jsCall_fii_33","jsCall_fii_34","_sbr_sum_square_c",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];var debug_table_fiii=[0,"jsCall_fiii_0","jsCall_fiii_1","jsCall_fiii_2","jsCall_fiii_3","jsCall_fiii_4","jsCall_fiii_5","jsCall_fiii_6","jsCall_fiii_7","jsCall_fiii_8","jsCall_fiii_9","jsCall_fiii_10","jsCall_fiii_11","jsCall_fiii_12","jsCall_fiii_13","jsCall_fiii_14","jsCall_fiii_15","jsCall_fiii_16","jsCall_fiii_17","jsCall_fiii_18","jsCall_fiii_19","jsCall_fiii_20","jsCall_fiii_21","jsCall_fiii_22","jsCall_fiii_23","jsCall_fiii_24","jsCall_fiii_25","jsCall_fiii_26","jsCall_fiii_27","jsCall_fiii_28","jsCall_fiii_29","jsCall_fiii_30","jsCall_fiii_31","jsCall_fiii_32","jsCall_fiii_33","jsCall_fiii_34","_avpriv_scalarproduct_float_c",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];var debug_table_ii=[0,"jsCall_ii_0","jsCall_ii_1","jsCall_ii_2","jsCall_ii_3","jsCall_ii_4","jsCall_ii_5","jsCall_ii_6","jsCall_ii_7","jsCall_ii_8","jsCall_ii_9","jsCall_ii_10","jsCall_ii_11","jsCall_ii_12","jsCall_ii_13","jsCall_ii_14","jsCall_ii_15","jsCall_ii_16","jsCall_ii_17","jsCall_ii_18","jsCall_ii_19","jsCall_ii_20","jsCall_ii_21","jsCall_ii_22","jsCall_ii_23","jsCall_ii_24","jsCall_ii_25","jsCall_ii_26","jsCall_ii_27","jsCall_ii_28","jsCall_ii_29","jsCall_ii_30","jsCall_ii_31","jsCall_ii_32","jsCall_ii_33","jsCall_ii_34","_avi_probe","_avi_read_header","_avi_read_close","_av_default_item_name","_ff_avio_child_class_next","_flv_probe","_flv_read_header","_flv_read_close","_live_flv_probe","_mov_probe","_mov_read_header","_mov_read_close","_mpegps_probe","_mpegps_read_header","_mpegts_probe","_mpegts_read_header","_mpegts_read_close","_mpegvideo_probe","_ff_raw_video_read_header","_format_to_name","_format_child_class_next","_get_category","_urlcontext_to_name","_ff_urlcontext_child_class_next","_sws_context_to_name","_ff_bsf_child_class_next","_hevc_mp4toannexb_init","_hevc_init_thread_copy","_hevc_decode_init","_hevc_decode_free","_context_to_name","_codec_child_class_next","_get_category_2429","_aac_decode_init","_aac_decode_close","_init","___stdio_close","___emscripten_stdout_close","_initializeDecoderFunc","__getFrame","_closeVideoFunc","_releaseFunc","_initializeDemuxerFunc","_getPacketFunc","_releaseDemuxerFunc","_releaseSniffStreamFunc","_hflv_releaseFunc","_hflv_getBufferLength","_io_short_seek","_avio_rb16","_avio_rl16","_av_buffer_allocz","_av_buffer_alloc","_frame_worker_thread","_thread_worker",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,0,0,0,0];var debug_table_iid=[0,"jsCall_iid_0","jsCall_iid_1","jsCall_iid_2","jsCall_iid_3","jsCall_iid_4","jsCall_iid_5","jsCall_iid_6","jsCall_iid_7","jsCall_iid_8","jsCall_iid_9","jsCall_iid_10","jsCall_iid_11","jsCall_iid_12","jsCall_iid_13","jsCall_iid_14","jsCall_iid_15","jsCall_iid_16","jsCall_iid_17","jsCall_iid_18","jsCall_iid_19","jsCall_iid_20","jsCall_iid_21","jsCall_iid_22","jsCall_iid_23","jsCall_iid_24","jsCall_iid_25","jsCall_iid_26","jsCall_iid_27","jsCall_iid_28","jsCall_iid_29","jsCall_iid_30","jsCall_iid_31","jsCall_iid_32","jsCall_iid_33","jsCall_iid_34","_seekBufferFunc",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];var debug_table_iii=[0,"jsCall_iii_0","jsCall_iii_1","jsCall_iii_2","jsCall_iii_3","jsCall_iii_4","jsCall_iii_5","jsCall_iii_6","jsCall_iii_7","jsCall_iii_8","jsCall_iii_9","jsCall_iii_10","jsCall_iii_11","jsCall_iii_12","jsCall_iii_13","jsCall_iii_14","jsCall_iii_15","jsCall_iii_16","jsCall_iii_17","jsCall_iii_18","jsCall_iii_19","jsCall_iii_20","jsCall_iii_21","jsCall_iii_22","jsCall_iii_23","jsCall_iii_24","jsCall_iii_25","jsCall_iii_26","jsCall_iii_27","jsCall_iii_28","jsCall_iii_29","jsCall_iii_30","jsCall_iii_31","jsCall_iii_32","jsCall_iii_33","jsCall_iii_34","_avi_read_packet","_ff_avio_child_next","_flv_read_packet","_mov_read_packet","_mpegps_read_packet","_mpegts_read_packet","_mpegts_raw_read_packet","_ff_raw_read_partial_packet","_format_child_next","_urlcontext_child_next","_bsf_child_next","_hevc_mp4toannexb_filter","_hevc_update_thread_context","_null_filter","_codec_child_next","_initSniffStreamFunc","_hflv_initFunc","_hflv_getPacketFunc","_descriptor_compare","_io_read_pause","_avcodec_default_get_format","_hls_decode_entry","_ff_startcode_find_candidate_c","_color_table_compare",0,0,0,0];var debug_table_iiii=[0,"jsCall_iiii_0","jsCall_iiii_1","jsCall_iiii_2","jsCall_iiii_3","jsCall_iiii_4","jsCall_iiii_5","jsCall_iiii_6","jsCall_iiii_7","jsCall_iiii_8","jsCall_iiii_9","jsCall_iiii_10","jsCall_iiii_11","jsCall_iiii_12","jsCall_iiii_13","jsCall_iiii_14","jsCall_iiii_15","jsCall_iiii_16","jsCall_iiii_17","jsCall_iiii_18","jsCall_iiii_19","jsCall_iiii_20","jsCall_iiii_21","jsCall_iiii_22","jsCall_iiii_23","jsCall_iiii_24","jsCall_iiii_25","jsCall_iiii_26","jsCall_iiii_27","jsCall_iiii_28","jsCall_iiii_29","jsCall_iiii_30","jsCall_iiii_31","jsCall_iiii_32","jsCall_iiii_33","jsCall_iiii_34","_mov_read_aclr","_mov_read_avid","_mov_read_ares","_mov_read_avss","_mov_read_av1c","_mov_read_chpl","_mov_read_stco","_mov_read_colr","_mov_read_ctts","_mov_read_default","_mov_read_dpxe","_mov_read_dref","_mov_read_elst","_mov_read_enda","_mov_read_fiel","_mov_read_adrm","_mov_read_ftyp","_mov_read_glbl","_mov_read_hdlr","_mov_read_ilst","_mov_read_jp2h","_mov_read_mdat","_mov_read_mdhd","_mov_read_meta","_mov_read_moof","_mov_read_moov","_mov_read_mvhd","_mov_read_svq3","_mov_read_alac","_mov_read_pasp","_mov_read_sidx","_mov_read_stps","_mov_read_strf","_mov_read_stsc","_mov_read_stsd","_mov_read_stss","_mov_read_stsz","_mov_read_stts","_mov_read_tkhd","_mov_read_tfdt","_mov_read_tfhd","_mov_read_trak","_mov_read_tmcd","_mov_read_chap","_mov_read_trex","_mov_read_trun","_mov_read_wave","_mov_read_esds","_mov_read_dac3","_mov_read_dec3","_mov_read_ddts","_mov_read_wide","_mov_read_wfex","_mov_read_cmov","_mov_read_chan","_mov_read_dvc1","_mov_read_sbgp","_mov_read_uuid","_mov_read_targa_y216","_mov_read_free","_mov_read_custom","_mov_read_frma","_mov_read_senc","_mov_read_saiz","_mov_read_saio","_mov_read_pssh","_mov_read_schm","_mov_read_tenc","_mov_read_dfla","_mov_read_st3d","_mov_read_sv3d","_mov_read_dops","_mov_read_smdm","_mov_read_coll","_mov_read_vpcc","_mov_read_mdcv","_mov_read_clli","_h264_split","_hevc_split","___stdio_write","_sn_write","_setCodecTypeFunc","_getSniffStreamPacketFunc","_read_stream_live","_read_stream_vod","_hflv_read_stream_live","_read_packet","_io_write_packet","_io_read_packet","_dyn_buf_write","_avcodec_default_get_buffer2","_mov_read_keys","_mov_read_udta_string","_do_read",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,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,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,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];var debug_table_iiiii=[0,"jsCall_iiiii_0","jsCall_iiiii_1","jsCall_iiiii_2","jsCall_iiiii_3","jsCall_iiiii_4","jsCall_iiiii_5","jsCall_iiiii_6","jsCall_iiiii_7","jsCall_iiiii_8","jsCall_iiiii_9","jsCall_iiiii_10","jsCall_iiiii_11","jsCall_iiiii_12","jsCall_iiiii_13","jsCall_iiiii_14","jsCall_iiiii_15","jsCall_iiiii_16","jsCall_iiiii_17","jsCall_iiiii_18","jsCall_iiiii_19","jsCall_iiiii_20","jsCall_iiiii_21","jsCall_iiiii_22","jsCall_iiiii_23","jsCall_iiiii_24","jsCall_iiiii_25","jsCall_iiiii_26","jsCall_iiiii_27","jsCall_iiiii_28","jsCall_iiiii_29","jsCall_iiiii_30","jsCall_iiiii_31","jsCall_iiiii_32","jsCall_iiiii_33","jsCall_iiiii_34","_hevc_decode_frame","_aac_decode_frame","_demuxBoxFunc","_hflv_pushBufferFunc","_mov_metadata_int8_no_padding","_mov_metadata_track_or_disc_number","_mov_metadata_gnre","_mov_metadata_int8_bypass_padding","_gamma_convert","_lum_convert","_lum_h_scale","_chr_convert","_chr_h_scale","_no_chr_scale","_lum_planar_vscale","_chr_planar_vscale","_any_vscale","_packed_vscale","_hls_decode_entry_wpp",0,0,0,0,0,0,0,0,0];var debug_table_iiiiii=[0,"jsCall_iiiiii_0","jsCall_iiiiii_1","jsCall_iiiiii_2","jsCall_iiiiii_3","jsCall_iiiiii_4","jsCall_iiiiii_5","jsCall_iiiiii_6","jsCall_iiiiii_7","jsCall_iiiiii_8","jsCall_iiiiii_9","jsCall_iiiiii_10","jsCall_iiiiii_11","jsCall_iiiiii_12","jsCall_iiiiii_13","jsCall_iiiiii_14","jsCall_iiiiii_15","jsCall_iiiiii_16","jsCall_iiiiii_17","jsCall_iiiiii_18","jsCall_iiiiii_19","jsCall_iiiiii_20","jsCall_iiiiii_21","jsCall_iiiiii_22","jsCall_iiiiii_23","jsCall_iiiiii_24","jsCall_iiiiii_25","jsCall_iiiiii_26","jsCall_iiiiii_27","jsCall_iiiiii_28","jsCall_iiiiii_29","jsCall_iiiiii_30","jsCall_iiiiii_31","jsCall_iiiiii_32","jsCall_iiiiii_33","jsCall_iiiiii_34","_decodeCodecContextFunc","_pushBufferFunc","_avcodec_default_execute2","_io_open_default","_thread_execute2","_sbr_lf_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiii=[0,"jsCall_iiiiiii_0","jsCall_iiiiiii_1","jsCall_iiiiiii_2","jsCall_iiiiiii_3","jsCall_iiiiiii_4","jsCall_iiiiiii_5","jsCall_iiiiiii_6","jsCall_iiiiiii_7","jsCall_iiiiiii_8","jsCall_iiiiiii_9","jsCall_iiiiiii_10","jsCall_iiiiiii_11","jsCall_iiiiiii_12","jsCall_iiiiiii_13","jsCall_iiiiiii_14","jsCall_iiiiiii_15","jsCall_iiiiiii_16","jsCall_iiiiiii_17","jsCall_iiiiiii_18","jsCall_iiiiiii_19","jsCall_iiiiiii_20","jsCall_iiiiiii_21","jsCall_iiiiiii_22","jsCall_iiiiiii_23","jsCall_iiiiiii_24","jsCall_iiiiiii_25","jsCall_iiiiiii_26","jsCall_iiiiiii_27","jsCall_iiiiiii_28","jsCall_iiiiiii_29","jsCall_iiiiiii_30","jsCall_iiiiiii_31","jsCall_iiiiiii_32","jsCall_iiiiiii_33","jsCall_iiiiiii_34","_h264_parse","_hevc_parse","_hflv_decodeVideoFrameFunc","_avcodec_default_execute","_thread_execute","_sbr_x_gen",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_iiiiiiii=[0,"jsCall_iiiiiiii_0","jsCall_iiiiiiii_1","jsCall_iiiiiiii_2","jsCall_iiiiiiii_3","jsCall_iiiiiiii_4","jsCall_iiiiiiii_5","jsCall_iiiiiiii_6","jsCall_iiiiiiii_7","jsCall_iiiiiiii_8","jsCall_iiiiiiii_9","jsCall_iiiiiiii_10","jsCall_iiiiiiii_11","jsCall_iiiiiiii_12","jsCall_iiiiiiii_13","jsCall_iiiiiiii_14","jsCall_iiiiiiii_15","jsCall_iiiiiiii_16","jsCall_iiiiiiii_17","jsCall_iiiiiiii_18","jsCall_iiiiiiii_19","jsCall_iiiiiiii_20","jsCall_iiiiiiii_21","jsCall_iiiiiiii_22","jsCall_iiiiiiii_23","jsCall_iiiiiiii_24","jsCall_iiiiiiii_25","jsCall_iiiiiiii_26","jsCall_iiiiiiii_27","jsCall_iiiiiiii_28","jsCall_iiiiiiii_29","jsCall_iiiiiiii_30","jsCall_iiiiiiii_31","jsCall_iiiiiiii_32","jsCall_iiiiiiii_33","jsCall_iiiiiiii_34","_decodeVideoFrameFunc","_setSniffStreamCodecTypeFunc","_hflv_setSniffStreamCodecTypeFunc","_ff_sws_alphablendaway","_planarToP01xWrapper","_planar8ToP01xleWrapper","_yvu9ToYv12Wrapper","_bgr24ToYv12Wrapper","_rgbToRgbWrapper","_planarRgbToplanarRgbWrapper","_planarRgbToRgbWrapper","_planarRgbaToRgbWrapper","_Rgb16ToPlanarRgb16Wrapper","_planarRgb16ToRgb16Wrapper","_rgbToPlanarRgbWrapper","_bayer_to_rgb24_wrapper","_bayer_to_yv12_wrapper","_bswap_16bpc","_palToRgbWrapper","_yuv422pToYuy2Wrapper","_yuv422pToUyvyWrapper","_uint_y_to_float_y_wrapper","_float_y_to_uint_y_wrapper","_planarToYuy2Wrapper","_planarToUyvyWrapper","_yuyvToYuv420Wrapper","_uyvyToYuv420Wrapper","_yuyvToYuv422Wrapper","_uyvyToYuv422Wrapper","_packedCopyWrapper","_planarCopyWrapper","_swscale","_planarToNv12Wrapper","_planarToNv24Wrapper","_nv12ToPlanarWrapper","_nv24ToPlanarWrapper","_yuv2rgb_c_32","_yuva2rgba_c","_yuv2rgb_c_bgr48","_yuv2rgb_c_48","_yuva2argb_c","_yuv2rgb_c_24_rgb","_yuv2rgb_c_24_bgr","_yuv2rgb_c_16_ordered_dither","_yuv2rgb_c_15_ordered_dither","_yuv2rgb_c_12_ordered_dither","_yuv2rgb_c_8_ordered_dither","_yuv2rgb_c_4_ordered_dither","_yuv2rgb_c_4b_ordered_dither","_yuv2rgb_c_1_ordered_dither",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,0,0,0,0,0,0,0,0,0];var debug_table_iiiiij=[0,"jsCall_iiiiij_0","jsCall_iiiiij_1","jsCall_iiiiij_2","jsCall_iiiiij_3","jsCall_iiiiij_4","jsCall_iiiiij_5","jsCall_iiiiij_6","jsCall_iiiiij_7","jsCall_iiiiij_8","jsCall_iiiiij_9","jsCall_iiiiij_10","jsCall_iiiiij_11","jsCall_iiiiij_12","jsCall_iiiiij_13","jsCall_iiiiij_14","jsCall_iiiiij_15","jsCall_iiiiij_16","jsCall_iiiiij_17","jsCall_iiiiij_18","jsCall_iiiiij_19","jsCall_iiiiij_20","jsCall_iiiiij_21","jsCall_iiiiij_22","jsCall_iiiiij_23","jsCall_iiiiij_24","jsCall_iiiiij_25","jsCall_iiiiij_26","jsCall_iiiiij_27","jsCall_iiiiij_28","jsCall_iiiiij_29","jsCall_iiiiij_30","jsCall_iiiiij_31","jsCall_iiiiij_32","jsCall_iiiiij_33","jsCall_iiiiij_34","_mpegts_push_data",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];var debug_table_iiiji=[0,"jsCall_iiiji_0","jsCall_iiiji_1","jsCall_iiiji_2","jsCall_iiiji_3","jsCall_iiiji_4","jsCall_iiiji_5","jsCall_iiiji_6","jsCall_iiiji_7","jsCall_iiiji_8","jsCall_iiiji_9","jsCall_iiiji_10","jsCall_iiiji_11","jsCall_iiiji_12","jsCall_iiiji_13","jsCall_iiiji_14","jsCall_iiiji_15","jsCall_iiiji_16","jsCall_iiiji_17","jsCall_iiiji_18","jsCall_iiiji_19","jsCall_iiiji_20","jsCall_iiiji_21","jsCall_iiiji_22","jsCall_iiiji_23","jsCall_iiiji_24","jsCall_iiiji_25","jsCall_iiiji_26","jsCall_iiiji_27","jsCall_iiiji_28","jsCall_iiiji_29","jsCall_iiiji_30","jsCall_iiiji_31","jsCall_iiiji_32","jsCall_iiiji_33","jsCall_iiiji_34","_avi_read_seek","_flv_read_seek","_mov_read_seek",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];var debug_table_iiijjji=[0,"jsCall_iiijjji_0","jsCall_iiijjji_1","jsCall_iiijjji_2","jsCall_iiijjji_3","jsCall_iiijjji_4","jsCall_iiijjji_5","jsCall_iiijjji_6","jsCall_iiijjji_7","jsCall_iiijjji_8","jsCall_iiijjji_9","jsCall_iiijjji_10","jsCall_iiijjji_11","jsCall_iiijjji_12","jsCall_iiijjji_13","jsCall_iiijjji_14","jsCall_iiijjji_15","jsCall_iiijjji_16","jsCall_iiijjji_17","jsCall_iiijjji_18","jsCall_iiijjji_19","jsCall_iiijjji_20","jsCall_iiijjji_21","jsCall_iiijjji_22","jsCall_iiijjji_23","jsCall_iiijjji_24","jsCall_iiijjji_25","jsCall_iiijjji_26","jsCall_iiijjji_27","jsCall_iiijjji_28","jsCall_iiijjji_29","jsCall_iiijjji_30","jsCall_iiijjji_31","jsCall_iiijjji_32","jsCall_iiijjji_33","jsCall_iiijjji_34",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];var debug_table_jiiij=[0,"jsCall_jiiij_0","jsCall_jiiij_1","jsCall_jiiij_2","jsCall_jiiij_3","jsCall_jiiij_4","jsCall_jiiij_5","jsCall_jiiij_6","jsCall_jiiij_7","jsCall_jiiij_8","jsCall_jiiij_9","jsCall_jiiij_10","jsCall_jiiij_11","jsCall_jiiij_12","jsCall_jiiij_13","jsCall_jiiij_14","jsCall_jiiij_15","jsCall_jiiij_16","jsCall_jiiij_17","jsCall_jiiij_18","jsCall_jiiij_19","jsCall_jiiij_20","jsCall_jiiij_21","jsCall_jiiij_22","jsCall_jiiij_23","jsCall_jiiij_24","jsCall_jiiij_25","jsCall_jiiij_26","jsCall_jiiij_27","jsCall_jiiij_28","jsCall_jiiij_29","jsCall_jiiij_30","jsCall_jiiij_31","jsCall_jiiij_32","jsCall_jiiij_33","jsCall_jiiij_34","_mpegps_read_dts","_mpegts_get_dts",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];var debug_table_jiiji=[0,"jsCall_jiiji_0","jsCall_jiiji_1","jsCall_jiiji_2","jsCall_jiiji_3","jsCall_jiiji_4","jsCall_jiiji_5","jsCall_jiiji_6","jsCall_jiiji_7","jsCall_jiiji_8","jsCall_jiiji_9","jsCall_jiiji_10","jsCall_jiiji_11","jsCall_jiiji_12","jsCall_jiiji_13","jsCall_jiiji_14","jsCall_jiiji_15","jsCall_jiiji_16","jsCall_jiiji_17","jsCall_jiiji_18","jsCall_jiiji_19","jsCall_jiiji_20","jsCall_jiiji_21","jsCall_jiiji_22","jsCall_jiiji_23","jsCall_jiiji_24","jsCall_jiiji_25","jsCall_jiiji_26","jsCall_jiiji_27","jsCall_jiiji_28","jsCall_jiiji_29","jsCall_jiiji_30","jsCall_jiiji_31","jsCall_jiiji_32","jsCall_jiiji_33","jsCall_jiiji_34","_io_read_seek",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];var debug_table_jiji=[0,"jsCall_jiji_0","jsCall_jiji_1","jsCall_jiji_2","jsCall_jiji_3","jsCall_jiji_4","jsCall_jiji_5","jsCall_jiji_6","jsCall_jiji_7","jsCall_jiji_8","jsCall_jiji_9","jsCall_jiji_10","jsCall_jiji_11","jsCall_jiji_12","jsCall_jiji_13","jsCall_jiji_14","jsCall_jiji_15","jsCall_jiji_16","jsCall_jiji_17","jsCall_jiji_18","jsCall_jiji_19","jsCall_jiji_20","jsCall_jiji_21","jsCall_jiji_22","jsCall_jiji_23","jsCall_jiji_24","jsCall_jiji_25","jsCall_jiji_26","jsCall_jiji_27","jsCall_jiji_28","jsCall_jiji_29","jsCall_jiji_30","jsCall_jiji_31","jsCall_jiji_32","jsCall_jiji_33","jsCall_jiji_34","___stdio_seek","___emscripten_stdout_seek","_seek_in_buffer","_io_seek","_dyn_buf_seek",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_v=[0,"jsCall_v_0","jsCall_v_1","jsCall_v_2","jsCall_v_3","jsCall_v_4","jsCall_v_5","jsCall_v_6","jsCall_v_7","jsCall_v_8","jsCall_v_9","jsCall_v_10","jsCall_v_11","jsCall_v_12","jsCall_v_13","jsCall_v_14","jsCall_v_15","jsCall_v_16","jsCall_v_17","jsCall_v_18","jsCall_v_19","jsCall_v_20","jsCall_v_21","jsCall_v_22","jsCall_v_23","jsCall_v_24","jsCall_v_25","jsCall_v_26","jsCall_v_27","jsCall_v_28","jsCall_v_29","jsCall_v_30","jsCall_v_31","jsCall_v_32","jsCall_v_33","jsCall_v_34","_init_ff_cos_tabs_16","_init_ff_cos_tabs_32","_init_ff_cos_tabs_64","_init_ff_cos_tabs_128","_init_ff_cos_tabs_256","_init_ff_cos_tabs_512","_init_ff_cos_tabs_1024","_init_ff_cos_tabs_2048","_init_ff_cos_tabs_4096","_init_ff_cos_tabs_8192","_init_ff_cos_tabs_16384","_init_ff_cos_tabs_32768","_init_ff_cos_tabs_65536","_init_ff_cos_tabs_131072","_introduceMineFunc","_introduce_mine",0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_vdiidiiiii=[0,"jsCall_vdiidiiiii_0","jsCall_vdiidiiiii_1","jsCall_vdiidiiiii_2","jsCall_vdiidiiiii_3","jsCall_vdiidiiiii_4","jsCall_vdiidiiiii_5","jsCall_vdiidiiiii_6","jsCall_vdiidiiiii_7","jsCall_vdiidiiiii_8","jsCall_vdiidiiiii_9","jsCall_vdiidiiiii_10","jsCall_vdiidiiiii_11","jsCall_vdiidiiiii_12","jsCall_vdiidiiiii_13","jsCall_vdiidiiiii_14","jsCall_vdiidiiiii_15","jsCall_vdiidiiiii_16","jsCall_vdiidiiiii_17","jsCall_vdiidiiiii_18","jsCall_vdiidiiiii_19","jsCall_vdiidiiiii_20","jsCall_vdiidiiiii_21","jsCall_vdiidiiiii_22","jsCall_vdiidiiiii_23","jsCall_vdiidiiiii_24","jsCall_vdiidiiiii_25","jsCall_vdiidiiiii_26","jsCall_vdiidiiiii_27","jsCall_vdiidiiiii_28","jsCall_vdiidiiiii_29","jsCall_vdiidiiiii_30","jsCall_vdiidiiiii_31","jsCall_vdiidiiiii_32","jsCall_vdiidiiiii_33","jsCall_vdiidiiiii_34",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];var debug_table_vi=[0,"jsCall_vi_0","jsCall_vi_1","jsCall_vi_2","jsCall_vi_3","jsCall_vi_4","jsCall_vi_5","jsCall_vi_6","jsCall_vi_7","jsCall_vi_8","jsCall_vi_9","jsCall_vi_10","jsCall_vi_11","jsCall_vi_12","jsCall_vi_13","jsCall_vi_14","jsCall_vi_15","jsCall_vi_16","jsCall_vi_17","jsCall_vi_18","jsCall_vi_19","jsCall_vi_20","jsCall_vi_21","jsCall_vi_22","jsCall_vi_23","jsCall_vi_24","jsCall_vi_25","jsCall_vi_26","jsCall_vi_27","jsCall_vi_28","jsCall_vi_29","jsCall_vi_30","jsCall_vi_31","jsCall_vi_32","jsCall_vi_33","jsCall_vi_34","_free_geobtag","_free_apic","_free_chapter","_free_priv","_hevc_decode_flush","_flush","_h264_close","_hevc_parser_close","_fft4","_fft8","_fft16","_fft32","_fft64","_fft128","_fft256","_fft512","_fft1024","_fft2048","_fft4096","_fft8192","_fft16384","_fft32768","_fft65536","_fft131072","_logRequest_downloadSucceeded","_logRequest_downloadFailed","_downloadSucceeded","_downloadFailed","_transform_4x4_luma_9","_idct_4x4_dc_9","_idct_8x8_dc_9","_idct_16x16_dc_9","_idct_32x32_dc_9","_transform_4x4_luma_10","_idct_4x4_dc_10","_idct_8x8_dc_10","_idct_16x16_dc_10","_idct_32x32_dc_10","_transform_4x4_luma_12","_idct_4x4_dc_12","_idct_8x8_dc_12","_idct_16x16_dc_12","_idct_32x32_dc_12","_transform_4x4_luma_8","_idct_4x4_dc_8","_idct_8x8_dc_8","_idct_16x16_dc_8","_idct_32x32_dc_8","_main_function","_sbr_sum64x5_c","_sbr_neg_odd_64_c","_sbr_qmf_pre_shuffle_c",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,0,0,0,0,0,0,0];var debug_table_vii=[0,"jsCall_vii_0","jsCall_vii_1","jsCall_vii_2","jsCall_vii_3","jsCall_vii_4","jsCall_vii_5","jsCall_vii_6","jsCall_vii_7","jsCall_vii_8","jsCall_vii_9","jsCall_vii_10","jsCall_vii_11","jsCall_vii_12","jsCall_vii_13","jsCall_vii_14","jsCall_vii_15","jsCall_vii_16","jsCall_vii_17","jsCall_vii_18","jsCall_vii_19","jsCall_vii_20","jsCall_vii_21","jsCall_vii_22","jsCall_vii_23","jsCall_vii_24","jsCall_vii_25","jsCall_vii_26","jsCall_vii_27","jsCall_vii_28","jsCall_vii_29","jsCall_vii_30","jsCall_vii_31","jsCall_vii_32","jsCall_vii_33","jsCall_vii_34","_sha1_transform","_io_close_default","_lumRangeFromJpeg_c","_lumRangeToJpeg_c","_lumRangeFromJpeg16_c","_lumRangeToJpeg16_c","_decode_data_free","_dequant_9","_idct_4x4_9","_idct_8x8_9","_idct_16x16_9","_idct_32x32_9","_dequant_10","_idct_4x4_10","_idct_8x8_10","_idct_16x16_10","_idct_32x32_10","_dequant_12","_idct_4x4_12","_idct_8x8_12","_idct_16x16_12","_idct_32x32_12","_dequant_8","_idct_4x4_8","_idct_8x8_8","_idct_16x16_8","_idct_32x32_8","_imdct_and_windowing","_apply_ltp","_update_ltp","_imdct_and_windowing_ld","_imdct_and_windowing_eld","_imdct_and_windowing_960","_sbr_qmf_post_shuffle_c","_sbr_qmf_deint_neg_c","_sbr_autocorrelate_c","_ff_h264_chroma_dc_dequant_idct_8_c","_hevc_pps_free","_fft_permute_c","_fft_calc_c","_av_buffer_default_free","_pool_release_buffer",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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viidi=[0,"jsCall_viidi_0","jsCall_viidi_1","jsCall_viidi_2","jsCall_viidi_3","jsCall_viidi_4","jsCall_viidi_5","jsCall_viidi_6","jsCall_viidi_7","jsCall_viidi_8","jsCall_viidi_9","jsCall_viidi_10","jsCall_viidi_11","jsCall_viidi_12","jsCall_viidi_13","jsCall_viidi_14","jsCall_viidi_15","jsCall_viidi_16","jsCall_viidi_17","jsCall_viidi_18","jsCall_viidi_19","jsCall_viidi_20","jsCall_viidi_21","jsCall_viidi_22","jsCall_viidi_23","jsCall_viidi_24","jsCall_viidi_25","jsCall_viidi_26","jsCall_viidi_27","jsCall_viidi_28","jsCall_viidi_29","jsCall_viidi_30","jsCall_viidi_31","jsCall_viidi_32","jsCall_viidi_33","jsCall_viidi_34","_vector_dmac_scalar_c","_vector_dmul_scalar_c",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];var debug_table_viifi=[0,"jsCall_viifi_0","jsCall_viifi_1","jsCall_viifi_2","jsCall_viifi_3","jsCall_viifi_4","jsCall_viifi_5","jsCall_viifi_6","jsCall_viifi_7","jsCall_viifi_8","jsCall_viifi_9","jsCall_viifi_10","jsCall_viifi_11","jsCall_viifi_12","jsCall_viifi_13","jsCall_viifi_14","jsCall_viifi_15","jsCall_viifi_16","jsCall_viifi_17","jsCall_viifi_18","jsCall_viifi_19","jsCall_viifi_20","jsCall_viifi_21","jsCall_viifi_22","jsCall_viifi_23","jsCall_viifi_24","jsCall_viifi_25","jsCall_viifi_26","jsCall_viifi_27","jsCall_viifi_28","jsCall_viifi_29","jsCall_viifi_30","jsCall_viifi_31","jsCall_viifi_32","jsCall_viifi_33","jsCall_viifi_34","_vector_fmac_scalar_c","_vector_fmul_scalar_c",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];var debug_table_viii=[0,"jsCall_viii_0","jsCall_viii_1","jsCall_viii_2","jsCall_viii_3","jsCall_viii_4","jsCall_viii_5","jsCall_viii_6","jsCall_viii_7","jsCall_viii_8","jsCall_viii_9","jsCall_viii_10","jsCall_viii_11","jsCall_viii_12","jsCall_viii_13","jsCall_viii_14","jsCall_viii_15","jsCall_viii_16","jsCall_viii_17","jsCall_viii_18","jsCall_viii_19","jsCall_viii_20","jsCall_viii_21","jsCall_viii_22","jsCall_viii_23","jsCall_viii_24","jsCall_viii_25","jsCall_viii_26","jsCall_viii_27","jsCall_viii_28","jsCall_viii_29","jsCall_viii_30","jsCall_viii_31","jsCall_viii_32","jsCall_viii_33","jsCall_viii_34","_avcHandleFrame","_handleFrame","_sdt_cb","_pat_cb","_pmt_cb","_scte_data_cb","_m4sl_cb","_chrRangeFromJpeg_c","_chrRangeToJpeg_c","_chrRangeFromJpeg16_c","_chrRangeToJpeg16_c","_rgb15to16_c","_rgb15tobgr24_c","_rgb15to32_c","_rgb16tobgr24_c","_rgb16to32_c","_rgb16to15_c","_rgb24tobgr16_c","_rgb24tobgr15_c","_rgb24tobgr32_c","_rgb32to16_c","_rgb32to15_c","_rgb32tobgr24_c","_rgb24to15_c","_rgb24to16_c","_rgb24tobgr24_c","_shuffle_bytes_0321_c","_shuffle_bytes_2103_c","_shuffle_bytes_1230_c","_shuffle_bytes_3012_c","_shuffle_bytes_3210_c","_rgb32tobgr16_c","_rgb32tobgr15_c","_rgb48tobgr48_bswap","_rgb48tobgr64_bswap","_rgb48to64_bswap","_rgb64to48_bswap","_rgb48tobgr48_nobswap","_rgb48tobgr64_nobswap","_rgb48to64_nobswap","_rgb64tobgr48_nobswap","_rgb64tobgr48_bswap","_rgb64to48_nobswap","_rgb12to15","_rgb15to24","_rgb16to24","_rgb32to24","_rgb24to32","_rgb12tobgr12","_rgb15tobgr15","_rgb16tobgr15","_rgb15tobgr16","_rgb16tobgr16","_rgb15tobgr32","_rgb16tobgr32","_just_return","_add_residual4x4_9","_add_residual8x8_9","_add_residual16x16_9","_add_residual32x32_9","_transform_rdpcm_9","_add_residual4x4_10","_add_residual8x8_10","_add_residual16x16_10","_add_residual32x32_10","_transform_rdpcm_10","_add_residual4x4_12","_add_residual8x8_12","_add_residual16x16_12","_add_residual32x32_12","_transform_rdpcm_12","_add_residual4x4_8","_add_residual8x8_8","_add_residual16x16_8","_add_residual32x32_8","_transform_rdpcm_8","_bswap_buf","_bswap16_buf","_ps_add_squares_c","_sbr_qmf_deint_bfly_c","_ff_h264_add_pixels4_8_c","_ff_h264_add_pixels8_8_c","_ff_h264_idct_add_8_c","_ff_h264_idct8_add_8_c","_ff_h264_idct_dc_add_8_c","_ff_h264_idct8_dc_add_8_c","_ff_h264_luma_dc_dequant_idct_8_c","_ff_imdct_calc_c","_ff_imdct_half_c","_ff_mdct_calc_c","_butterflies_float_c",0];var debug_table_viiii=[0,"jsCall_viiii_0","jsCall_viiii_1","jsCall_viiii_2","jsCall_viiii_3","jsCall_viiii_4","jsCall_viiii_5","jsCall_viiii_6","jsCall_viiii_7","jsCall_viiii_8","jsCall_viiii_9","jsCall_viiii_10","jsCall_viiii_11","jsCall_viiii_12","jsCall_viiii_13","jsCall_viiii_14","jsCall_viiii_15","jsCall_viiii_16","jsCall_viiii_17","jsCall_viiii_18","jsCall_viiii_19","jsCall_viiii_20","jsCall_viiii_21","jsCall_viiii_22","jsCall_viiii_23","jsCall_viiii_24","jsCall_viiii_25","jsCall_viiii_26","jsCall_viiii_27","jsCall_viiii_28","jsCall_viiii_29","jsCall_viiii_30","jsCall_viiii_31","jsCall_viiii_32","jsCall_viiii_33","jsCall_viiii_34","_planar_rgb9le_to_y","_planar_rgb10le_to_a","_planar_rgb10le_to_y","_planar_rgb12le_to_a","_planar_rgb12le_to_y","_planar_rgb14le_to_y","_planar_rgb16le_to_a","_planar_rgb16le_to_y","_planar_rgb9be_to_y","_planar_rgb10be_to_a","_planar_rgb10be_to_y","_planar_rgb12be_to_a","_planar_rgb12be_to_y","_planar_rgb14be_to_y","_planar_rgb16be_to_a","_planar_rgb16be_to_y","_planar_rgb_to_a","_planar_rgb_to_y","_gray8aToPacked32","_gray8aToPacked32_1","_gray8aToPacked24","_sws_convertPalette8ToPacked32","_sws_convertPalette8ToPacked24","_intra_pred_2_9","_intra_pred_3_9","_intra_pred_4_9","_intra_pred_5_9","_pred_planar_0_9","_pred_planar_1_9","_pred_planar_2_9","_pred_planar_3_9","_intra_pred_2_10","_intra_pred_3_10","_intra_pred_4_10","_intra_pred_5_10","_pred_planar_0_10","_pred_planar_1_10","_pred_planar_2_10","_pred_planar_3_10","_intra_pred_2_12","_intra_pred_3_12","_intra_pred_4_12","_intra_pred_5_12","_pred_planar_0_12","_pred_planar_1_12","_pred_planar_2_12","_pred_planar_3_12","_intra_pred_2_8","_intra_pred_3_8","_intra_pred_4_8","_intra_pred_5_8","_pred_planar_0_8","_pred_planar_1_8","_pred_planar_2_8","_pred_planar_3_8","_apply_tns","_windowing_and_mdct_ltp","_ps_mul_pair_single_c","_ps_hybrid_analysis_ileave_c","_ps_hybrid_synthesis_deint_c","_h264_v_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_intra_8_c","_h264_h_loop_filter_luma_mbaff_intra_8_c","_h264_v_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_intra_8_c","_h264_h_loop_filter_chroma_mbaff_intra_8_c","_fft15_c","_mdct15","_imdct15_half","_vector_fmul_c","_vector_dmul_c","_vector_fmul_reverse_c",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiid=[0,"jsCall_viiiid_0","jsCall_viiiid_1","jsCall_viiiid_2","jsCall_viiiid_3","jsCall_viiiid_4","jsCall_viiiid_5","jsCall_viiiid_6","jsCall_viiiid_7","jsCall_viiiid_8","jsCall_viiiid_9","jsCall_viiiid_10","jsCall_viiiid_11","jsCall_viiiid_12","jsCall_viiiid_13","jsCall_viiiid_14","jsCall_viiiid_15","jsCall_viiiid_16","jsCall_viiiid_17","jsCall_viiiid_18","jsCall_viiiid_19","jsCall_viiiid_20","jsCall_viiiid_21","jsCall_viiiid_22","jsCall_viiiid_23","jsCall_viiiid_24","jsCall_viiiid_25","jsCall_viiiid_26","jsCall_viiiid_27","jsCall_viiiid_28","jsCall_viiiid_29","jsCall_viiiid_30","jsCall_viiiid_31","jsCall_viiiid_32","jsCall_viiiid_33","jsCall_viiiid_34",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];var debug_table_viiiifii=[0,"jsCall_viiiifii_0","jsCall_viiiifii_1","jsCall_viiiifii_2","jsCall_viiiifii_3","jsCall_viiiifii_4","jsCall_viiiifii_5","jsCall_viiiifii_6","jsCall_viiiifii_7","jsCall_viiiifii_8","jsCall_viiiifii_9","jsCall_viiiifii_10","jsCall_viiiifii_11","jsCall_viiiifii_12","jsCall_viiiifii_13","jsCall_viiiifii_14","jsCall_viiiifii_15","jsCall_viiiifii_16","jsCall_viiiifii_17","jsCall_viiiifii_18","jsCall_viiiifii_19","jsCall_viiiifii_20","jsCall_viiiifii_21","jsCall_viiiifii_22","jsCall_viiiifii_23","jsCall_viiiifii_24","jsCall_viiiifii_25","jsCall_viiiifii_26","jsCall_viiiifii_27","jsCall_viiiifii_28","jsCall_viiiifii_29","jsCall_viiiifii_30","jsCall_viiiifii_31","jsCall_viiiifii_32","jsCall_viiiifii_33","jsCall_viiiifii_34","_sbr_hf_gen_c",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];var debug_table_viiiii=[0,"jsCall_viiiii_0","jsCall_viiiii_1","jsCall_viiiii_2","jsCall_viiiii_3","jsCall_viiiii_4","jsCall_viiiii_5","jsCall_viiiii_6","jsCall_viiiii_7","jsCall_viiiii_8","jsCall_viiiii_9","jsCall_viiiii_10","jsCall_viiiii_11","jsCall_viiiii_12","jsCall_viiiii_13","jsCall_viiiii_14","jsCall_viiiii_15","jsCall_viiiii_16","jsCall_viiiii_17","jsCall_viiiii_18","jsCall_viiiii_19","jsCall_viiiii_20","jsCall_viiiii_21","jsCall_viiiii_22","jsCall_viiiii_23","jsCall_viiiii_24","jsCall_viiiii_25","jsCall_viiiii_26","jsCall_viiiii_27","jsCall_viiiii_28","jsCall_viiiii_29","jsCall_viiiii_30","jsCall_viiiii_31","jsCall_viiiii_32","jsCall_viiiii_33","jsCall_viiiii_34","_planar_rgb9le_to_uv","_planar_rgb10le_to_uv","_planar_rgb12le_to_uv","_planar_rgb14le_to_uv","_planar_rgb16le_to_uv","_planar_rgb9be_to_uv","_planar_rgb10be_to_uv","_planar_rgb12be_to_uv","_planar_rgb14be_to_uv","_planar_rgb16be_to_uv","_planar_rgb_to_uv","_yuv2p010l1_LE_c","_yuv2p010l1_BE_c","_yuv2plane1_16LE_c","_yuv2plane1_16BE_c","_yuv2plane1_9LE_c","_yuv2plane1_9BE_c","_yuv2plane1_10LE_c","_yuv2plane1_10BE_c","_yuv2plane1_12LE_c","_yuv2plane1_12BE_c","_yuv2plane1_14LE_c","_yuv2plane1_14BE_c","_yuv2plane1_floatBE_c","_yuv2plane1_floatLE_c","_yuv2plane1_8_c","_bayer_bggr8_to_rgb24_copy","_bayer_bggr8_to_rgb24_interpolate","_bayer_bggr16le_to_rgb24_copy","_bayer_bggr16le_to_rgb24_interpolate","_bayer_bggr16be_to_rgb24_copy","_bayer_bggr16be_to_rgb24_interpolate","_bayer_rggb8_to_rgb24_copy","_bayer_rggb8_to_rgb24_interpolate","_bayer_rggb16le_to_rgb24_copy","_bayer_rggb16le_to_rgb24_interpolate","_bayer_rggb16be_to_rgb24_copy","_bayer_rggb16be_to_rgb24_interpolate","_bayer_gbrg8_to_rgb24_copy","_bayer_gbrg8_to_rgb24_interpolate","_bayer_gbrg16le_to_rgb24_copy","_bayer_gbrg16le_to_rgb24_interpolate","_bayer_gbrg16be_to_rgb24_copy","_bayer_gbrg16be_to_rgb24_interpolate","_bayer_grbg8_to_rgb24_copy","_bayer_grbg8_to_rgb24_interpolate","_bayer_grbg16le_to_rgb24_copy","_bayer_grbg16le_to_rgb24_interpolate","_bayer_grbg16be_to_rgb24_copy","_bayer_grbg16be_to_rgb24_interpolate","_hevc_h_loop_filter_chroma_9","_hevc_v_loop_filter_chroma_9","_hevc_h_loop_filter_chroma_10","_hevc_v_loop_filter_chroma_10","_hevc_h_loop_filter_chroma_12","_hevc_v_loop_filter_chroma_12","_hevc_h_loop_filter_chroma_8","_hevc_v_loop_filter_chroma_8","_worker_func","_ps_hybrid_analysis_c","_ps_stereo_interpolate_c","_ps_stereo_interpolate_ipdopd_c","_sbr_hf_g_filt_c","_sbr_hf_assemble","_sbr_hf_inverse_filter","_ff_h264_idct_add16_8_c","_ff_h264_idct8_add4_8_c","_ff_h264_idct_add8_8_c","_ff_h264_idct_add16intra_8_c","_h264_v_loop_filter_luma_8_c","_h264_h_loop_filter_luma_8_c","_h264_h_loop_filter_luma_mbaff_8_c","_h264_v_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_8_c","_h264_h_loop_filter_chroma_mbaff_8_c","_postrotate_c","_vector_fmul_window_c","_vector_fmul_add_c",0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiidd=[0,"jsCall_viiiiidd_0","jsCall_viiiiidd_1","jsCall_viiiiidd_2","jsCall_viiiiidd_3","jsCall_viiiiidd_4","jsCall_viiiiidd_5","jsCall_viiiiidd_6","jsCall_viiiiidd_7","jsCall_viiiiidd_8","jsCall_viiiiidd_9","jsCall_viiiiidd_10","jsCall_viiiiidd_11","jsCall_viiiiidd_12","jsCall_viiiiidd_13","jsCall_viiiiidd_14","jsCall_viiiiidd_15","jsCall_viiiiidd_16","jsCall_viiiiidd_17","jsCall_viiiiidd_18","jsCall_viiiiidd_19","jsCall_viiiiidd_20","jsCall_viiiiidd_21","jsCall_viiiiidd_22","jsCall_viiiiidd_23","jsCall_viiiiidd_24","jsCall_viiiiidd_25","jsCall_viiiiidd_26","jsCall_viiiiidd_27","jsCall_viiiiidd_28","jsCall_viiiiidd_29","jsCall_viiiiidd_30","jsCall_viiiiidd_31","jsCall_viiiiidd_32","jsCall_viiiiidd_33","jsCall_viiiiidd_34",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];var debug_table_viiiiii=[0,"jsCall_viiiiii_0","jsCall_viiiiii_1","jsCall_viiiiii_2","jsCall_viiiiii_3","jsCall_viiiiii_4","jsCall_viiiiii_5","jsCall_viiiiii_6","jsCall_viiiiii_7","jsCall_viiiiii_8","jsCall_viiiiii_9","jsCall_viiiiii_10","jsCall_viiiiii_11","jsCall_viiiiii_12","jsCall_viiiiii_13","jsCall_viiiiii_14","jsCall_viiiiii_15","jsCall_viiiiii_16","jsCall_viiiiii_17","jsCall_viiiiii_18","jsCall_viiiiii_19","jsCall_viiiiii_20","jsCall_viiiiii_21","jsCall_viiiiii_22","jsCall_viiiiii_23","jsCall_viiiiii_24","jsCall_viiiiii_25","jsCall_viiiiii_26","jsCall_viiiiii_27","jsCall_viiiiii_28","jsCall_viiiiii_29","jsCall_viiiiii_30","jsCall_viiiiii_31","jsCall_viiiiii_32","jsCall_viiiiii_33","jsCall_viiiiii_34","_read_geobtag","_read_apic","_read_chapter","_read_priv","_ff_hyscale_fast_c","_bswap16Y_c","_read_ya16le_gray_c","_read_ya16be_gray_c","_read_ayuv64le_Y_c","_yuy2ToY_c","_uyvyToY_c","_bgr24ToY_c","_bgr16leToY_c","_bgr16beToY_c","_bgr15leToY_c","_bgr15beToY_c","_bgr12leToY_c","_bgr12beToY_c","_rgb24ToY_c","_rgb16leToY_c","_rgb16beToY_c","_rgb15leToY_c","_rgb15beToY_c","_rgb12leToY_c","_rgb12beToY_c","_palToY_c","_monoblack2Y_c","_monowhite2Y_c","_bgr32ToY_c","_bgr321ToY_c","_rgb32ToY_c","_rgb321ToY_c","_rgb48BEToY_c","_rgb48LEToY_c","_bgr48BEToY_c","_bgr48LEToY_c","_rgb64BEToY_c","_rgb64LEToY_c","_bgr64BEToY_c","_bgr64LEToY_c","_p010LEToY_c","_p010BEToY_c","_grayf32ToY16_c","_grayf32ToY16_bswap_c","_rgba64leToA_c","_rgba64beToA_c","_rgbaToA_c","_abgrToA_c","_read_ya16le_alpha_c","_read_ya16be_alpha_c","_read_ayuv64le_A_c","_palToA_c","_pred_dc_9","_pred_angular_0_9","_pred_angular_1_9","_pred_angular_2_9","_pred_angular_3_9","_pred_dc_10","_pred_angular_0_10","_pred_angular_1_10","_pred_angular_2_10","_pred_angular_3_10","_pred_dc_12","_pred_angular_0_12","_pred_angular_1_12","_pred_angular_2_12","_pred_angular_3_12","_pred_dc_8","_pred_angular_0_8","_pred_angular_1_8","_pred_angular_2_8","_pred_angular_3_8","_put_pcm_9","_hevc_h_loop_filter_luma_9","_hevc_v_loop_filter_luma_9","_put_pcm_10","_hevc_h_loop_filter_luma_10","_hevc_v_loop_filter_luma_10","_put_pcm_12","_hevc_h_loop_filter_luma_12","_hevc_v_loop_filter_luma_12","_put_pcm_8","_hevc_h_loop_filter_luma_8","_hevc_v_loop_filter_luma_8","_sbr_hf_apply_noise_0","_sbr_hf_apply_noise_1","_sbr_hf_apply_noise_2","_sbr_hf_apply_noise_3","_weight_h264_pixels16_8_c","_weight_h264_pixels8_8_c","_weight_h264_pixels4_8_c","_weight_h264_pixels2_8_c","_aes_decrypt","_aes_encrypt",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,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,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,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];var debug_table_viiiiiifi=[0,"jsCall_viiiiiifi_0","jsCall_viiiiiifi_1","jsCall_viiiiiifi_2","jsCall_viiiiiifi_3","jsCall_viiiiiifi_4","jsCall_viiiiiifi_5","jsCall_viiiiiifi_6","jsCall_viiiiiifi_7","jsCall_viiiiiifi_8","jsCall_viiiiiifi_9","jsCall_viiiiiifi_10","jsCall_viiiiiifi_11","jsCall_viiiiiifi_12","jsCall_viiiiiifi_13","jsCall_viiiiiifi_14","jsCall_viiiiiifi_15","jsCall_viiiiiifi_16","jsCall_viiiiiifi_17","jsCall_viiiiiifi_18","jsCall_viiiiiifi_19","jsCall_viiiiiifi_20","jsCall_viiiiiifi_21","jsCall_viiiiiifi_22","jsCall_viiiiiifi_23","jsCall_viiiiiifi_24","jsCall_viiiiiifi_25","jsCall_viiiiiifi_26","jsCall_viiiiiifi_27","jsCall_viiiiiifi_28","jsCall_viiiiiifi_29","jsCall_viiiiiifi_30","jsCall_viiiiiifi_31","jsCall_viiiiiifi_32","jsCall_viiiiiifi_33","jsCall_viiiiiifi_34","_ps_decorrelate_c",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];var debug_table_viiiiiii=[0,"jsCall_viiiiiii_0","jsCall_viiiiiii_1","jsCall_viiiiiii_2","jsCall_viiiiiii_3","jsCall_viiiiiii_4","jsCall_viiiiiii_5","jsCall_viiiiiii_6","jsCall_viiiiiii_7","jsCall_viiiiiii_8","jsCall_viiiiiii_9","jsCall_viiiiiii_10","jsCall_viiiiiii_11","jsCall_viiiiiii_12","jsCall_viiiiiii_13","jsCall_viiiiiii_14","jsCall_viiiiiii_15","jsCall_viiiiiii_16","jsCall_viiiiiii_17","jsCall_viiiiiii_18","jsCall_viiiiiii_19","jsCall_viiiiiii_20","jsCall_viiiiiii_21","jsCall_viiiiiii_22","jsCall_viiiiiii_23","jsCall_viiiiiii_24","jsCall_viiiiiii_25","jsCall_viiiiiii_26","jsCall_viiiiiii_27","jsCall_viiiiiii_28","jsCall_viiiiiii_29","jsCall_viiiiiii_30","jsCall_viiiiiii_31","jsCall_viiiiiii_32","jsCall_viiiiiii_33","jsCall_viiiiiii_34","_hScale8To15_c","_hScale8To19_c","_hScale16To19_c","_hScale16To15_c","_yuy2ToUV_c","_yvy2ToUV_c","_uyvyToUV_c","_nv12ToUV_c","_nv21ToUV_c","_palToUV_c","_bswap16UV_c","_read_ayuv64le_UV_c","_p010LEToUV_c","_p010BEToUV_c","_p016LEToUV_c","_p016BEToUV_c","_gbr24pToUV_half_c","_rgb64BEToUV_half_c","_rgb64LEToUV_half_c","_bgr64BEToUV_half_c","_bgr64LEToUV_half_c","_rgb48BEToUV_half_c","_rgb48LEToUV_half_c","_bgr48BEToUV_half_c","_bgr48LEToUV_half_c","_bgr32ToUV_half_c","_bgr321ToUV_half_c","_bgr24ToUV_half_c","_bgr16leToUV_half_c","_bgr16beToUV_half_c","_bgr15leToUV_half_c","_bgr15beToUV_half_c","_bgr12leToUV_half_c","_bgr12beToUV_half_c","_rgb32ToUV_half_c","_rgb321ToUV_half_c","_rgb24ToUV_half_c","_rgb16leToUV_half_c","_rgb16beToUV_half_c","_rgb15leToUV_half_c","_rgb15beToUV_half_c","_rgb12leToUV_half_c","_rgb12beToUV_half_c","_rgb64BEToUV_c","_rgb64LEToUV_c","_bgr64BEToUV_c","_bgr64LEToUV_c","_rgb48BEToUV_c","_rgb48LEToUV_c","_bgr48BEToUV_c","_bgr48LEToUV_c","_bgr32ToUV_c","_bgr321ToUV_c","_bgr24ToUV_c","_bgr16leToUV_c","_bgr16beToUV_c","_bgr15leToUV_c","_bgr15beToUV_c","_bgr12leToUV_c","_bgr12beToUV_c","_rgb32ToUV_c","_rgb321ToUV_c","_rgb24ToUV_c","_rgb16leToUV_c","_rgb16beToUV_c","_rgb15leToUV_c","_rgb15beToUV_c","_rgb12leToUV_c","_rgb12beToUV_c","_yuv2p010lX_LE_c","_yuv2p010lX_BE_c","_yuv2p010cX_c","_yuv2planeX_16LE_c","_yuv2planeX_16BE_c","_yuv2p016cX_c","_yuv2planeX_9LE_c","_yuv2planeX_9BE_c","_yuv2planeX_10LE_c","_yuv2planeX_10BE_c","_yuv2planeX_12LE_c","_yuv2planeX_12BE_c","_yuv2planeX_14LE_c","_yuv2planeX_14BE_c","_yuv2planeX_floatBE_c","_yuv2planeX_floatLE_c","_yuv2planeX_8_c","_yuv2nv12cX_c","_sao_edge_filter_9","_put_hevc_pel_pixels_9","_put_hevc_qpel_h_9","_put_hevc_qpel_v_9","_put_hevc_qpel_hv_9","_put_hevc_epel_h_9","_put_hevc_epel_v_9","_put_hevc_epel_hv_9","_sao_edge_filter_10","_put_hevc_pel_pixels_10","_put_hevc_qpel_h_10","_put_hevc_qpel_v_10","_put_hevc_qpel_hv_10","_put_hevc_epel_h_10","_put_hevc_epel_v_10","_put_hevc_epel_hv_10","_sao_edge_filter_12","_put_hevc_pel_pixels_12","_put_hevc_qpel_h_12","_put_hevc_qpel_v_12","_put_hevc_qpel_hv_12","_put_hevc_epel_h_12","_put_hevc_epel_v_12","_put_hevc_epel_hv_12","_sao_edge_filter_8","_put_hevc_pel_pixels_8","_put_hevc_qpel_h_8","_put_hevc_qpel_v_8","_put_hevc_qpel_hv_8","_put_hevc_epel_h_8","_put_hevc_epel_v_8","_put_hevc_epel_hv_8",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,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,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,0,0];var debug_table_viiiiiiii=[0,"jsCall_viiiiiiii_0","jsCall_viiiiiiii_1","jsCall_viiiiiiii_2","jsCall_viiiiiiii_3","jsCall_viiiiiiii_4","jsCall_viiiiiiii_5","jsCall_viiiiiiii_6","jsCall_viiiiiiii_7","jsCall_viiiiiiii_8","jsCall_viiiiiiii_9","jsCall_viiiiiiii_10","jsCall_viiiiiiii_11","jsCall_viiiiiiii_12","jsCall_viiiiiiii_13","jsCall_viiiiiiii_14","jsCall_viiiiiiii_15","jsCall_viiiiiiii_16","jsCall_viiiiiiii_17","jsCall_viiiiiiii_18","jsCall_viiiiiiii_19","jsCall_viiiiiiii_20","jsCall_viiiiiiii_21","jsCall_viiiiiiii_22","jsCall_viiiiiiii_23","jsCall_viiiiiiii_24","jsCall_viiiiiiii_25","jsCall_viiiiiiii_26","jsCall_viiiiiiii_27","jsCall_viiiiiiii_28","jsCall_viiiiiiii_29","jsCall_viiiiiiii_30","jsCall_viiiiiiii_31","jsCall_viiiiiiii_32","jsCall_viiiiiiii_33","jsCall_viiiiiiii_34","_ff_hcscale_fast_c","_bayer_bggr8_to_yv12_copy","_bayer_bggr8_to_yv12_interpolate","_bayer_bggr16le_to_yv12_copy","_bayer_bggr16le_to_yv12_interpolate","_bayer_bggr16be_to_yv12_copy","_bayer_bggr16be_to_yv12_interpolate","_bayer_rggb8_to_yv12_copy","_bayer_rggb8_to_yv12_interpolate","_bayer_rggb16le_to_yv12_copy","_bayer_rggb16le_to_yv12_interpolate","_bayer_rggb16be_to_yv12_copy","_bayer_rggb16be_to_yv12_interpolate","_bayer_gbrg8_to_yv12_copy","_bayer_gbrg8_to_yv12_interpolate","_bayer_gbrg16le_to_yv12_copy","_bayer_gbrg16le_to_yv12_interpolate","_bayer_gbrg16be_to_yv12_copy","_bayer_gbrg16be_to_yv12_interpolate","_bayer_grbg8_to_yv12_copy","_bayer_grbg8_to_yv12_interpolate","_bayer_grbg16le_to_yv12_copy","_bayer_grbg16le_to_yv12_interpolate","_bayer_grbg16be_to_yv12_copy","_bayer_grbg16be_to_yv12_interpolate","_sao_band_filter_9","_put_hevc_pel_uni_pixels_9","_put_hevc_qpel_uni_h_9","_put_hevc_qpel_uni_v_9","_put_hevc_qpel_uni_hv_9","_put_hevc_epel_uni_h_9","_put_hevc_epel_uni_v_9","_put_hevc_epel_uni_hv_9","_sao_band_filter_10","_put_hevc_pel_uni_pixels_10","_put_hevc_qpel_uni_h_10","_put_hevc_qpel_uni_v_10","_put_hevc_qpel_uni_hv_10","_put_hevc_epel_uni_h_10","_put_hevc_epel_uni_v_10","_put_hevc_epel_uni_hv_10","_sao_band_filter_12","_put_hevc_pel_uni_pixels_12","_put_hevc_qpel_uni_h_12","_put_hevc_qpel_uni_v_12","_put_hevc_qpel_uni_hv_12","_put_hevc_epel_uni_h_12","_put_hevc_epel_uni_v_12","_put_hevc_epel_uni_hv_12","_sao_band_filter_8","_put_hevc_pel_uni_pixels_8","_put_hevc_qpel_uni_h_8","_put_hevc_qpel_uni_v_8","_put_hevc_qpel_uni_hv_8","_put_hevc_epel_uni_h_8","_put_hevc_epel_uni_v_8","_put_hevc_epel_uni_hv_8","_biweight_h264_pixels16_8_c","_biweight_h264_pixels8_8_c","_biweight_h264_pixels4_8_c","_biweight_h264_pixels2_8_c",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];var debug_table_viiiiiiiid=[0,"jsCall_viiiiiiiid_0","jsCall_viiiiiiiid_1","jsCall_viiiiiiiid_2","jsCall_viiiiiiiid_3","jsCall_viiiiiiiid_4","jsCall_viiiiiiiid_5","jsCall_viiiiiiiid_6","jsCall_viiiiiiiid_7","jsCall_viiiiiiiid_8","jsCall_viiiiiiiid_9","jsCall_viiiiiiiid_10","jsCall_viiiiiiiid_11","jsCall_viiiiiiiid_12","jsCall_viiiiiiiid_13","jsCall_viiiiiiiid_14","jsCall_viiiiiiiid_15","jsCall_viiiiiiiid_16","jsCall_viiiiiiiid_17","jsCall_viiiiiiiid_18","jsCall_viiiiiiiid_19","jsCall_viiiiiiiid_20","jsCall_viiiiiiiid_21","jsCall_viiiiiiiid_22","jsCall_viiiiiiiid_23","jsCall_viiiiiiiid_24","jsCall_viiiiiiiid_25","jsCall_viiiiiiiid_26","jsCall_viiiiiiiid_27","jsCall_viiiiiiiid_28","jsCall_viiiiiiiid_29","jsCall_viiiiiiiid_30","jsCall_viiiiiiiid_31","jsCall_viiiiiiiid_32","jsCall_viiiiiiiid_33","jsCall_viiiiiiiid_34",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];var debug_table_viiiiiiiidi=[0,"jsCall_viiiiiiiidi_0","jsCall_viiiiiiiidi_1","jsCall_viiiiiiiidi_2","jsCall_viiiiiiiidi_3","jsCall_viiiiiiiidi_4","jsCall_viiiiiiiidi_5","jsCall_viiiiiiiidi_6","jsCall_viiiiiiiidi_7","jsCall_viiiiiiiidi_8","jsCall_viiiiiiiidi_9","jsCall_viiiiiiiidi_10","jsCall_viiiiiiiidi_11","jsCall_viiiiiiiidi_12","jsCall_viiiiiiiidi_13","jsCall_viiiiiiiidi_14","jsCall_viiiiiiiidi_15","jsCall_viiiiiiiidi_16","jsCall_viiiiiiiidi_17","jsCall_viiiiiiiidi_18","jsCall_viiiiiiiidi_19","jsCall_viiiiiiiidi_20","jsCall_viiiiiiiidi_21","jsCall_viiiiiiiidi_22","jsCall_viiiiiiiidi_23","jsCall_viiiiiiiidi_24","jsCall_viiiiiiiidi_25","jsCall_viiiiiiiidi_26","jsCall_viiiiiiiidi_27","jsCall_viiiiiiiidi_28","jsCall_viiiiiiiidi_29","jsCall_viiiiiiiidi_30","jsCall_viiiiiiiidi_31","jsCall_viiiiiiiidi_32","jsCall_viiiiiiiidi_33","jsCall_viiiiiiiidi_34",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];var debug_table_viiiiiiiii=[0,"jsCall_viiiiiiiii_0","jsCall_viiiiiiiii_1","jsCall_viiiiiiiii_2","jsCall_viiiiiiiii_3","jsCall_viiiiiiiii_4","jsCall_viiiiiiiii_5","jsCall_viiiiiiiii_6","jsCall_viiiiiiiii_7","jsCall_viiiiiiiii_8","jsCall_viiiiiiiii_9","jsCall_viiiiiiiii_10","jsCall_viiiiiiiii_11","jsCall_viiiiiiiii_12","jsCall_viiiiiiiii_13","jsCall_viiiiiiiii_14","jsCall_viiiiiiiii_15","jsCall_viiiiiiiii_16","jsCall_viiiiiiiii_17","jsCall_viiiiiiiii_18","jsCall_viiiiiiiii_19","jsCall_viiiiiiiii_20","jsCall_viiiiiiiii_21","jsCall_viiiiiiiii_22","jsCall_viiiiiiiii_23","jsCall_viiiiiiiii_24","jsCall_viiiiiiiii_25","jsCall_viiiiiiiii_26","jsCall_viiiiiiiii_27","jsCall_viiiiiiiii_28","jsCall_viiiiiiiii_29","jsCall_viiiiiiiii_30","jsCall_viiiiiiiii_31","jsCall_viiiiiiiii_32","jsCall_viiiiiiiii_33","jsCall_viiiiiiiii_34","_yuv2rgba32_full_1_c","_yuv2rgbx32_full_1_c","_yuv2argb32_full_1_c","_yuv2xrgb32_full_1_c","_yuv2bgra32_full_1_c","_yuv2bgrx32_full_1_c","_yuv2abgr32_full_1_c","_yuv2xbgr32_full_1_c","_yuv2rgba64le_full_1_c","_yuv2rgbx64le_full_1_c","_yuv2rgba64be_full_1_c","_yuv2rgbx64be_full_1_c","_yuv2bgra64le_full_1_c","_yuv2bgrx64le_full_1_c","_yuv2bgra64be_full_1_c","_yuv2bgrx64be_full_1_c","_yuv2rgb24_full_1_c","_yuv2bgr24_full_1_c","_yuv2rgb48le_full_1_c","_yuv2bgr48le_full_1_c","_yuv2rgb48be_full_1_c","_yuv2bgr48be_full_1_c","_yuv2bgr4_byte_full_1_c","_yuv2rgb4_byte_full_1_c","_yuv2bgr8_full_1_c","_yuv2rgb8_full_1_c","_yuv2rgbx64le_1_c","_yuv2rgba64le_1_c","_yuv2rgbx64be_1_c","_yuv2rgba64be_1_c","_yuv2bgrx64le_1_c","_yuv2bgra64le_1_c","_yuv2bgrx64be_1_c","_yuv2bgra64be_1_c","_yuv2rgba32_1_c","_yuv2rgbx32_1_c","_yuv2rgba32_1_1_c","_yuv2rgbx32_1_1_c","_yuv2rgb16_1_c","_yuv2rgb15_1_c","_yuv2rgb12_1_c","_yuv2rgb8_1_c","_yuv2rgb4_1_c","_yuv2rgb4b_1_c","_yuv2rgb48le_1_c","_yuv2rgb48be_1_c","_yuv2bgr48le_1_c","_yuv2bgr48be_1_c","_yuv2rgb24_1_c","_yuv2bgr24_1_c","_yuv2monowhite_1_c","_yuv2monoblack_1_c","_yuv2yuyv422_1_c","_yuv2yvyu422_1_c","_yuv2uyvy422_1_c","_yuv2ya8_1_c","_yuv2ya16le_1_c","_yuv2ya16be_1_c","_put_hevc_pel_bi_pixels_9","_put_hevc_qpel_bi_h_9","_put_hevc_qpel_bi_v_9","_put_hevc_qpel_bi_hv_9","_put_hevc_epel_bi_h_9","_put_hevc_epel_bi_v_9","_put_hevc_epel_bi_hv_9","_put_hevc_pel_bi_pixels_10","_put_hevc_qpel_bi_h_10","_put_hevc_qpel_bi_v_10","_put_hevc_qpel_bi_hv_10","_put_hevc_epel_bi_h_10","_put_hevc_epel_bi_v_10","_put_hevc_epel_bi_hv_10","_put_hevc_pel_bi_pixels_12","_put_hevc_qpel_bi_h_12","_put_hevc_qpel_bi_v_12","_put_hevc_qpel_bi_hv_12","_put_hevc_epel_bi_h_12","_put_hevc_epel_bi_v_12","_put_hevc_epel_bi_hv_12","_put_hevc_pel_bi_pixels_8","_put_hevc_qpel_bi_h_8","_put_hevc_qpel_bi_v_8","_put_hevc_qpel_bi_hv_8","_put_hevc_epel_bi_h_8","_put_hevc_epel_bi_v_8","_put_hevc_epel_bi_hv_8",0,0,0,0,0,0];var debug_table_viiiiiiiiii=[0,"jsCall_viiiiiiiiii_0","jsCall_viiiiiiiiii_1","jsCall_viiiiiiiiii_2","jsCall_viiiiiiiiii_3","jsCall_viiiiiiiiii_4","jsCall_viiiiiiiiii_5","jsCall_viiiiiiiiii_6","jsCall_viiiiiiiiii_7","jsCall_viiiiiiiiii_8","jsCall_viiiiiiiiii_9","jsCall_viiiiiiiiii_10","jsCall_viiiiiiiiii_11","jsCall_viiiiiiiiii_12","jsCall_viiiiiiiiii_13","jsCall_viiiiiiiiii_14","jsCall_viiiiiiiiii_15","jsCall_viiiiiiiiii_16","jsCall_viiiiiiiiii_17","jsCall_viiiiiiiiii_18","jsCall_viiiiiiiiii_19","jsCall_viiiiiiiiii_20","jsCall_viiiiiiiiii_21","jsCall_viiiiiiiiii_22","jsCall_viiiiiiiiii_23","jsCall_viiiiiiiiii_24","jsCall_viiiiiiiiii_25","jsCall_viiiiiiiiii_26","jsCall_viiiiiiiiii_27","jsCall_viiiiiiiiii_28","jsCall_viiiiiiiiii_29","jsCall_viiiiiiiiii_30","jsCall_viiiiiiiiii_31","jsCall_viiiiiiiiii_32","jsCall_viiiiiiiiii_33","jsCall_viiiiiiiiii_34","_yuv2rgba32_full_2_c","_yuv2rgbx32_full_2_c","_yuv2argb32_full_2_c","_yuv2xrgb32_full_2_c","_yuv2bgra32_full_2_c","_yuv2bgrx32_full_2_c","_yuv2abgr32_full_2_c","_yuv2xbgr32_full_2_c","_yuv2rgba64le_full_2_c","_yuv2rgbx64le_full_2_c","_yuv2rgba64be_full_2_c","_yuv2rgbx64be_full_2_c","_yuv2bgra64le_full_2_c","_yuv2bgrx64le_full_2_c","_yuv2bgra64be_full_2_c","_yuv2bgrx64be_full_2_c","_yuv2rgb24_full_2_c","_yuv2bgr24_full_2_c","_yuv2rgb48le_full_2_c","_yuv2bgr48le_full_2_c","_yuv2rgb48be_full_2_c","_yuv2bgr48be_full_2_c","_yuv2bgr4_byte_full_2_c","_yuv2rgb4_byte_full_2_c","_yuv2bgr8_full_2_c","_yuv2rgb8_full_2_c","_yuv2rgbx64le_2_c","_yuv2rgba64le_2_c","_yuv2rgbx64be_2_c","_yuv2rgba64be_2_c","_yuv2bgrx64le_2_c","_yuv2bgra64le_2_c","_yuv2bgrx64be_2_c","_yuv2bgra64be_2_c","_yuv2rgba32_2_c","_yuv2rgbx32_2_c","_yuv2rgba32_1_2_c","_yuv2rgbx32_1_2_c","_yuv2rgb16_2_c","_yuv2rgb15_2_c","_yuv2rgb12_2_c","_yuv2rgb8_2_c","_yuv2rgb4_2_c","_yuv2rgb4b_2_c","_yuv2rgb48le_2_c","_yuv2rgb48be_2_c","_yuv2bgr48le_2_c","_yuv2bgr48be_2_c","_yuv2rgb24_2_c","_yuv2bgr24_2_c","_yuv2monowhite_2_c","_yuv2monoblack_2_c","_yuv2yuyv422_2_c","_yuv2yvyu422_2_c","_yuv2uyvy422_2_c","_yuv2ya8_2_c","_yuv2ya16le_2_c","_yuv2ya16be_2_c","_ff_emulated_edge_mc_8","_ff_emulated_edge_mc_16",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];var debug_table_viiiiiiiiiii=[0,"jsCall_viiiiiiiiiii_0","jsCall_viiiiiiiiiii_1","jsCall_viiiiiiiiiii_2","jsCall_viiiiiiiiiii_3","jsCall_viiiiiiiiiii_4","jsCall_viiiiiiiiiii_5","jsCall_viiiiiiiiiii_6","jsCall_viiiiiiiiiii_7","jsCall_viiiiiiiiiii_8","jsCall_viiiiiiiiiii_9","jsCall_viiiiiiiiiii_10","jsCall_viiiiiiiiiii_11","jsCall_viiiiiiiiiii_12","jsCall_viiiiiiiiiii_13","jsCall_viiiiiiiiiii_14","jsCall_viiiiiiiiiii_15","jsCall_viiiiiiiiiii_16","jsCall_viiiiiiiiiii_17","jsCall_viiiiiiiiiii_18","jsCall_viiiiiiiiiii_19","jsCall_viiiiiiiiiii_20","jsCall_viiiiiiiiiii_21","jsCall_viiiiiiiiiii_22","jsCall_viiiiiiiiiii_23","jsCall_viiiiiiiiiii_24","jsCall_viiiiiiiiiii_25","jsCall_viiiiiiiiiii_26","jsCall_viiiiiiiiiii_27","jsCall_viiiiiiiiiii_28","jsCall_viiiiiiiiiii_29","jsCall_viiiiiiiiiii_30","jsCall_viiiiiiiiiii_31","jsCall_viiiiiiiiiii_32","jsCall_viiiiiiiiiii_33","jsCall_viiiiiiiiiii_34","_put_hevc_pel_uni_w_pixels_9","_put_hevc_qpel_uni_w_h_9","_put_hevc_qpel_uni_w_v_9","_put_hevc_qpel_uni_w_hv_9","_put_hevc_epel_uni_w_h_9","_put_hevc_epel_uni_w_v_9","_put_hevc_epel_uni_w_hv_9","_put_hevc_pel_uni_w_pixels_10","_put_hevc_qpel_uni_w_h_10","_put_hevc_qpel_uni_w_v_10","_put_hevc_qpel_uni_w_hv_10","_put_hevc_epel_uni_w_h_10","_put_hevc_epel_uni_w_v_10","_put_hevc_epel_uni_w_hv_10","_put_hevc_pel_uni_w_pixels_12","_put_hevc_qpel_uni_w_h_12","_put_hevc_qpel_uni_w_v_12","_put_hevc_qpel_uni_w_hv_12","_put_hevc_epel_uni_w_h_12","_put_hevc_epel_uni_w_v_12","_put_hevc_epel_uni_w_hv_12","_put_hevc_pel_uni_w_pixels_8","_put_hevc_qpel_uni_w_h_8","_put_hevc_qpel_uni_w_v_8","_put_hevc_qpel_uni_w_hv_8","_put_hevc_epel_uni_w_h_8","_put_hevc_epel_uni_w_v_8","_put_hevc_epel_uni_w_hv_8"];var debug_table_viiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiii_0","jsCall_viiiiiiiiiiii_1","jsCall_viiiiiiiiiiii_2","jsCall_viiiiiiiiiiii_3","jsCall_viiiiiiiiiiii_4","jsCall_viiiiiiiiiiii_5","jsCall_viiiiiiiiiiii_6","jsCall_viiiiiiiiiiii_7","jsCall_viiiiiiiiiiii_8","jsCall_viiiiiiiiiiii_9","jsCall_viiiiiiiiiiii_10","jsCall_viiiiiiiiiiii_11","jsCall_viiiiiiiiiiii_12","jsCall_viiiiiiiiiiii_13","jsCall_viiiiiiiiiiii_14","jsCall_viiiiiiiiiiii_15","jsCall_viiiiiiiiiiii_16","jsCall_viiiiiiiiiiii_17","jsCall_viiiiiiiiiiii_18","jsCall_viiiiiiiiiiii_19","jsCall_viiiiiiiiiiii_20","jsCall_viiiiiiiiiiii_21","jsCall_viiiiiiiiiiii_22","jsCall_viiiiiiiiiiii_23","jsCall_viiiiiiiiiiii_24","jsCall_viiiiiiiiiiii_25","jsCall_viiiiiiiiiiii_26","jsCall_viiiiiiiiiiii_27","jsCall_viiiiiiiiiiii_28","jsCall_viiiiiiiiiiii_29","jsCall_viiiiiiiiiiii_30","jsCall_viiiiiiiiiiii_31","jsCall_viiiiiiiiiiii_32","jsCall_viiiiiiiiiiii_33","jsCall_viiiiiiiiiiii_34","_yuv2rgba32_full_X_c","_yuv2rgbx32_full_X_c","_yuv2argb32_full_X_c","_yuv2xrgb32_full_X_c","_yuv2bgra32_full_X_c","_yuv2bgrx32_full_X_c","_yuv2abgr32_full_X_c","_yuv2xbgr32_full_X_c","_yuv2rgba64le_full_X_c","_yuv2rgbx64le_full_X_c","_yuv2rgba64be_full_X_c","_yuv2rgbx64be_full_X_c","_yuv2bgra64le_full_X_c","_yuv2bgrx64le_full_X_c","_yuv2bgra64be_full_X_c","_yuv2bgrx64be_full_X_c","_yuv2rgb24_full_X_c","_yuv2bgr24_full_X_c","_yuv2rgb48le_full_X_c","_yuv2bgr48le_full_X_c","_yuv2rgb48be_full_X_c","_yuv2bgr48be_full_X_c","_yuv2bgr4_byte_full_X_c","_yuv2rgb4_byte_full_X_c","_yuv2bgr8_full_X_c","_yuv2rgb8_full_X_c","_yuv2gbrp_full_X_c","_yuv2gbrp16_full_X_c","_yuv2rgbx64le_X_c","_yuv2rgba64le_X_c","_yuv2rgbx64be_X_c","_yuv2rgba64be_X_c","_yuv2bgrx64le_X_c","_yuv2bgra64le_X_c","_yuv2bgrx64be_X_c","_yuv2bgra64be_X_c","_yuv2rgba32_X_c","_yuv2rgbx32_X_c","_yuv2rgba32_1_X_c","_yuv2rgbx32_1_X_c","_yuv2rgb16_X_c","_yuv2rgb15_X_c","_yuv2rgb12_X_c","_yuv2rgb8_X_c","_yuv2rgb4_X_c","_yuv2rgb4b_X_c","_yuv2rgb48le_X_c","_yuv2rgb48be_X_c","_yuv2bgr48le_X_c","_yuv2bgr48be_X_c","_yuv2rgb24_X_c","_yuv2bgr24_X_c","_yuv2monowhite_X_c","_yuv2ayuv64le_X_c","_yuv2monoblack_X_c","_yuv2yuyv422_X_c","_yuv2yvyu422_X_c","_yuv2uyvy422_X_c","_yuv2ya8_X_c","_yuv2ya16le_X_c","_yuv2ya16be_X_c","_sao_edge_restore_0_9","_sao_edge_restore_1_9","_sao_edge_restore_0_10","_sao_edge_restore_1_10","_sao_edge_restore_0_12","_sao_edge_restore_1_12","_sao_edge_restore_0_8","_sao_edge_restore_1_8",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var debug_table_viiiiiiiiiiiiii=[0,"jsCall_viiiiiiiiiiiiii_0","jsCall_viiiiiiiiiiiiii_1","jsCall_viiiiiiiiiiiiii_2","jsCall_viiiiiiiiiiiiii_3","jsCall_viiiiiiiiiiiiii_4","jsCall_viiiiiiiiiiiiii_5","jsCall_viiiiiiiiiiiiii_6","jsCall_viiiiiiiiiiiiii_7","jsCall_viiiiiiiiiiiiii_8","jsCall_viiiiiiiiiiiiii_9","jsCall_viiiiiiiiiiiiii_10","jsCall_viiiiiiiiiiiiii_11","jsCall_viiiiiiiiiiiiii_12","jsCall_viiiiiiiiiiiiii_13","jsCall_viiiiiiiiiiiiii_14","jsCall_viiiiiiiiiiiiii_15","jsCall_viiiiiiiiiiiiii_16","jsCall_viiiiiiiiiiiiii_17","jsCall_viiiiiiiiiiiiii_18","jsCall_viiiiiiiiiiiiii_19","jsCall_viiiiiiiiiiiiii_20","jsCall_viiiiiiiiiiiiii_21","jsCall_viiiiiiiiiiiiii_22","jsCall_viiiiiiiiiiiiii_23","jsCall_viiiiiiiiiiiiii_24","jsCall_viiiiiiiiiiiiii_25","jsCall_viiiiiiiiiiiiii_26","jsCall_viiiiiiiiiiiiii_27","jsCall_viiiiiiiiiiiiii_28","jsCall_viiiiiiiiiiiiii_29","jsCall_viiiiiiiiiiiiii_30","jsCall_viiiiiiiiiiiiii_31","jsCall_viiiiiiiiiiiiii_32","jsCall_viiiiiiiiiiiiii_33","jsCall_viiiiiiiiiiiiii_34","_put_hevc_pel_bi_w_pixels_9","_put_hevc_qpel_bi_w_h_9","_put_hevc_qpel_bi_w_v_9","_put_hevc_qpel_bi_w_hv_9","_put_hevc_epel_bi_w_h_9","_put_hevc_epel_bi_w_v_9","_put_hevc_epel_bi_w_hv_9","_put_hevc_pel_bi_w_pixels_10","_put_hevc_qpel_bi_w_h_10","_put_hevc_qpel_bi_w_v_10","_put_hevc_qpel_bi_w_hv_10","_put_hevc_epel_bi_w_h_10","_put_hevc_epel_bi_w_v_10","_put_hevc_epel_bi_w_hv_10","_put_hevc_pel_bi_w_pixels_12","_put_hevc_qpel_bi_w_h_12","_put_hevc_qpel_bi_w_v_12","_put_hevc_qpel_bi_w_hv_12","_put_hevc_epel_bi_w_h_12","_put_hevc_epel_bi_w_v_12","_put_hevc_epel_bi_w_hv_12","_put_hevc_pel_bi_w_pixels_8","_put_hevc_qpel_bi_w_h_8","_put_hevc_qpel_bi_w_v_8","_put_hevc_qpel_bi_w_hv_8","_put_hevc_epel_bi_w_h_8","_put_hevc_epel_bi_w_v_8","_put_hevc_epel_bi_w_hv_8"];var debug_tables={"dd":debug_table_dd,"did":debug_table_did,"didd":debug_table_didd,"fii":debug_table_fii,"fiii":debug_table_fiii,"ii":debug_table_ii,"iid":debug_table_iid,"iii":debug_table_iii,"iiii":debug_table_iiii,"iiiii":debug_table_iiiii,"iiiiii":debug_table_iiiiii,"iiiiiii":debug_table_iiiiiii,"iiiiiiii":debug_table_iiiiiiii,"iiiiij":debug_table_iiiiij,"iiiji":debug_table_iiiji,"iiijjji":debug_table_iiijjji,"jiiij":debug_table_jiiij,"jiiji":debug_table_jiiji,"jiji":debug_table_jiji,"v":debug_table_v,"vdiidiiiii":debug_table_vdiidiiiii,"vi":debug_table_vi,"vii":debug_table_vii,"viidi":debug_table_viidi,"viifi":debug_table_viifi,"viii":debug_table_viii,"viiii":debug_table_viiii,"viiiid":debug_table_viiiid,"viiiifii":debug_table_viiiifii,"viiiii":debug_table_viiiii,"viiiiidd":debug_table_viiiiidd,"viiiiii":debug_table_viiiiii,"viiiiiifi":debug_table_viiiiiifi,"viiiiiii":debug_table_viiiiiii,"viiiiiiii":debug_table_viiiiiiii,"viiiiiiiid":debug_table_viiiiiiiid,"viiiiiiiidi":debug_table_viiiiiiiidi,"viiiiiiiii":debug_table_viiiiiiiii,"viiiiiiiiii":debug_table_viiiiiiiiii,"viiiiiiiiiii":debug_table_viiiiiiiiiii,"viiiiiiiiiiii":debug_table_viiiiiiiiiiii,"viiiiiiiiiiiiii":debug_table_viiiiiiiiiiiiii};function nullFunc_dd(x){abortFnPtrError(x,"dd")}function nullFunc_did(x){abortFnPtrError(x,"did")}function nullFunc_didd(x){abortFnPtrError(x,"didd")}function nullFunc_fii(x){abortFnPtrError(x,"fii")}function nullFunc_fiii(x){abortFnPtrError(x,"fiii")}function nullFunc_ii(x){abortFnPtrError(x,"ii")}function nullFunc_iid(x){abortFnPtrError(x,"iid")}function nullFunc_iii(x){abortFnPtrError(x,"iii")}function nullFunc_iiii(x){abortFnPtrError(x,"iiii")}function nullFunc_iiiii(x){abortFnPtrError(x,"iiiii")}function nullFunc_iiiiii(x){abortFnPtrError(x,"iiiiii")}function nullFunc_iiiiiii(x){abortFnPtrError(x,"iiiiiii")}function nullFunc_iiiiiiii(x){abortFnPtrError(x,"iiiiiiii")}function nullFunc_iiiiij(x){abortFnPtrError(x,"iiiiij")}function nullFunc_iiiji(x){abortFnPtrError(x,"iiiji")}function nullFunc_iiijjji(x){abortFnPtrError(x,"iiijjji")}function nullFunc_jiiij(x){abortFnPtrError(x,"jiiij")}function nullFunc_jiiji(x){abortFnPtrError(x,"jiiji")}function nullFunc_jiji(x){abortFnPtrError(x,"jiji")}function nullFunc_v(x){abortFnPtrError(x,"v")}function nullFunc_vdiidiiiii(x){abortFnPtrError(x,"vdiidiiiii")}function nullFunc_vi(x){abortFnPtrError(x,"vi")}function nullFunc_vii(x){abortFnPtrError(x,"vii")}function nullFunc_viidi(x){abortFnPtrError(x,"viidi")}function nullFunc_viifi(x){abortFnPtrError(x,"viifi")}function nullFunc_viii(x){abortFnPtrError(x,"viii")}function nullFunc_viiii(x){abortFnPtrError(x,"viiii")}function nullFunc_viiiid(x){abortFnPtrError(x,"viiiid")}function nullFunc_viiiifii(x){abortFnPtrError(x,"viiiifii")}function nullFunc_viiiii(x){abortFnPtrError(x,"viiiii")}function nullFunc_viiiiidd(x){abortFnPtrError(x,"viiiiidd")}function nullFunc_viiiiii(x){abortFnPtrError(x,"viiiiii")}function nullFunc_viiiiiifi(x){abortFnPtrError(x,"viiiiiifi")}function nullFunc_viiiiiii(x){abortFnPtrError(x,"viiiiiii")}function nullFunc_viiiiiiii(x){abortFnPtrError(x,"viiiiiiii")}function nullFunc_viiiiiiiid(x){abortFnPtrError(x,"viiiiiiiid")}function nullFunc_viiiiiiiidi(x){abortFnPtrError(x,"viiiiiiiidi")}function nullFunc_viiiiiiiii(x){abortFnPtrError(x,"viiiiiiiii")}function nullFunc_viiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiii")}function nullFunc_viiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiii")}function nullFunc_viiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiii")}function nullFunc_viiiiiiiiiiiiii(x){abortFnPtrError(x,"viiiiiiiiiiiiii")}function jsCall_dd(index,a1){return functionPointers[index](a1)}function jsCall_did(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_didd(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_fii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_fiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_ii(index,a1){return functionPointers[index](a1)}function jsCall_iid(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iii(index,a1,a2){return functionPointers[index](a1,a2)}function jsCall_iiii(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_iiiii(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiiiii(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiiiii(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){return functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_iiiiij(index,a1,a2,a3,a4,a5){return functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_iiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_iiijjji(index,a1,a2,a3,a4,a5,a6){return functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_jiiij(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiiji(index,a1,a2,a3,a4){return functionPointers[index](a1,a2,a3,a4)}function jsCall_jiji(index,a1,a2,a3){return functionPointers[index](a1,a2,a3)}function jsCall_v(index){functionPointers[index]()}function jsCall_vdiidiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_vi(index,a1){functionPointers[index](a1)}function jsCall_vii(index,a1,a2){functionPointers[index](a1,a2)}function jsCall_viidi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viifi(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viii(index,a1,a2,a3){functionPointers[index](a1,a2,a3)}function jsCall_viiii(index,a1,a2,a3,a4){functionPointers[index](a1,a2,a3,a4)}function jsCall_viiiid(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiifii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiii(index,a1,a2,a3,a4,a5){functionPointers[index](a1,a2,a3,a4,a5)}function jsCall_viiiiidd(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiii(index,a1,a2,a3,a4,a5,a6){functionPointers[index](a1,a2,a3,a4,a5,a6)}function jsCall_viiiiiifi(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){functionPointers[index](a1,a2,a3,a4,a5,a6,a7)}function jsCall_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8)}function jsCall_viiiiiiiid(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiidi(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9)}function jsCall_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}function jsCall_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}function jsCall_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}function jsCall_viiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}var asmGlobalArg={};var asmLibraryArg={"___buildEnvironment":___buildEnvironment,"___lock":___lock,"___syscall221":___syscall221,"___syscall3":___syscall3,"___syscall5":___syscall5,"___unlock":___unlock,"___wasi_fd_close":___wasi_fd_close,"___wasi_fd_fdstat_get":___wasi_fd_fdstat_get,"___wasi_fd_seek":___wasi_fd_seek,"___wasi_fd_write":___wasi_fd_write,"__emscripten_fetch_free":__emscripten_fetch_free,"__memory_base":1024,"__table_base":0,"_abort":_abort,"_clock":_clock,"_clock_gettime":_clock_gettime,"_emscripten_asm_const_i":_emscripten_asm_const_i,"_emscripten_get_heap_size":_emscripten_get_heap_size,"_emscripten_is_main_browser_thread":_emscripten_is_main_browser_thread,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_emscripten_resize_heap":_emscripten_resize_heap,"_emscripten_start_fetch":_emscripten_start_fetch,"_fabs":_fabs,"_getenv":_getenv,"_gettimeofday":_gettimeofday,"_gmtime_r":_gmtime_r,"_llvm_exp2_f64":_llvm_exp2_f64,"_llvm_log2_f32":_llvm_log2_f32,"_llvm_stackrestore":_llvm_stackrestore,"_llvm_stacksave":_llvm_stacksave,"_llvm_trunc_f64":_llvm_trunc_f64,"_localtime_r":_localtime_r,"_nanosleep":_nanosleep,"_pthread_cond_destroy":_pthread_cond_destroy,"_pthread_cond_init":_pthread_cond_init,"_pthread_create":_pthread_create,"_pthread_join":_pthread_join,"_strftime":_strftime,"_sysconf":_sysconf,"_time":_time,"abortStackOverflow":abortStackOverflow,"getTempRet0":getTempRet0,"jsCall_dd":jsCall_dd,"jsCall_did":jsCall_did,"jsCall_didd":jsCall_didd,"jsCall_fii":jsCall_fii,"jsCall_fiii":jsCall_fiii,"jsCall_ii":jsCall_ii,"jsCall_iid":jsCall_iid,"jsCall_iii":jsCall_iii,"jsCall_iiii":jsCall_iiii,"jsCall_iiiii":jsCall_iiiii,"jsCall_iiiiii":jsCall_iiiiii,"jsCall_iiiiiii":jsCall_iiiiiii,"jsCall_iiiiiiii":jsCall_iiiiiiii,"jsCall_iiiiij":jsCall_iiiiij,"jsCall_iiiji":jsCall_iiiji,"jsCall_iiijjji":jsCall_iiijjji,"jsCall_jiiij":jsCall_jiiij,"jsCall_jiiji":jsCall_jiiji,"jsCall_jiji":jsCall_jiji,"jsCall_v":jsCall_v,"jsCall_vdiidiiiii":jsCall_vdiidiiiii,"jsCall_vi":jsCall_vi,"jsCall_vii":jsCall_vii,"jsCall_viidi":jsCall_viidi,"jsCall_viifi":jsCall_viifi,"jsCall_viii":jsCall_viii,"jsCall_viiii":jsCall_viiii,"jsCall_viiiid":jsCall_viiiid,"jsCall_viiiifii":jsCall_viiiifii,"jsCall_viiiii":jsCall_viiiii,"jsCall_viiiiidd":jsCall_viiiiidd,"jsCall_viiiiii":jsCall_viiiiii,"jsCall_viiiiiifi":jsCall_viiiiiifi,"jsCall_viiiiiii":jsCall_viiiiiii,"jsCall_viiiiiiii":jsCall_viiiiiiii,"jsCall_viiiiiiiid":jsCall_viiiiiiiid,"jsCall_viiiiiiiidi":jsCall_viiiiiiiidi,"jsCall_viiiiiiiii":jsCall_viiiiiiiii,"jsCall_viiiiiiiiii":jsCall_viiiiiiiiii,"jsCall_viiiiiiiiiii":jsCall_viiiiiiiiiii,"jsCall_viiiiiiiiiiii":jsCall_viiiiiiiiiiii,"jsCall_viiiiiiiiiiiiii":jsCall_viiiiiiiiiiiiii,"memory":wasmMemory,"nullFunc_dd":nullFunc_dd,"nullFunc_did":nullFunc_did,"nullFunc_didd":nullFunc_didd,"nullFunc_fii":nullFunc_fii,"nullFunc_fiii":nullFunc_fiii,"nullFunc_ii":nullFunc_ii,"nullFunc_iid":nullFunc_iid,"nullFunc_iii":nullFunc_iii,"nullFunc_iiii":nullFunc_iiii,"nullFunc_iiiii":nullFunc_iiiii,"nullFunc_iiiiii":nullFunc_iiiiii,"nullFunc_iiiiiii":nullFunc_iiiiiii,"nullFunc_iiiiiiii":nullFunc_iiiiiiii,"nullFunc_iiiiij":nullFunc_iiiiij,"nullFunc_iiiji":nullFunc_iiiji,"nullFunc_iiijjji":nullFunc_iiijjji,"nullFunc_jiiij":nullFunc_jiiij,"nullFunc_jiiji":nullFunc_jiiji,"nullFunc_jiji":nullFunc_jiji,"nullFunc_v":nullFunc_v,"nullFunc_vdiidiiiii":nullFunc_vdiidiiiii,"nullFunc_vi":nullFunc_vi,"nullFunc_vii":nullFunc_vii,"nullFunc_viidi":nullFunc_viidi,"nullFunc_viifi":nullFunc_viifi,"nullFunc_viii":nullFunc_viii,"nullFunc_viiii":nullFunc_viiii,"nullFunc_viiiid":nullFunc_viiiid,"nullFunc_viiiifii":nullFunc_viiiifii,"nullFunc_viiiii":nullFunc_viiiii,"nullFunc_viiiiidd":nullFunc_viiiiidd,"nullFunc_viiiiii":nullFunc_viiiiii,"nullFunc_viiiiiifi":nullFunc_viiiiiifi,"nullFunc_viiiiiii":nullFunc_viiiiiii,"nullFunc_viiiiiiii":nullFunc_viiiiiiii,"nullFunc_viiiiiiiid":nullFunc_viiiiiiiid,"nullFunc_viiiiiiiidi":nullFunc_viiiiiiiidi,"nullFunc_viiiiiiiii":nullFunc_viiiiiiiii,"nullFunc_viiiiiiiiii":nullFunc_viiiiiiiiii,"nullFunc_viiiiiiiiiii":nullFunc_viiiiiiiiiii,"nullFunc_viiiiiiiiiiii":nullFunc_viiiiiiiiiiii,"nullFunc_viiiiiiiiiiiiii":nullFunc_viiiiiiiiiiiiii,"table":wasmTable};var asm=Module["asm"](asmGlobalArg,asmLibraryArg,buffer);Module["asm"]=asm;var _AVSniffHttpFlvInit=Module["_AVSniffHttpFlvInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffHttpFlvInit"].apply(null,arguments)};var _AVSniffStreamInit=Module["_AVSniffStreamInit"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_AVSniffStreamInit"].apply(null,arguments)};var ___emscripten_environ_constructor=Module["___emscripten_environ_constructor"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___emscripten_environ_constructor"].apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["___errno_location"].apply(null,arguments)};var __get_daylight=Module["__get_daylight"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_daylight"].apply(null,arguments)};var __get_timezone=Module["__get_timezone"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_timezone"].apply(null,arguments)};var __get_tzname=Module["__get_tzname"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["__get_tzname"].apply(null,arguments)};var _closeVideo=Module["_closeVideo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_closeVideo"].apply(null,arguments)};var _decodeCodecContext=Module["_decodeCodecContext"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeCodecContext"].apply(null,arguments)};var _decodeHttpFlvVideoFrame=Module["_decodeHttpFlvVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null,arguments)};var _decodeVideoFrame=Module["_decodeVideoFrame"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_decodeVideoFrame"].apply(null,arguments)};var _demuxBox=Module["_demuxBox"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_demuxBox"].apply(null,arguments)};var _exitMissile=Module["_exitMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitMissile"].apply(null,arguments)};var _exitTsMissile=Module["_exitTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_exitTsMissile"].apply(null,arguments)};var _fflush=Module["_fflush"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_fflush"].apply(null,arguments)};var _free=Module["_free"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_free"].apply(null,arguments)};var _getAudioCodecID=Module["_getAudioCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getAudioCodecID"].apply(null,arguments)};var _getBufferLengthApi=Module["_getBufferLengthApi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getBufferLengthApi"].apply(null,arguments)};var _getExtensionInfo=Module["_getExtensionInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getExtensionInfo"].apply(null,arguments)};var _getMediaInfo=Module["_getMediaInfo"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getMediaInfo"].apply(null,arguments)};var _getPPS=Module["_getPPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPS"].apply(null,arguments)};var _getPPSLen=Module["_getPPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPPSLen"].apply(null,arguments)};var _getPacket=Module["_getPacket"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getPacket"].apply(null,arguments)};var _getSEI=Module["_getSEI"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEI"].apply(null,arguments)};var _getSEILen=Module["_getSEILen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSEILen"].apply(null,arguments)};var _getSPS=Module["_getSPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPS"].apply(null,arguments)};var _getSPSLen=Module["_getSPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSPSLen"].apply(null,arguments)};var _getSniffHttpFlvPkg=Module["_getSniffHttpFlvPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkg"].apply(null,arguments)};var _getSniffHttpFlvPkgNoCheckProbe=Module["_getSniffHttpFlvPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null,arguments)};var _getSniffStreamPkg=Module["_getSniffStreamPkg"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkg"].apply(null,arguments)};var _getSniffStreamPkgNoCheckProbe=Module["_getSniffStreamPkgNoCheckProbe"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null,arguments)};var _getVLC=Module["_getVLC"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLC"].apply(null,arguments)};var _getVLCLen=Module["_getVLCLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVLCLen"].apply(null,arguments)};var _getVPS=Module["_getVPS"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPS"].apply(null,arguments)};var _getVPSLen=Module["_getVPSLen"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVPSLen"].apply(null,arguments)};var _getVideoCodecID=Module["_getVideoCodecID"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_getVideoCodecID"].apply(null,arguments)};var _initMissile=Module["_initMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initMissile"].apply(null,arguments)};var _initTsMissile=Module["_initTsMissile"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initTsMissile"].apply(null,arguments)};var _initializeDecoder=Module["_initializeDecoder"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDecoder"].apply(null,arguments)};var _initializeDemuxer=Module["_initializeDemuxer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeDemuxer"].apply(null,arguments)};var _initializeSniffHttpFlvModule=Module["_initializeSniffHttpFlvModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null,arguments)};var _initializeSniffHttpFlvModuleWithAOpt=Module["_initializeSniffHttpFlvModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null,arguments)};var _initializeSniffStreamModule=Module["_initializeSniffStreamModule"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModule"].apply(null,arguments)};var _initializeSniffStreamModuleWithAOpt=Module["_initializeSniffStreamModuleWithAOpt"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null,arguments)};var _main=Module["_main"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_main"].apply(null,arguments)};var _malloc=Module["_malloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_malloc"].apply(null,arguments)};var _pushSniffHttpFlvData=Module["_pushSniffHttpFlvData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffHttpFlvData"].apply(null,arguments)};var _pushSniffStreamData=Module["_pushSniffStreamData"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_pushSniffStreamData"].apply(null,arguments)};var _registerPlayer=Module["_registerPlayer"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_registerPlayer"].apply(null,arguments)};var _release=Module["_release"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_release"].apply(null,arguments)};var _releaseHttpFLV=Module["_releaseHttpFLV"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseHttpFLV"].apply(null,arguments)};var _releaseSniffHttpFlv=Module["_releaseSniffHttpFlv"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffHttpFlv"].apply(null,arguments)};var _releaseSniffStream=Module["_releaseSniffStream"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_releaseSniffStream"].apply(null,arguments)};var _setCodecType=Module["_setCodecType"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["_setCodecType"].apply(null,arguments)};var establishStackSpace=Module["establishStackSpace"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["establishStackSpace"].apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackAlloc"].apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackRestore"].apply(null,arguments)};var stackSave=Module["stackSave"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["stackSave"].apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_v"].apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return Module["asm"]["dynCall_vi"].apply(null,arguments)};Module["asm"]=asm;if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromString"))Module["intArrayFromString"]=function(){abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=function(){abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["ccall"]=ccall;Module["cwrap"]=cwrap;if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=function(){abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=function(){abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=function(){abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getMemory"))Module["getMemory"]=function(){abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=function(){abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=function(){abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=function(){abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=function(){abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=function(){abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=function(){abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=function(){abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=function(){abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=function(){abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=function(){abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=function(){abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=function(){abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=function(){abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=function(){abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=function(){abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=function(){abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=function(){abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=function(){abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=function(){abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=function(){abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=function(){abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=function(){abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=function(){abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=function(){abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=function(){abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=function(){abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS"))Module["FS"]=function(){abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=function(){abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=function(){abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=function(){abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=function(){abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=function(){abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=function(){abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=function(){abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=function(){abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=function(){abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynamicAlloc"))Module["dynamicAlloc"]=function(){abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadDynamicLibrary"))Module["loadDynamicLibrary"]=function(){abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"loadWebAssemblyModule"))Module["loadWebAssemblyModule"]=function(){abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=function(){abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=function(){abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=function(){abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=function(){abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["addFunction"]=addFunction;Module["removeFunction"]=removeFunction;if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=function(){abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=function(){abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"makeBigInt"))Module["makeBigInt"]=function(){abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=function(){abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=function(){abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=function(){abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=function(){abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=function(){abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"establishStackSpace"))Module["establishStackSpace"]=function(){abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=function(){abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=function(){abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=function(){abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=function(){abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=function(){abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=function(){abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Pointer_stringify"))Module["Pointer_stringify"]=function(){abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=function(){abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_DYNAMIC"))Object.defineProperty(Module,"ALLOC_DYNAMIC",{configurable:true,get:function(){abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NONE"))Object.defineProperty(Module,"ALLOC_NONE",{configurable:true,get:function(){abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"calledRun"))Object.defineProperty(Module,"calledRun",{configurable:true,get:function(){abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){assert(runDependencies==0,'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])');assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=Module["_main"](argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}writeStackCookie();preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var print=out;var printErr=err;var has=false;out=err=function(x){has=true};try{var flush=Module["_fflush"];if(flush)flush(0);["stdout","stderr"].forEach(function(name){var info=FS.analyzePath("/dev/"+name);if(!info)return;var stream=info.object;var rdev=stream.rdev;var tty=TTY.ttys[rdev];if(tty&&tty.output&&tty.output.length){has=true}})}catch(e){}out=print;err=printErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.")}}function exit(status,implicit){checkUnflushedContent();if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){if(!implicit){err("exit("+status+") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)")}}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run(); diff --git a/vite_vue_ts/public/dist/missile-256mb-v20220421.wasm b/vite_vue_ts/public/dist/missile-256mb-v20220421.wasm deleted file mode 100644 index 26abee4ff4f8a2ce8dda5d08c0f29c43df06fa28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1859589 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≪Jc1xwXl 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

=PZS!e}n%_GBfm2?WOyp(z&rEP*M0fqV2 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≧)iR~4^~Zww`kAxhP?Y)g+mg39^Rz8 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Ν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
?;tS6E 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 v 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/") + } + arguments_ = process["argv"].slice(2); + if (typeof module !== "undefined") { + module["exports"] = Module + } + process["on"]("uncaughtException", function(ex) { + if (!(ex instanceof ExitStatus)) { + throw ex + } + }); + process["on"]("unhandledRejection", abort); + quit_ = function(status) { + process["exit"](status) + }; + Module["inspect"] = function() { + return "[Emscripten Module object]" + } +} else if (ENVIRONMENT_IS_SHELL) { + if (typeof read != "undefined") { + read_ = function shell_read(f) { + return read(f) + } + } + readBinary = function readBinary(f) { + var data; + if (typeof readbuffer === "function") { + return new Uint8Array(readbuffer(f)) + } + data = read(f, "binary"); + assert(typeof data === "object"); + return data + }; + if (typeof scriptArgs != "undefined") { + arguments_ = scriptArgs + } else if (typeof arguments != "undefined") { + arguments_ = arguments + } + if (typeof quit === "function") { + quit_ = function(status) { + quit(status) + } + } + if (typeof print !== "undefined") { + if (typeof console === "undefined") console = {}; + console.log = print; + console.warn = console.error = typeof printErr !== "undefined" ? printErr : print + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.indexOf("blob:") !== 0) { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1) + } else { + scriptDirectory = "" + } + read_ = function shell_read(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + }; + if (ENVIRONMENT_IS_WORKER) { + readBinary = function readBinary(url) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = function readAsync(url, onload, onerror) { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + }; + xhr.onerror = onerror; + xhr.send(null) + }; + setWindowTitle = function(title) { + document.title = title + } +} else { + throw new Error("environment detection error") +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key] + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (!Object.getOwnPropertyDescriptor(Module, "arguments")) Object.defineProperty(Module, "arguments", { + configurable: true, + get: function() { + abort("Module.arguments has been replaced with plain arguments_") + } +}); +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (!Object.getOwnPropertyDescriptor(Module, "thisProgram")) Object.defineProperty(Module, "thisProgram", { + configurable: true, + get: function() { + abort("Module.thisProgram has been replaced with plain thisProgram") + } +}); +if (Module["quit"]) quit_ = Module["quit"]; +if (!Object.getOwnPropertyDescriptor(Module, "quit")) Object.defineProperty(Module, "quit", { + configurable: true, + get: function() { + abort("Module.quit has been replaced with plain quit_") + } +}); +assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); +assert(typeof Module["read"] === "undefined", "Module.read option was removed (modify read_ in JS)"); +assert(typeof Module["readAsync"] === "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); +assert(typeof Module["readBinary"] === "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); +assert(typeof Module["setWindowTitle"] === "undefined", "Module.setWindowTitle option was removed (modify setWindowTitle in JS)"); +if (!Object.getOwnPropertyDescriptor(Module, "read")) Object.defineProperty(Module, "read", { + configurable: true, + get: function() { + abort("Module.read has been replaced with plain read_") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readAsync")) Object.defineProperty(Module, "readAsync", { + configurable: true, + get: function() { + abort("Module.readAsync has been replaced with plain readAsync") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "readBinary")) Object.defineProperty(Module, "readBinary", { + configurable: true, + get: function() { + abort("Module.readBinary has been replaced with plain readBinary") + } +}); +stackSave = stackRestore = stackAlloc = function() { + abort("cannot use the stack before compiled code is ready to run, and has provided stack access") +}; + +function dynamicAlloc(size) { + assert(DYNAMICTOP_PTR); + var ret = HEAP32[DYNAMICTOP_PTR >> 2]; + var end = ret + size + 15 & -16; + if (end > _emscripten_get_heap_size()) { + abort("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly") + } + HEAP32[DYNAMICTOP_PTR >> 2] = end; + return ret +} + +function getNativeTypeSize(type) { + switch (type) { + case "i1": + case "i8": + return 1; + case "i16": + return 2; + case "i32": + return 4; + case "i64": + return 8; + case "float": + return 4; + case "double": + return 8; + default: { + if (type[type.length - 1] === "*") { + return 4 + } else if (type[0] === "i") { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0, "getNativeTypeSize invalid bits " + bits + ", type " + type); + return bits / 8 + } else { + return 0 + } + } + } +} + +function warnOnce(text) { + if (!warnOnce.shown) warnOnce.shown = {}; + if (!warnOnce.shown[text]) { + warnOnce.shown[text] = 1; + err(text) + } +} +var asm2wasmImports = { + "f64-rem": function(x, y) { + return x % y + }, + "debugger": function() { + debugger + } +}; +var jsCallStartIndex = 1; +var functionPointers = new Array(100); + +function addFunction(func, sig) { + assert(typeof func !== "undefined"); + var base = 0; + for (var i = base; i < base + 100; i++) { + if (!functionPointers[i]) { + functionPointers[i] = func; + return jsCallStartIndex + i + } + } + throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." +} + +function removeFunction(index) { + functionPointers[index - jsCallStartIndex] = null +} +var tempRet0 = 0; +var getTempRet0 = function() { + return tempRet0 +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +if (!Object.getOwnPropertyDescriptor(Module, "wasmBinary")) Object.defineProperty(Module, "wasmBinary", { + configurable: true, + get: function() { + abort("Module.wasmBinary has been replaced with plain wasmBinary") + } +}); +var noExitRuntime; +if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; +if (!Object.getOwnPropertyDescriptor(Module, "noExitRuntime")) Object.defineProperty(Module, "noExitRuntime", { + configurable: true, + get: function() { + abort("Module.noExitRuntime has been replaced with plain noExitRuntime") + } +}); +if (typeof WebAssembly !== "object") { + abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.") +} + +function setValue(ptr, value, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + default: + abort("invalid type for setValue: " + type) + } +} +var wasmMemory; +var wasmTable = new WebAssembly.Table({ + "initial": 8960, + "element": "anyfunc" +}); +var ABORT = false; +var EXITSTATUS = 0; + +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text) + } +} + +function getCFunc(ident) { + var func = Module["_" + ident]; + assert(func, "Cannot call unknown function " + ident + ", make sure it is exported"); + return func +} + +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + "string": function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len) + } + return ret + }, + "array": function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + assert(returnType !== "array", 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret +} + +function cwrap(ident, returnType, argTypes, opts) { + return function() { + return ccall(ident, returnType, argTypes, arguments, opts) + } +} +var ALLOC_NORMAL = 0; +var ALLOC_NONE = 3; + +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === "number") { + zeroinit = true; + size = slab + } else { + zeroinit = false; + size = slab.length + } + var singleType = typeof types === "string" ? types : null; + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr + } else { + ret = [_malloc, stackAlloc, dynamicAlloc][allocator](Math.max(size, singleType ? 1 : types.length)) + } + if (zeroinit) { + var stop; + ptr = ret; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[ptr >> 2] = 0 + } + stop = ret + size; + while (ptr < stop) { + HEAP8[ptr++ >> 0] = 0 + } + return ret + } + if (singleType === "i8") { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret) + } else { + HEAPU8.set(new Uint8Array(slab), ret) + } + return ret + } + var i = 0, + type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + type = singleType || types[i]; + if (type === 0) { + i++; + continue + } + assert(type, "Must know what type to store in allocate!"); + if (type == "i64") type = "i32"; + setValue(ret + i, curr, type); + if (previousType !== type) { + typeSize = getNativeTypeSize(type); + previousType = type + } + i += typeSize + } + return ret +} + +function getMemory(size) { + if (!runtimeInitialized) return dynamicAlloc(size); + return _malloc(size) +} +var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; + +function UTF8ArrayToString(u8Array, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (u8Array[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { + return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) + } else { + var str = ""; + while (idx < endPtr) { + var u0 = u8Array[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = u8Array[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = u8Array[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + if ((u0 & 248) != 240) warnOnce("Invalid UTF-8 leading byte 0x" + u0.toString(16) + " encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"); + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + } + return str +} + +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "" +} + +function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) break; + outU8Array[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + outU8Array[outIdx++] = 192 | u >> 6; + outU8Array[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + outU8Array[outIdx++] = 224 | u >> 12; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) break; + if (u >= 2097152) warnOnce("Invalid Unicode code point 0x" + u.toString(16) + " encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF)."); + outU8Array[outIdx++] = 240 | u >> 18; + outU8Array[outIdx++] = 128 | u >> 12 & 63; + outU8Array[outIdx++] = 128 | u >> 6 & 63; + outU8Array[outIdx++] = 128 | u & 63 + } + } + outU8Array[outIdx] = 0; + return outIdx - startIdx +} + +function stringToUTF8(str, outPtr, maxBytesToWrite) { + assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"); + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) +} + +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4 + } + return len +} +var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; + +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function allocateUTF8OnStack(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8Array(str, HEAP8, ret, size); + return ret +} + +function writeArrayToMemory(array, buffer) { + assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)"); + HEAP8.set(array, buffer) +} + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; ++i) { + assert(str.charCodeAt(i) === str.charCodeAt(i) & 255); + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + if (!dontAddNull) HEAP8[buffer >> 0] = 0 +} +var PAGE_SIZE = 16384; +var WASM_PAGE_SIZE = 65536; +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf) +} +var STACK_BASE = 1398016, + STACK_MAX = 6640896, + DYNAMIC_BASE = 6640896, + DYNAMICTOP_PTR = 1397792; +assert(STACK_BASE % 16 === 0, "stack must start aligned"); +assert(DYNAMIC_BASE % 16 === 0, "heap must start aligned"); +var TOTAL_STACK = 5242880; +if (Module["TOTAL_STACK"]) assert(TOTAL_STACK === Module["TOTAL_STACK"], "the stack size can no longer be determined at runtime"); +var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 2147483648; +if (!Object.getOwnPropertyDescriptor(Module, "TOTAL_MEMORY")) Object.defineProperty(Module, "TOTAL_MEMORY", { + configurable: true, + get: function() { + abort("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY") + } +}); +assert(INITIAL_TOTAL_MEMORY >= TOTAL_STACK, "TOTAL_MEMORY should be larger than TOTAL_STACK, was " + INITIAL_TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); +assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support"); +if (Module["wasmMemory"]) { + wasmMemory = Module["wasmMemory"] +} else { + wasmMemory = new WebAssembly.Memory({ + "initial": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE, + "maximum": INITIAL_TOTAL_MEMORY / WASM_PAGE_SIZE + }) +} +if (wasmMemory) { + buffer = wasmMemory.buffer +} +INITIAL_TOTAL_MEMORY = buffer.byteLength; +assert(INITIAL_TOTAL_MEMORY % WASM_PAGE_SIZE === 0); +updateGlobalBufferAndViews(buffer); +HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; + +function writeStackCookie() { + assert((STACK_MAX & 3) == 0); + HEAPU32[(STACK_MAX >> 2) - 1] = 34821223; + HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022; + HEAP32[0] = 1668509029 +} + +function checkStackCookie() { + var cookie1 = HEAPU32[(STACK_MAX >> 2) - 1]; + var cookie2 = HEAPU32[(STACK_MAX >> 2) - 2]; + if (cookie1 != 34821223 || cookie2 != 2310721022) { + abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + cookie2.toString(16) + " " + cookie1.toString(16)) + } + if (HEAP32[0] !== 1668509029) abort("Runtime error: The application has corrupted its heap memory area (address zero)!") +} + +function abortStackOverflow(allocSize) { + abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!") +}(function() { + var h16 = new Int16Array(1); + var h8 = new Int8Array(h16.buffer); + h16[0] = 25459; + if (h8[0] !== 115 || h8[1] !== 99) throw "Runtime error: expected the system to be little-endian!" +})(); + +function abortFnPtrError(ptr, sig) { + var possibleSig = ""; + for (var x in debug_tables) { + var tbl = debug_tables[x]; + if (tbl[ptr]) { + possibleSig += 'as sig "' + x + '" pointing to function ' + tbl[ptr] + ", " + } + } + abort("Invalid function pointer " + ptr + " called with signature '" + sig + "'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). This pointer might make sense in another type signature: " + possibleSig) +} + +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(); + continue + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + Module["dynCall_v"](func) + } else { + Module["dynCall_vi"](func, callback.arg) + } + } else { + func(callback.arg === undefined ? null : callback.arg) + } + } +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATMAIN__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +var runtimeExited = false; + +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} + +function initRuntime() { + checkStackCookie(); + assert(!runtimeInitialized); + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} + +function preMain() { + checkStackCookie(); + FS.ignorePermissions = false; + callRuntimeCallbacks(__ATMAIN__) +} + +function exitRuntime() { + checkStackCookie(); + runtimeExited = true +} + +function postRun() { + checkStackCookie(); + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} + +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +assert(Math.imul, "This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.fround, "This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.clz32, "This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +assert(Math.trunc, "This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"); +var Math_abs = Math.abs; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_min = Math.min; +var Math_trunc = Math.trunc; +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +var runDependencyTracking = {}; + +function getUniqueRunDependency(id) { + var orig = id; + while (1) { + if (!runDependencyTracking[id]) return id; + id = orig + Math.random() + } + return id +} + +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== "undefined") { + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + err("still waiting on run dependencies:") + } + err("dependency: " + dep) + } + if (shown) { + err("(end of list)") + } + }, 1e4) + } + } else { + err("warning: run dependency added without ID") + } +} + +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies) + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id] + } else { + err("warning: run dependency removed without ID") + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; + +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what) + } + what += ""; + out(what); + err(what); + ABORT = true; + EXITSTATUS = 1; + var extra = ""; + var output = "abort(" + what + ") at " + stackTrace() + extra; + throw output +} +if (!ENVIRONMENT_IS_PTHREAD) addOnPreRun(function() { + if (typeof SharedArrayBuffer !== "undefined") { + addRunDependency("pthreads"); + PThread.allocateUnusedWorkers(5, function() { + removeRunDependency("pthreads") + }) + } +}); +var dataURIPrefix = "data:application/octet-stream;base64,"; + +function isDataURI(filename) { + return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0 +} +var wasmBinaryFile = "missile-120func-v20220706.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} + +function getBinary() { + try { + if (wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(wasmBinaryFile) + } else { + throw "both async and sync fetching of the wasm failed" + } + } catch (err) { + abort(err) + } +} + +function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") { + return fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + if (!response["ok"]) { + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'" + } + return response["arrayBuffer"]() + }).catch(function() { + return getBinary() + }) + } + return new Promise(function(resolve, reject) { + resolve(getBinary()) + }) +} + +function createWasm() { + var info = { + "env": asmLibraryArg, + "wasi_unstable": asmLibraryArg, + "global": { + "NaN": NaN, + Infinity: Infinity + }, + "global.Math": Math, + "asm2wasm": asm2wasmImports + }; + + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + removeRunDependency("wasm-instantiate") + } + addRunDependency("wasm-instantiate"); + var trueModule = Module; + + function receiveInstantiatedSource(output) { + assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"); + trueModule = null; + receiveInstance(output["instance"]) + } + + function instantiateArrayBuffer(receiver) { + return getBinaryPromise().then(function(binary) { + return WebAssembly.instantiate(binary, info) + }).then(receiver, function(reason) { + err("failed to asynchronously prepare wasm: " + reason); + abort(reason) + }) + } + + function instantiateAsync() { + if (!wasmBinary && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") { + fetch(wasmBinaryFile, { + credentials: "same-origin" + }).then(function(response) { + var result = WebAssembly.instantiateStreaming(response, info); + return result.then(receiveInstantiatedSource, function(reason) { + err("wasm streaming compile failed: " + reason); + err("falling back to ArrayBuffer instantiation"); + instantiateArrayBuffer(receiveInstantiatedSource) + }) + }) + } else { + return instantiateArrayBuffer(receiveInstantiatedSource) + } + } + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false + } + } + instantiateAsync(); + return {} +} +Module["asm"] = createWasm; +var tempDouble; +var tempI64; +var ASM_CONSTS = [function() { + if (typeof window != "undefined") { + window.dispatchEvent(new CustomEvent("wasmLoaded")) + } else {} +}]; + +function _emscripten_asm_const_i(code) { + return ASM_CONSTS[code]() +} +__ATINIT__.push({ + func: function() { + ___emscripten_environ_constructor() + } +}); +var tempDoublePtr = 1398e3; +assert(tempDoublePtr % 8 == 0); + +function demangle(func) { + warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); + return func +} + +function demangleAll(text) { + var regex = /\b__Z[\w\d_]+/g; + return text.replace(regex, function(x) { + var y = demangle(x); + return x === y ? x : y + " [" + x + "]" + }) +} + +function jsStackTrace() { + var err = new Error; + if (!err.stack) { + try { + throw new Error(0) + } catch (e) { + err = e + } + if (!err.stack) { + return "(no stack trace available)" + } + } + return err.stack.toString() +} + +function stackTrace() { + var js = jsStackTrace(); + if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); + return demangleAll(js) +} +var ENV = {}; + +function ___buildEnvironment(environ) { + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + ENV["USER"] = "web_user"; + ENV["LOGNAME"] = "web_user"; + ENV["PATH"] = "/"; + ENV["PWD"] = "/"; + ENV["HOME"] = "/home/web_user"; + ENV["LANG"] = (typeof navigator === "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + ENV["_"] = thisProgram; + poolPtr = getMemory(TOTAL_ENV_SIZE); + envPtr = getMemory(MAX_ENV_VALUES * 4); + HEAP32[envPtr >> 2] = poolPtr; + HEAP32[environ >> 2] = envPtr + } else { + envPtr = HEAP32[environ >> 2]; + poolPtr = HEAP32[envPtr >> 2] + } + var strings = []; + var totalSize = 0; + for (var key in ENV) { + if (typeof ENV[key] === "string") { + var line = key + "=" + ENV[key]; + strings.push(line); + totalSize += line.length + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error("Environment size exceeded TOTAL_ENV_SIZE!") + } + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[envPtr + i * ptrSize >> 2] = poolPtr; + poolPtr += line.length + 1 + } + HEAP32[envPtr + strings.length * ptrSize >> 2] = 0 +} + +function ___lock() {} + +function ___setErrNo(value) { + if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; + else err("failed to set errno from JS"); + return value +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + }, + basename: function(path) { + if (path === "/") return "/"; + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1) + }, + extname: function(path) { + return PATH.splitPath(path)[3] + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")) + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r) + } +}; +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/" + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(function(p) { + return !!p + }), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break + } + if (start > end) return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty) + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = fs.readSync(process.stdin.fd, buf, 0, BUFSIZE, null) + } catch (e) { + if (e.toString().indexOf("EOF") != -1) bytesRead = 0; + else throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + tty.input = intArrayFromString(result, true) + } + return tty.input.shift() + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) tty.output.push(val) + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + } + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node + } + return node + }, + getFileDataAsRegularArray: function(node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr + } + return node.contents + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array; + if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + return + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + return + } + if (!node.contents || node.contents.subarray) { + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize; + return + } + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else + while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44] + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir + }, + unlink: function(parent, name) { + delete parent.contents[name] + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name] + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + assert(size >= 0); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i] + } + return size + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + assert(position === 0, "canOwn must imply no weird position inside the file"); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); + else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + var fromHeap = buffer.buffer == HEAP8.buffer; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + }(fromHeap ? HEAP8 : buffer).set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (mmapFlags & 2) { + return 0 + } + var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var IDBFS = { + dbs: {}, + indexedDB: function() { + if (typeof indexedDB !== "undefined") return indexedDB; + var ret = null; + if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + assert(ret, "IDBFS used, but indexedDB not supported"); + return ret + }, + DB_VERSION: 21, + DB_STORE_NAME: "FILE_DATA", + mount: function(mount) { + return MEMFS.mount.apply(null, arguments) + }, + syncfs: function(mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + var src = populate ? remote : local; + var dst = populate ? local : remote; + IDBFS.reconcile(src, dst, callback) + }) + }) + }, + getDB: function(name, callback) { + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db) + } + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION) + } catch (e) { + return callback(e) + } + if (!req) { + return callback("Unable to connect to IndexedDB") + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + var fileStore; + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME) + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME) + } + if (!fileStore.indexNames.contains("timestamp")) { + fileStore.createIndex("timestamp", "timestamp", { + unique: false + }) + } + }; + req.onsuccess = function() { + db = req.result; + IDBFS.dbs[name] = db; + callback(null, db) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + getLocalSet: function(mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== "." && p !== ".." + } + + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p) + } + } + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + while (check.length) { + var path = check.pop(); + var stat; + try { + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))) + } + entries[path] = { + timestamp: stat.mtime + } + } + return callback(null, { + type: "local", + entries: entries + }) + }, + getRemoteSet: function(mount, callback) { + var entries = {}; + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + try { + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readonly"); + transaction.onerror = function(e) { + callback(this.error); + e.preventDefault() + }; + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index("timestamp"); + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + if (!cursor) { + return callback(null, { + type: "remote", + db: db, + entries: entries + }) + } + entries[cursor.primaryKey] = { + timestamp: cursor.key + }; + cursor.continue() + } + } catch (e) { + return callback(e) + } + }) + }, + loadLocalEntry: function(path, callback) { + var stat, node; + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path) + } catch (e) { + return callback(e) + } + if (FS.isDir(stat.mode)) { + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode + }) + } else if (FS.isFile(stat.mode)) { + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { + timestamp: stat.mtime, + mode: stat.mode, + contents: node.contents + }) + } else { + return callback(new Error("node type not supported")) + } + }, + storeLocalEntry: function(path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode) + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { + canOwn: true + }) + } else { + return callback(new Error("node type not supported")) + } + FS.chmod(path, entry.mode); + FS.utime(path, entry.timestamp, entry.timestamp) + } catch (e) { + return callback(e) + } + callback(null) + }, + removeLocalEntry: function(path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + if (FS.isDir(stat.mode)) { + FS.rmdir(path) + } else if (FS.isFile(stat.mode)) { + FS.unlink(path) + } + } catch (e) { + return callback(e) + } + callback(null) + }, + loadRemoteEntry: function(store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { + callback(null, event.target.result) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + storeRemoteEntry: function(store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + removeRemoteEntry: function(store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { + callback(null) + }; + req.onerror = function(e) { + callback(this.error); + e.preventDefault() + } + }, + reconcile: function(src, dst, callback) { + var total = 0; + var create = []; + Object.keys(src.entries).forEach(function(key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++ + } + }); + var remove = []; + Object.keys(dst.entries).forEach(function(key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++ + } + }); + if (!total) { + return callback(null) + } + var errored = false; + var db = src.type === "remote" ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], "readwrite"); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err && !errored) { + errored = true; + return callback(err) + } + } + transaction.onerror = function(e) { + done(this.error); + e.preventDefault() + }; + transaction.oncomplete = function(e) { + if (!errored) { + callback(null) + } + }; + create.sort().forEach(function(path) { + if (dst.type === "local") { + IDBFS.loadRemoteEntry(store, path, function(err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done) + }) + } else { + IDBFS.loadLocalEntry(path, function(err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done) + }) + } + }); + remove.sort().reverse().forEach(function(path) { + if (dst.type === "local") { + IDBFS.removeLocalEntry(path, done) + } else { + IDBFS.removeRemoteEntry(store, path, done) + } + }) + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = process["binding"]("constants"); + if (flags["fs"]) { + flags = flags["fs"] + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + } + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer) + }, + convertNodeCode: function(e) { + var code = e.code; + assert(code in ERRNO_CODES); + return ERRNO_CODES[code] + }, + mount: function(mount) { + assert(ENVIRONMENT_HAS_NODE); + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0) + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28) + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2 + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return stat.mode + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts) + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k + } + } + if (!flags) { + return newFlags + } else { + throw new FS.ErrnoError(28) + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096 + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0 + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + } + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date) + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode) + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode) + } else { + fs.writeFileSync(path, "", { + mode: node.mode + }) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + return node + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath) + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path); + return path + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd) + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position) + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)) + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var WORKERFS = { + DIR_MODE: 16895, + FILE_MODE: 33279, + reader: null, + mount: function(mount) { + assert(ENVIRONMENT_IS_WORKER); + if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync; + var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0); + var createdParents = {}; + + function ensureParent(path) { + var parts = path.split("/"); + var parent = root; + for (var i = 0; i < parts.length - 1; i++) { + var curr = parts.slice(0, i + 1).join("/"); + if (!createdParents[curr]) { + createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0) + } + parent = createdParents[curr] + } + return parent + } + + function base(path) { + var parts = path.split("/"); + return parts[parts.length - 1] + } + Array.prototype.forEach.call(mount.opts["files"] || [], function(file) { + WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate) + }); + (mount.opts["blobs"] || []).forEach(function(obj) { + WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]) + }); + (mount.opts["packages"] || []).forEach(function(pack) { + pack["metadata"].files.forEach(function(file) { + var name = file.filename.substr(1); + WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end)) + }) + }); + return root + }, + createNode: function(parent, name, mode, dev, contents, mtime) { + var node = FS.createNode(parent, name, mode); + node.mode = mode; + node.node_ops = WORKERFS.node_ops; + node.stream_ops = WORKERFS.stream_ops; + node.timestamp = (mtime || new Date).getTime(); + assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE); + if (mode === WORKERFS.FILE_MODE) { + node.size = contents.size; + node.contents = contents + } else { + node.size = 4096; + node.contents = {} + } + if (parent) { + parent.contents[name] = node + } + return node + }, + node_ops: { + getattr: function(node) { + return { + dev: 1, + ino: undefined, + mode: node.mode, + nlink: 1, + uid: 0, + gid: 0, + rdev: undefined, + size: node.size, + atime: new Date(node.timestamp), + mtime: new Date(node.timestamp), + ctime: new Date(node.timestamp), + blksize: 4096, + blocks: Math.ceil(node.size / 4096) + } + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + }, + lookup: function(parent, name) { + throw new FS.ErrnoError(44) + }, + mknod: function(parent, name, mode, dev) { + throw new FS.ErrnoError(63) + }, + rename: function(oldNode, newDir, newName) { + throw new FS.ErrnoError(63) + }, + unlink: function(parent, name) { + throw new FS.ErrnoError(63) + }, + rmdir: function(parent, name) { + throw new FS.ErrnoError(63) + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue + } + entries.push(key) + } + return entries + }, + symlink: function(parent, newName, oldPath) { + throw new FS.ErrnoError(63) + }, + readlink: function(node) { + throw new FS.ErrnoError(63) + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + if (position >= stream.node.size) return 0; + var chunk = stream.node.contents.slice(position, position + length); + var ab = WORKERFS.reader.readAsArrayBuffer(chunk); + buffer.set(new Uint8Array(ab), offset); + return chunk.size + }, + write: function(stream, buffer, offset, length, position) { + throw new FS.ErrnoError(29) + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.size + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + } + } +}; +var ERRNO_MESSAGES = { + 0: "Success", + 1: "Arg list too long", + 2: "Permission denied", + 3: "Address already in use", + 4: "Address not available", + 5: "Address family not supported by protocol family", + 6: "No more processes", + 7: "Socket already connected", + 8: "Bad file number", + 9: "Trying to read unreadable message", + 10: "Mount device busy", + 11: "Operation canceled", + 12: "No children", + 13: "Connection aborted", + 14: "Connection refused", + 15: "Connection reset by peer", + 16: "File locking deadlock error", + 17: "Destination address required", + 18: "Math arg out of domain of func", + 19: "Quota exceeded", + 20: "File exists", + 21: "Bad address", + 22: "File too large", + 23: "Host is unreachable", + 24: "Identifier removed", + 25: "Illegal byte sequence", + 26: "Connection already in progress", + 27: "Interrupted system call", + 28: "Invalid argument", + 29: "I/O error", + 30: "Socket is already connected", + 31: "Is a directory", + 32: "Too many symbolic links", + 33: "Too many open files", + 34: "Too many links", + 35: "Message too long", + 36: "Multihop attempted", + 37: "File or path name too long", + 38: "Network interface is not configured", + 39: "Connection reset by network", + 40: "Network is unreachable", + 41: "Too many open files in system", + 42: "No buffer space available", + 43: "No such device", + 44: "No such file or directory", + 45: "Exec format error", + 46: "No record locks available", + 47: "The link has been severed", + 48: "Not enough core", + 49: "No message of desired type", + 50: "Protocol not available", + 51: "No space left on device", + 52: "Function not implemented", + 53: "Socket is not connected", + 54: "Not a directory", + 55: "Directory not empty", + 56: "State not recoverable", + 57: "Socket operation on non-socket", + 59: "Not a typewriter", + 60: "No such device or address", + 61: "Value too large for defined data type", + 62: "Previous owner died", + 63: "Not super-user", + 64: "Broken pipe", + 65: "Protocol error", + 66: "Unknown protocol", + 67: "Protocol wrong type for socket", + 68: "Math result not representable", + 69: "Read only file system", + 70: "Illegal seek", + 71: "No such process", + 72: "Stale file handle", + 73: "Connection timed out", + 74: "Text file busy", + 75: "Cross-device link", + 100: "Device not a stream", + 101: "Bad font file fmt", + 102: "Invalid slot", + 103: "Invalid request code", + 104: "No anode", + 105: "Block device required", + 106: "Channel number out of range", + 107: "Level 3 halted", + 108: "Level 3 reset", + 109: "Link number out of range", + 110: "Protocol driver not attached", + 111: "No CSI structure available", + 112: "Level 2 halted", + 113: "Invalid exchange", + 114: "Invalid request descriptor", + 115: "Exchange full", + 116: "No data (for no delay io)", + 117: "Timer expired", + 118: "Out of streams resources", + 119: "Machine is not on the network", + 120: "Package not installed", + 121: "The object is remote", + 122: "Advertise error", + 123: "Srmount error", + 124: "Communication error on send", + 125: "Cross mount point (not really error)", + 126: "Given log. name not unique", + 127: "f.d. invalid for this operation", + 128: "Remote address changed", + 129: "Can access a needed shared lib", + 130: "Accessing a corrupted shared lib", + 131: ".lib section in a.out corrupted", + 132: "Attempting to link in too many libs", + 133: "Attempting to exec a shared library", + 135: "Streams pipe error", + 136: "Too many users", + 137: "Socket type not supported", + 138: "Not supported", + 139: "Protocol family not supported", + 140: "Can't send after socket shutdown", + 141: "Too many references", + 142: "Host is down", + 148: "No medium (in tape drive)", + 156: "Level 2 not synchronized" +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { + openFlags: { + READ: 1, + WRITE: 2 + } + }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function(e) { + if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); + return ___setErrNo(e.errno) + }, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key] + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = PATH.normalizeArray(path.split("/").filter(function(p) { + return !!p + }), false); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path + } + path = path ? node.name + "/" + path : node.name; + node = node.parent + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode: function(parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err, parent) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode: function(parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev + }; + FS.FSNode.prototype = {}; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } + }) + } + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node + }, + destroyNode: function(node) { + FS.hashRemoveNode(node) + }, + isRoot: function(node) { + return node === node.parent + }, + isMountpoint: function(node) { + return !!node.mounted + }, + isFile: function(mode) { + return (mode & 61440) === 32768 + }, + isDir: function(mode) { + return (mode & 61440) === 16384 + }, + isLink: function(mode) { + return (mode & 61440) === 40960 + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576 + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096 + }, + isSocket: function(mode) { + return (mode & 49152) === 49152 + }, + flagModes: { + "r": 0, + "rs": 1052672, + "r+": 2, + "w": 577, + "wx": 705, + "xw": 705, + "w+": 578, + "wx+": 706, + "xw+": 706, + "a": 1089, + "ax": 1217, + "xa": 1217, + "a+": 1090, + "ax+": 1218, + "xa+": 1218 + }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str) + } + return flags + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.indexOf("r") !== -1 && !(node.mode & 292)) { + return 2 + } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { + return 2 + } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup: function(dir) { + var err = FS.nodePermissions(dir, "x"); + if (err) return err; + if (!dir.node_ops.lookup) return 2; + return 0 + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var err = FS.nodePermissions(dir, "wx"); + if (err) { + return err + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen: function(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStream: function(fd) { + return FS.streams[fd] + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { + return this.node + }, + set: function(val) { + this.node = val + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get: function() { + return this.flags & 1024 + } + } + }) + } + var newStream = new FS.FSStream; + for (var p in stream) { + newStream[p] = stream[p] + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream: function(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + }, + llseek: function() { + throw new FS.ErrnoError(70) + } + }, + major: function(dev) { + return dev >> 8 + }, + minor: function(dev) { + return dev & 255 + }, + makedev: function(ma, mi) { + return ma << 8 | mi + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: function(dev) { + return FS.devices[dev] + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work") + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function doCallback(err) { + assert(FS.syncFSRequests > 0); + FS.syncFSRequests--; + return callback(err) + } + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return doCallback(err) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + }) + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current) + } + current = next + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1) + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) throw e + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node + } catch (e) { + throw new FS.ErrnoError(10) + } + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err) + } + err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path) + } + } catch (e) { + console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + try { + if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path) + } catch (e) { + console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message) + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + throw new FS.ErrnoError(err) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path) + } + } catch (e) { + console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path) + } catch (e) { + console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message) + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat: function(path) { + return FS.stat(path, true) + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chmod(stream.node, mode) + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + FS.chown(stream.node, uid, gid) + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var err = FS.nodePermissions(node, "w"); + if (err) { + throw new FS.ErrnoError(err) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path === "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err) + } + } + if (flags & 512) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, fd_start, fd_end); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + console.log("FS.trackingDelegate error on read file: " + path) + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags) + } + } catch (e) { + console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message) + } + return stream + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed: function(stream) { + return stream.fd === null + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path) + } catch (e) { + console.log("FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message) + } + return bytesWritten + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap: function(stream, buffer, offset, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags) + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: function(stream) { + return 0 + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || "r"; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"') + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || "w"; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: function() { + return FS.currentPath + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var err = FS.nodePermissions(lookup.node, "x"); + if (err) { + throw new FS.ErrnoError(err) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0 + }, + write: function(stream, buffer, offset, length, pos) { + return length + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device; + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + random_device = function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0] + } + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + random_device = function() { + return crypto_module["randomBytes"](1)[0] + } + } catch (e) {} + } else {} + if (!random_device) { + random_device = function() { + abort("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };") + } + } + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount: function() { + var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: function() { + return stream.path + } + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", "r"); + var stdout = FS.open("/dev/stdout", "w"); + var stderr = FS.open("/dev/stderr", "w"); + assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")"); + assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")"); + assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")") + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break + } + } + }; + this.setErrno(errno); + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) { + Object.defineProperty(this, "stack", { + value: (new Error).stack, + writable: true + }); + this.stack = demangleAll(this.stack) + } + }; + FS.ErrnoError.prototype = new Error; + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + }) + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS, + "IDBFS": IDBFS, + "NODEFS": NODEFS, + "WORKERFS": WORKERFS + } + }, + init: function(input, output, error) { + assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"); + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode + }, + joinPath: function(parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == "/") path = path.substr(1); + return path + }, + absolutePath: function(relative, base) { + return PATH_FS.resolve(base, relative) + }, + standardizePath: function(path) { + return PATH.normalize(path) + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object + } else { + ___setErrNo(ret.error); + return null + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createFolder: function(parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode) + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, "w"); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + return node + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10) + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + createLink: function(parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name); + return FS.symlink(target, path) + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + success = false + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + if (!success) ___setErrNo(29); + return success + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } else { + return intArrayFromString(xhr.responseText || "", true) + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + console.log("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + return fn.apply(null, arguments) + } + }); + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(29) + } + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + }; + node.stream_ops = stream_ops; + return node + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + if (onload) onload(); + removeRunDependency(dep) + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep) + }); + handled = true + } + }); + if (!handled) finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray) + }, onerror) + } else { + processData(url) + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME) + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish() + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly") + } catch (e) { + onerror(e); + return + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + + function finish() { + if (fail == 0) onload(); + else onerror() + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path) + } + FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true); + ok++; + if (ok + fail == total) finish() + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish() + } + }); + transaction.onerror = onerror + }; + openRequest.onerror = onerror + } +}; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + mappings: {}, + umask: 511, + calculateAt: function(dirfd, path) { + if (path[0] !== "/") { + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path + } + path = PATH.join2(dir, path) + } + return path + }, + doStat: function(func, path, buf) { + try { + var stat = func(path) + } catch (e) { + if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) { + return -54 + } + throw e + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = 0; + HEAP32[buf + 8 >> 2] = stat.ino; + HEAP32[buf + 12 >> 2] = stat.mode; + HEAP32[buf + 16 >> 2] = stat.nlink; + HEAP32[buf + 20 >> 2] = stat.uid; + HEAP32[buf + 24 >> 2] = stat.gid; + HEAP32[buf + 28 >> 2] = stat.rdev; + HEAP32[buf + 32 >> 2] = 0; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 40 >> 2] = tempI64[0], HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAP32[buf + 48 >> 2] = 4096; + HEAP32[buf + 52 >> 2] = stat.blocks; + HEAP32[buf + 56 >> 2] = stat.atime.getTime() / 1e3 | 0; + HEAP32[buf + 60 >> 2] = 0; + HEAP32[buf + 64 >> 2] = stat.mtime.getTime() / 1e3 | 0; + HEAP32[buf + 68 >> 2] = 0; + HEAP32[buf + 72 >> 2] = stat.ctime.getTime() / 1e3 | 0; + HEAP32[buf + 76 >> 2] = 0; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[buf + 80 >> 2] = tempI64[0], HEAP32[buf + 84 >> 2] = tempI64[1]; + return 0 + }, + doMsync: function(addr, stream, len, flags) { + var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len)); + FS.msync(stream, buffer, 0, len, flags) + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28 + } + FS.mknod(path, mode, dev); + return 0 + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28 + } + var node; + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node; + if (!node) { + return -44 + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2 + } + return 0 + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break + } + return ret + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[iov + i * 8 >> 2]; + var len = HEAP32[iov + (i * 8 + 4) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr + } + return ret + }, + varargs: 0, + get: function(varargs) { + SYSCALLS.varargs += 4; + var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; + return ret + }, + getStr: function() { + var ret = UTF8ToString(SYSCALLS.get()); + return ret + }, + getStreamFromFD: function(fd) { + if (fd === undefined) fd = SYSCALLS.get(); + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream + }, + get64: function() { + var low = SYSCALLS.get(), + high = SYSCALLS.get(); + if (low >= 0) assert(high === 0); + else assert(high === -1); + return low + }, + getZero: function() { + assert(SYSCALLS.get() === 0) + } +}; + +function ___syscall221(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + cmd = SYSCALLS.get(); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + ___setErrNo(28); + return -1; + default: { + return -28 + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall3(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(), + buf = SYSCALLS.get(), + count = SYSCALLS.get(); + return FS.read(stream, HEAP8, buf, count) + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___syscall5(which, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(), + flags = SYSCALLS.get(), + mode = SYSCALLS.get(); + var stream = FS.open(pathname, flags, mode); + return stream.fd + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno + } +} + +function ___unlock() {} + +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_close() { + return _fd_close.apply(null, arguments) +} + +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_fdstat_get() { + return _fd_fdstat_get.apply(null, arguments) +} + +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61 + } + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[newOffset >> 2] = tempI64[0], HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_seek() { + return _fd_seek.apply(null, arguments) +} + +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno + } +} + +function ___wasi_fd_write() { + return _fd_write.apply(null, arguments) +} + +function __emscripten_fetch_free(id) { + delete Fetch.xhrs[id - 1] +} + +function _abort() { + abort() +} + +function _clock() { + if (_clock.start === undefined) _clock.start = Date.now(); + return (Date.now() - _clock.start) * (1e6 / 1e3) | 0 +} + +function _emscripten_get_now() { + abort() +} + +function _emscripten_get_now_is_monotonic() { + return 0 || ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || typeof performance === "object" && performance && typeof performance["now"] === "function" +} + +function _clock_gettime(clk_id, tp) { + var now; + if (clk_id === 0) { + now = Date.now() + } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) { + now = _emscripten_get_now() + } else { + ___setErrNo(28); + return -1 + } + HEAP32[tp >> 2] = now / 1e3 | 0; + HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0; + return 0 +} + +function _emscripten_get_heap_size() { + return HEAP8.length +} + +function _emscripten_is_main_browser_thread() { + return !ENVIRONMENT_IS_WORKER +} + +function abortOnCannotGrowMemory(requestedSize) { + abort("Cannot enlarge memory arrays to size " + requestedSize + " bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + HEAP8.length + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") +} + +function _emscripten_resize_heap(requestedSize) { + abortOnCannotGrowMemory(requestedSize) +} +var Fetch = { + xhrs: [], + setu64: function(addr, val) { + HEAPU32[addr >> 2] = val; + HEAPU32[addr + 4 >> 2] = val / 4294967296 | 0 + }, + openDatabase: function(dbname, dbversion, onsuccess, onerror) { + try { + var openRequest = indexedDB.open(dbname, dbversion) + } catch (e) { + return onerror(e) + } + openRequest.onupgradeneeded = function(event) { + var db = event.target.result; + if (db.objectStoreNames.contains("FILES")) { + db.deleteObjectStore("FILES") + } + db.createObjectStore("FILES") + }; + openRequest.onsuccess = function(event) { + onsuccess(event.target.result) + }; + openRequest.onerror = function(error) { + onerror(error) + } + }, + staticInit: function() { + var isMainThread = typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined"; + var onsuccess = function(db) { + Fetch.dbInstance = db; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + var onerror = function() { + Fetch.dbInstance = false; + if (isMainThread) { + removeRunDependency("library_fetch_init") + } + }; + Fetch.openDatabase("emscripten_filesystem", 1, onsuccess, onerror); + if (typeof ENVIRONMENT_IS_FETCH_WORKER === "undefined" || !ENVIRONMENT_IS_FETCH_WORKER) addRunDependency("library_fetch_init") + } +}; + +function __emscripten_fetch_xhr(fetch, onsuccess, onerror, onprogress, onreadystatechange) { + var url = HEAPU32[fetch + 8 >> 2]; + if (!url) { + onerror(fetch, 0, "no url specified!"); + return + } + var url_ = UTF8ToString(url); + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + if (!requestMethod) requestMethod = "GET"; + var userData = HEAPU32[fetch_attr + 32 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var timeoutMsecs = HEAPU32[fetch_attr + 56 >> 2]; + var withCredentials = !!HEAPU32[fetch_attr + 60 >> 2]; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + var userName = HEAPU32[fetch_attr + 68 >> 2]; + var password = HEAPU32[fetch_attr + 72 >> 2]; + var requestHeaders = HEAPU32[fetch_attr + 76 >> 2]; + var overriddenMimeType = HEAPU32[fetch_attr + 80 >> 2]; + var dataPtr = HEAPU32[fetch_attr + 84 >> 2]; + var dataLength = HEAPU32[fetch_attr + 88 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var fetchAttrSynchronous = !!(fetchAttributes & 64); + var fetchAttrWaitable = !!(fetchAttributes & 128); + var userNameStr = userName ? UTF8ToString(userName) : undefined; + var passwordStr = password ? UTF8ToString(password) : undefined; + var overriddenMimeTypeStr = overriddenMimeType ? UTF8ToString(overriddenMimeType) : undefined; + var xhr = new XMLHttpRequest; + xhr.withCredentials = withCredentials; + xhr.open(requestMethod, url_, !fetchAttrSynchronous, userNameStr, passwordStr); + if (!fetchAttrSynchronous) xhr.timeout = timeoutMsecs; + xhr.url_ = url_; + assert(!fetchAttrStreamData, "streaming uses moz-chunked-arraybuffer which is no longer supported; TODO: rewrite using fetch()"); + xhr.responseType = "arraybuffer"; + if (overriddenMimeType) { + xhr.overrideMimeType(overriddenMimeTypeStr) + } + if (requestHeaders) { + for (;;) { + var key = HEAPU32[requestHeaders >> 2]; + if (!key) break; + var value = HEAPU32[requestHeaders + 4 >> 2]; + if (!value) break; + requestHeaders += 8; + var keyStr = UTF8ToString(key); + var valueStr = UTF8ToString(value); + xhr.setRequestHeader(keyStr, valueStr) + } + } + Fetch.xhrs.push(xhr); + var id = Fetch.xhrs.length; + HEAPU32[fetch + 0 >> 2] = id; + var data = dataPtr && dataLength ? HEAPU8.slice(dataPtr, dataPtr + dataLength) : null; + xhr.onload = function(e) { + var len = xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + var ptrLen = 0; + if (fetchAttrLoadToMemory && !fetchAttrStreamData) { + ptrLen = len; + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, 0); + if (len) { + Fetch.setu64(fetch + 32, len) + } + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState === 4 && xhr.status === 0) { + if (len > 0) xhr.status = 200; + else xhr.status = 404 + } + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (xhr.status >= 200 && xhr.status < 300) { + if (onsuccess) onsuccess(fetch, xhr, e) + } else { + if (onerror) onerror(fetch, xhr, e) + } + }; + xhr.onerror = function(e) { + var status = xhr.status; + if (xhr.readyState === 4 && status === 0) status = 404; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + HEAPU16[fetch + 42 >> 1] = status; + if (onerror) onerror(fetch, xhr, e) + }; + xhr.ontimeout = function(e) { + if (onerror) onerror(fetch, xhr, e) + }; + xhr.onprogress = function(e) { + var ptrLen = fetchAttrLoadToMemory && fetchAttrStreamData && xhr.response ? xhr.response.byteLength : 0; + var ptr = 0; + if (fetchAttrLoadToMemory && fetchAttrStreamData) { + ptr = _malloc(ptrLen); + HEAPU8.set(new Uint8Array(xhr.response), ptr) + } + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, ptrLen); + Fetch.setu64(fetch + 24, e.loaded - ptrLen); + Fetch.setu64(fetch + 32, e.total); + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 3 && xhr.status === 0 && e.loaded > 0) xhr.status = 200; + HEAPU16[fetch + 42 >> 1] = xhr.status; + if (xhr.statusText) stringToUTF8(xhr.statusText, fetch + 44, 64); + if (onprogress) onprogress(fetch, xhr, e) + }; + xhr.onreadystatechange = function(e) { + HEAPU16[fetch + 40 >> 1] = xhr.readyState; + if (xhr.readyState >= 2) { + HEAPU16[fetch + 42 >> 1] = xhr.status + } + if (onreadystatechange) onreadystatechange(fetch, xhr, e) + }; + try { + xhr.send(data) + } catch (e) { + if (onerror) onerror(fetch, xhr, e) + } +} + +function __emscripten_fetch_cache_data(db, fetch, data, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var destinationPath = HEAPU32[fetch_attr + 64 >> 2]; + if (!destinationPath) destinationPath = HEAPU32[fetch + 8 >> 2]; + var destinationPathStr = UTF8ToString(destinationPath); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var putRequest = packages.put(data, destinationPathStr); + putRequest.onsuccess = function(event) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, destinationPathStr) + }; + putRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 413; + stringToUTF8("Payload Too Large", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_load_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readonly"); + var packages = transaction.objectStore("FILES"); + var getRequest = packages.get(pathStr); + getRequest.onsuccess = function(event) { + if (event.target.result) { + var value = event.target.result; + var len = value.byteLength || value.length; + var ptr = _malloc(len); + HEAPU8.set(new Uint8Array(value), ptr); + HEAPU32[fetch + 12 >> 2] = ptr; + Fetch.setu64(fetch + 16, len); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, len); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + } else { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, "no data") + } + }; + getRequest.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function __emscripten_fetch_delete_cached_data(db, fetch, onsuccess, onerror) { + if (!db) { + onerror(fetch, 0, "IndexedDB not available!"); + return + } + var fetch_attr = fetch + 112; + var path = HEAPU32[fetch_attr + 64 >> 2]; + if (!path) path = HEAPU32[fetch + 8 >> 2]; + var pathStr = UTF8ToString(path); + try { + var transaction = db.transaction(["FILES"], "readwrite"); + var packages = transaction.objectStore("FILES"); + var request = packages.delete(pathStr); + request.onsuccess = function(event) { + var value = event.target.result; + HEAPU32[fetch + 12 >> 2] = 0; + Fetch.setu64(fetch + 16, 0); + Fetch.setu64(fetch + 24, 0); + Fetch.setu64(fetch + 32, 0); + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 200; + stringToUTF8("OK", fetch + 44, 64); + onsuccess(fetch, 0, value) + }; + request.onerror = function(error) { + HEAPU16[fetch + 40 >> 1] = 4; + HEAPU16[fetch + 42 >> 1] = 404; + stringToUTF8("Not Found", fetch + 44, 64); + onerror(fetch, 0, error) + } + } catch (e) { + onerror(fetch, 0, e) + } +} + +function _emscripten_start_fetch(fetch, successcb, errorcb, progresscb, readystatechangecb) { + if (typeof noExitRuntime !== "undefined") noExitRuntime = true; + var fetch_attr = fetch + 112; + var requestMethod = UTF8ToString(fetch_attr); + var onsuccess = HEAPU32[fetch_attr + 36 >> 2]; + var onerror = HEAPU32[fetch_attr + 40 >> 2]; + var onprogress = HEAPU32[fetch_attr + 44 >> 2]; + var onreadystatechange = HEAPU32[fetch_attr + 48 >> 2]; + var fetchAttributes = HEAPU32[fetch_attr + 52 >> 2]; + var fetchAttrLoadToMemory = !!(fetchAttributes & 1); + var fetchAttrStreamData = !!(fetchAttributes & 2); + var fetchAttrPersistFile = !!(fetchAttributes & 4); + var fetchAttrNoDownload = !!(fetchAttributes & 32); + var fetchAttrAppend = !!(fetchAttributes & 8); + var fetchAttrReplace = !!(fetchAttributes & 16); + var reportSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var reportProgress = function(fetch, xhr, e) { + if (onprogress) dynCall_vi(onprogress, fetch); + else if (progresscb) progresscb(fetch) + }; + var reportError = function(fetch, xhr, e) { + if (onerror) dynCall_vi(onerror, fetch); + else if (errorcb) errorcb(fetch) + }; + var reportReadyStateChange = function(fetch, xhr, e) { + if (onreadystatechange) dynCall_vi(onreadystatechange, fetch); + else if (readystatechangecb) readystatechangecb(fetch) + }; + var performUncachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, reportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + var cacheResultAndReportSuccess = function(fetch, xhr, e) { + var storeSuccess = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + var storeError = function(fetch, xhr, e) { + if (onsuccess) dynCall_vi(onsuccess, fetch); + else if (successcb) successcb(fetch) + }; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, xhr.response, storeSuccess, storeError) + }; + var performCachedXhr = function(fetch, xhr, e) { + __emscripten_fetch_xhr(fetch, cacheResultAndReportSuccess, reportError, reportProgress, reportReadyStateChange) + }; + if (requestMethod === "EM_IDB_STORE") { + var ptr = HEAPU32[fetch_attr + 84 >> 2]; + __emscripten_fetch_cache_data(Fetch.dbInstance, fetch, HEAPU8.slice(ptr, ptr + HEAPU32[fetch_attr + 88 >> 2]), reportSuccess, reportError) + } else if (requestMethod === "EM_IDB_DELETE") { + __emscripten_fetch_delete_cached_data(Fetch.dbInstance, fetch, reportSuccess, reportError) + } else if (!fetchAttrReplace) { + __emscripten_fetch_load_cached_data(Fetch.dbInstance, fetch, reportSuccess, fetchAttrNoDownload ? reportError : fetchAttrPersistFile ? performCachedXhr : performUncachedXhr) + } else if (!fetchAttrNoDownload) { + __emscripten_fetch_xhr(fetch, fetchAttrPersistFile ? cacheResultAndReportSuccess : reportSuccess, reportError, reportProgress, reportReadyStateChange) + } else { + return 0 + } + return fetch +} +var _fabs = Math_abs; + +function _getenv(name) { + if (name === 0) return 0; + name = UTF8ToString(name); + if (!ENV.hasOwnProperty(name)) return 0; + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocateUTF8(ENV[name]); + return _getenv.ret +} + +function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[ptr >> 2] = now / 1e3 | 0; + HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0; + return 0 +} +var ___tm_timezone = (stringToUTF8("GMT", 1397888, 4), 1397888); + +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + HEAP32[tmPtr + 36 >> 2] = 0; + HEAP32[tmPtr + 32 >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 40 >> 2] = ___tm_timezone; + return tmPtr +} + +function _llvm_exp2_f32(x) { + return Math.pow(2, x) +} + +function _llvm_exp2_f64(a0) { + return _llvm_exp2_f32(a0) +} + +function _llvm_log2_f32(x) { + return Math.log(x) / Math.LN2 +} + +function _llvm_stackrestore(p) { + var self = _llvm_stacksave; + var ret = self.LLVM_SAVEDSTACKS[p]; + self.LLVM_SAVEDSTACKS.splice(p, 1); + stackRestore(ret) +} + +function _llvm_stacksave() { + var self = _llvm_stacksave; + if (!self.LLVM_SAVEDSTACKS) { + self.LLVM_SAVEDSTACKS = [] + } + self.LLVM_SAVEDSTACKS.push(stackSave()); + return self.LLVM_SAVEDSTACKS.length - 1 +} +var _llvm_trunc_f64 = Math_trunc; + +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60; + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL); + if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr + } +} + +function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var start = new Date(date.getFullYear(), 0, 1); + var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var summerOffset = new Date(date.getFullYear(), 6, 1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst; + var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2]; + HEAP32[tmPtr + 40 >> 2] = zonePtr; + return tmPtr +} + +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src + num), dest) +} + +function _usleep(useconds) { + var msec = useconds / 1e3; + if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) { + var start = self["performance"]["now"](); + while (self["performance"]["now"]() - start < msec) {} + } else { + var start = Date.now(); + while (Date.now() - start < msec) {} + } + return 0 +} +Module["_usleep"] = _usleep; + +function _nanosleep(rqtp, rmtp) { + if (rqtp === 0) { + ___setErrNo(28); + return -1 + } + var seconds = HEAP32[rqtp >> 2]; + var nanoseconds = HEAP32[rqtp + 4 >> 2]; + if (nanoseconds < 0 || nanoseconds > 999999999 || seconds < 0) { + ___setErrNo(28); + return -1 + } + if (rmtp !== 0) { + HEAP32[rmtp >> 2] = 0; + HEAP32[rmtp + 4 >> 2] = 0 + } + return _usleep(seconds * 1e6 + nanoseconds / 1e3) +} + +function _pthread_cond_destroy() { + return 0 +} + +function _pthread_cond_init() { + return 0 +} + +function _pthread_create() { + return 6 +} + +function _pthread_join() {} + +function __isLeapYear(year) { + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) +} + +function __arraySum(array, index) { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]); + return sum +} +var __MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var __MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +function __addDays(date, days) { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = __isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} + +function _strftime(s, maxsize, format, tm) { + var tm_zone = HEAP32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + + function leadingSomething(value, digits, character) { + var str = typeof value === "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1, 11, 29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(), 0, 3); + case 3: + return new Date(janFourth.getFullYear(), 0, 2); + case 4: + return new Date(janFourth.getFullYear(), 0, 1); + case 5: + return new Date(janFourth.getFullYear() - 1, 11, 31); + case 6: + return new Date(janFourth.getFullYear() - 1, 11, 30) + } + } + + function getWeekBasedYear(date) { + var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } else { + return thisDate.getFullYear() + } + } else { + return thisDate.getFullYear() - 1 + } + } + var EXPANSION_RULES_2 = { + "%a": function(date) { + return WEEKDAYS[date.tm_wday].substring(0, 3) + }, + "%A": function(date) { + return WEEKDAYS[date.tm_wday] + }, + "%b": function(date) { + return MONTHS[date.tm_mon].substring(0, 3) + }, + "%B": function(date) { + return MONTHS[date.tm_mon] + }, + "%C": function(date) { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + }, + "%d": function(date) { + return leadingNulls(date.tm_mday, 2) + }, + "%e": function(date) { + return leadingSomething(date.tm_mday, 2, " ") + }, + "%g": function(date) { + return getWeekBasedYear(date).toString().substring(2) + }, + "%G": function(date) { + return getWeekBasedYear(date) + }, + "%H": function(date) { + return leadingNulls(date.tm_hour, 2) + }, + "%I": function(date) { + var twelveHour = date.tm_hour; + if (twelveHour == 0) twelveHour = 12; + else if (twelveHour > 12) twelveHour -= 12; + return leadingNulls(twelveHour, 2) + }, + "%j": function(date) { + return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3) + }, + "%m": function(date) { + return leadingNulls(date.tm_mon + 1, 2) + }, + "%M": function(date) { + return leadingNulls(date.tm_min, 2) + }, + "%n": function() { + return "\n" + }, + "%p": function(date) { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } else { + return "PM" + } + }, + "%S": function(date) { + return leadingNulls(date.tm_sec, 2) + }, + "%t": function() { + return "\t" + }, + "%u": function(date) { + return date.tm_wday || 7 + }, + "%U": function(date) { + var janFirst = new Date(date.tm_year + 1900, 0, 1); + var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay()); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstSunday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstSundayUntilEndJanuary = 31 - firstSunday.getDate(); + var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00" + }, + "%V": function(date) { + var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4); + var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday); + if (compareByDay(endDate, firstWeekStartThisYear) < 0) { + return "53" + } + if (compareByDay(firstWeekStartNextYear, endDate) <= 0) { + return "01" + } + var daysDifference; + if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) { + daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate() + } else { + daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate() + } + return leadingNulls(Math.ceil(daysDifference / 7), 2) + }, + "%w": function(date) { + return date.tm_wday + }, + "%W": function(date) { + var janFirst = new Date(date.tm_year, 0, 1); + var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1); + var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday); + if (compareByDay(firstMonday, endDate) < 0) { + var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31; + var firstMondayUntilEndJanuary = 31 - firstMonday.getDate(); + var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate(); + return leadingNulls(Math.ceil(days / 7), 2) + } + return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00" + }, + "%y": function(date) { + return (date.tm_year + 1900).toString().substring(2) + }, + "%Y": function(date) { + return date.tm_year + 1900 + }, + "%z": function(date) { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + }, + "%Z": function(date) { + return date.tm_zone + }, + "%%": function() { + return "%" + } + }; + for (var rule in EXPANSION_RULES_2) { + if (pattern.indexOf(rule) >= 0) { + pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date)) + } + } + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} + +function _sysconf(name) { + switch (name) { + case 30: + return PAGE_SIZE; + case 85: + var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536; + maxHeapSize = HEAPU8.length; + return maxHeapSize / PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 79: + return 0; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: { + if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1; + return 1 + } + } + ___setErrNo(28); + return -1 +} + +function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret + } + return ret +} +FS.staticInit(); +if (ENVIRONMENT_HAS_NODE) { + var fs = require("fs"); + var NODEJS_PATH = require("path"); + NODEFS.staticInit() +} +if (ENVIRONMENT_IS_NODE) { + _emscripten_get_now = function _emscripten_get_now_actual() { + var t = process["hrtime"](); + return t[0] * 1e3 + t[1] / 1e6 + } +} else if (typeof dateNow !== "undefined") { + _emscripten_get_now = dateNow +} else if (typeof performance === "object" && performance && typeof performance["now"] === "function") { + _emscripten_get_now = function() { + return performance["now"]() + } +} else { + _emscripten_get_now = Date.now +} +Fetch.staticInit(); + +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array +} +var debug_table_dd = [0, "jsCall_dd_0", "jsCall_dd_1", "jsCall_dd_2", "jsCall_dd_3", "jsCall_dd_4", "jsCall_dd_5", "jsCall_dd_6", "jsCall_dd_7", "jsCall_dd_8", "jsCall_dd_9", "jsCall_dd_10", "jsCall_dd_11", "jsCall_dd_12", "jsCall_dd_13", "jsCall_dd_14", "jsCall_dd_15", "jsCall_dd_16", "jsCall_dd_17", "jsCall_dd_18", "jsCall_dd_19", "jsCall_dd_20", "jsCall_dd_21", "jsCall_dd_22", "jsCall_dd_23", "jsCall_dd_24", "jsCall_dd_25", "jsCall_dd_26", "jsCall_dd_27", "jsCall_dd_28", "jsCall_dd_29", "jsCall_dd_30", "jsCall_dd_31", "jsCall_dd_32", "jsCall_dd_33", "jsCall_dd_34", "jsCall_dd_35", "jsCall_dd_36", "jsCall_dd_37", "jsCall_dd_38", "jsCall_dd_39", "jsCall_dd_40", "jsCall_dd_41", "jsCall_dd_42", "jsCall_dd_43", "jsCall_dd_44", "jsCall_dd_45", "jsCall_dd_46", "jsCall_dd_47", "jsCall_dd_48", "jsCall_dd_49", "jsCall_dd_50", "jsCall_dd_51", "jsCall_dd_52", "jsCall_dd_53", "jsCall_dd_54", "jsCall_dd_55", "jsCall_dd_56", "jsCall_dd_57", "jsCall_dd_58", "jsCall_dd_59", "jsCall_dd_60", "jsCall_dd_61", "jsCall_dd_62", "jsCall_dd_63", "jsCall_dd_64", "jsCall_dd_65", "jsCall_dd_66", "jsCall_dd_67", "jsCall_dd_68", "jsCall_dd_69", "jsCall_dd_70", "jsCall_dd_71", "jsCall_dd_72", "jsCall_dd_73", "jsCall_dd_74", "jsCall_dd_75", "jsCall_dd_76", "jsCall_dd_77", "jsCall_dd_78", "jsCall_dd_79", "jsCall_dd_80", "jsCall_dd_81", "jsCall_dd_82", "jsCall_dd_83", "jsCall_dd_84", "jsCall_dd_85", "jsCall_dd_86", "jsCall_dd_87", "jsCall_dd_88", "jsCall_dd_89", "jsCall_dd_90", "jsCall_dd_91", "jsCall_dd_92", "jsCall_dd_93", "jsCall_dd_94", "jsCall_dd_95", "jsCall_dd_96", "jsCall_dd_97", "jsCall_dd_98", "jsCall_dd_99", "_sinh", "_cosh", "_tanh", "_sin", "_cos", "_tan", "_atan", "_asin", "_acos", "_exp", "_log", "_fabs", "_etime", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_did = [0, "jsCall_did_0", "jsCall_did_1", "jsCall_did_2", "jsCall_did_3", "jsCall_did_4", "jsCall_did_5", "jsCall_did_6", "jsCall_did_7", "jsCall_did_8", "jsCall_did_9", "jsCall_did_10", "jsCall_did_11", "jsCall_did_12", "jsCall_did_13", "jsCall_did_14", "jsCall_did_15", "jsCall_did_16", "jsCall_did_17", "jsCall_did_18", "jsCall_did_19", "jsCall_did_20", "jsCall_did_21", "jsCall_did_22", "jsCall_did_23", "jsCall_did_24", "jsCall_did_25", "jsCall_did_26", "jsCall_did_27", "jsCall_did_28", "jsCall_did_29", "jsCall_did_30", "jsCall_did_31", "jsCall_did_32", "jsCall_did_33", "jsCall_did_34", "jsCall_did_35", "jsCall_did_36", "jsCall_did_37", "jsCall_did_38", "jsCall_did_39", "jsCall_did_40", "jsCall_did_41", "jsCall_did_42", "jsCall_did_43", "jsCall_did_44", "jsCall_did_45", "jsCall_did_46", "jsCall_did_47", "jsCall_did_48", "jsCall_did_49", "jsCall_did_50", "jsCall_did_51", "jsCall_did_52", "jsCall_did_53", "jsCall_did_54", "jsCall_did_55", "jsCall_did_56", "jsCall_did_57", "jsCall_did_58", "jsCall_did_59", "jsCall_did_60", "jsCall_did_61", "jsCall_did_62", "jsCall_did_63", "jsCall_did_64", "jsCall_did_65", "jsCall_did_66", "jsCall_did_67", "jsCall_did_68", "jsCall_did_69", "jsCall_did_70", "jsCall_did_71", "jsCall_did_72", "jsCall_did_73", "jsCall_did_74", "jsCall_did_75", "jsCall_did_76", "jsCall_did_77", "jsCall_did_78", "jsCall_did_79", "jsCall_did_80", "jsCall_did_81", "jsCall_did_82", "jsCall_did_83", "jsCall_did_84", "jsCall_did_85", "jsCall_did_86", "jsCall_did_87", "jsCall_did_88", "jsCall_did_89", "jsCall_did_90", "jsCall_did_91", "jsCall_did_92", "jsCall_did_93", "jsCall_did_94", "jsCall_did_95", "jsCall_did_96", "jsCall_did_97", "jsCall_did_98", "jsCall_did_99", 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]; +var debug_table_didd = [0, "jsCall_didd_0", "jsCall_didd_1", "jsCall_didd_2", "jsCall_didd_3", "jsCall_didd_4", "jsCall_didd_5", "jsCall_didd_6", "jsCall_didd_7", "jsCall_didd_8", "jsCall_didd_9", "jsCall_didd_10", "jsCall_didd_11", "jsCall_didd_12", "jsCall_didd_13", "jsCall_didd_14", "jsCall_didd_15", "jsCall_didd_16", "jsCall_didd_17", "jsCall_didd_18", "jsCall_didd_19", "jsCall_didd_20", "jsCall_didd_21", "jsCall_didd_22", "jsCall_didd_23", "jsCall_didd_24", "jsCall_didd_25", "jsCall_didd_26", "jsCall_didd_27", "jsCall_didd_28", "jsCall_didd_29", "jsCall_didd_30", "jsCall_didd_31", "jsCall_didd_32", "jsCall_didd_33", "jsCall_didd_34", "jsCall_didd_35", "jsCall_didd_36", "jsCall_didd_37", "jsCall_didd_38", "jsCall_didd_39", "jsCall_didd_40", "jsCall_didd_41", "jsCall_didd_42", "jsCall_didd_43", "jsCall_didd_44", "jsCall_didd_45", "jsCall_didd_46", "jsCall_didd_47", "jsCall_didd_48", "jsCall_didd_49", "jsCall_didd_50", "jsCall_didd_51", "jsCall_didd_52", "jsCall_didd_53", "jsCall_didd_54", "jsCall_didd_55", "jsCall_didd_56", "jsCall_didd_57", "jsCall_didd_58", "jsCall_didd_59", "jsCall_didd_60", "jsCall_didd_61", "jsCall_didd_62", "jsCall_didd_63", "jsCall_didd_64", "jsCall_didd_65", "jsCall_didd_66", "jsCall_didd_67", "jsCall_didd_68", "jsCall_didd_69", "jsCall_didd_70", "jsCall_didd_71", "jsCall_didd_72", "jsCall_didd_73", "jsCall_didd_74", "jsCall_didd_75", "jsCall_didd_76", "jsCall_didd_77", "jsCall_didd_78", "jsCall_didd_79", "jsCall_didd_80", "jsCall_didd_81", "jsCall_didd_82", "jsCall_didd_83", "jsCall_didd_84", "jsCall_didd_85", "jsCall_didd_86", "jsCall_didd_87", "jsCall_didd_88", "jsCall_didd_89", "jsCall_didd_90", "jsCall_didd_91", "jsCall_didd_92", "jsCall_didd_93", "jsCall_didd_94", "jsCall_didd_95", "jsCall_didd_96", "jsCall_didd_97", "jsCall_didd_98", "jsCall_didd_99", 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]; +var debug_table_fii = [0, "jsCall_fii_0", "jsCall_fii_1", "jsCall_fii_2", "jsCall_fii_3", "jsCall_fii_4", "jsCall_fii_5", "jsCall_fii_6", "jsCall_fii_7", "jsCall_fii_8", "jsCall_fii_9", "jsCall_fii_10", "jsCall_fii_11", "jsCall_fii_12", "jsCall_fii_13", "jsCall_fii_14", "jsCall_fii_15", "jsCall_fii_16", "jsCall_fii_17", "jsCall_fii_18", "jsCall_fii_19", "jsCall_fii_20", "jsCall_fii_21", "jsCall_fii_22", "jsCall_fii_23", "jsCall_fii_24", "jsCall_fii_25", "jsCall_fii_26", "jsCall_fii_27", "jsCall_fii_28", "jsCall_fii_29", "jsCall_fii_30", "jsCall_fii_31", "jsCall_fii_32", "jsCall_fii_33", "jsCall_fii_34", "jsCall_fii_35", "jsCall_fii_36", "jsCall_fii_37", "jsCall_fii_38", "jsCall_fii_39", "jsCall_fii_40", "jsCall_fii_41", "jsCall_fii_42", "jsCall_fii_43", "jsCall_fii_44", "jsCall_fii_45", "jsCall_fii_46", "jsCall_fii_47", "jsCall_fii_48", "jsCall_fii_49", "jsCall_fii_50", "jsCall_fii_51", "jsCall_fii_52", "jsCall_fii_53", "jsCall_fii_54", "jsCall_fii_55", "jsCall_fii_56", "jsCall_fii_57", "jsCall_fii_58", "jsCall_fii_59", "jsCall_fii_60", "jsCall_fii_61", "jsCall_fii_62", "jsCall_fii_63", "jsCall_fii_64", "jsCall_fii_65", "jsCall_fii_66", "jsCall_fii_67", "jsCall_fii_68", "jsCall_fii_69", "jsCall_fii_70", "jsCall_fii_71", "jsCall_fii_72", "jsCall_fii_73", "jsCall_fii_74", "jsCall_fii_75", "jsCall_fii_76", "jsCall_fii_77", "jsCall_fii_78", "jsCall_fii_79", "jsCall_fii_80", "jsCall_fii_81", "jsCall_fii_82", "jsCall_fii_83", "jsCall_fii_84", "jsCall_fii_85", "jsCall_fii_86", "jsCall_fii_87", "jsCall_fii_88", "jsCall_fii_89", "jsCall_fii_90", "jsCall_fii_91", "jsCall_fii_92", "jsCall_fii_93", "jsCall_fii_94", "jsCall_fii_95", "jsCall_fii_96", "jsCall_fii_97", "jsCall_fii_98", "jsCall_fii_99", "_sbr_sum_square_c", 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]; +var debug_table_fiii = [0, "jsCall_fiii_0", "jsCall_fiii_1", "jsCall_fiii_2", "jsCall_fiii_3", "jsCall_fiii_4", "jsCall_fiii_5", "jsCall_fiii_6", "jsCall_fiii_7", "jsCall_fiii_8", "jsCall_fiii_9", "jsCall_fiii_10", "jsCall_fiii_11", "jsCall_fiii_12", "jsCall_fiii_13", "jsCall_fiii_14", "jsCall_fiii_15", "jsCall_fiii_16", "jsCall_fiii_17", "jsCall_fiii_18", "jsCall_fiii_19", "jsCall_fiii_20", "jsCall_fiii_21", "jsCall_fiii_22", "jsCall_fiii_23", "jsCall_fiii_24", "jsCall_fiii_25", "jsCall_fiii_26", "jsCall_fiii_27", "jsCall_fiii_28", "jsCall_fiii_29", "jsCall_fiii_30", "jsCall_fiii_31", "jsCall_fiii_32", "jsCall_fiii_33", "jsCall_fiii_34", "jsCall_fiii_35", "jsCall_fiii_36", "jsCall_fiii_37", "jsCall_fiii_38", "jsCall_fiii_39", "jsCall_fiii_40", "jsCall_fiii_41", "jsCall_fiii_42", "jsCall_fiii_43", "jsCall_fiii_44", "jsCall_fiii_45", "jsCall_fiii_46", "jsCall_fiii_47", "jsCall_fiii_48", "jsCall_fiii_49", "jsCall_fiii_50", "jsCall_fiii_51", "jsCall_fiii_52", "jsCall_fiii_53", "jsCall_fiii_54", "jsCall_fiii_55", "jsCall_fiii_56", "jsCall_fiii_57", "jsCall_fiii_58", "jsCall_fiii_59", "jsCall_fiii_60", "jsCall_fiii_61", "jsCall_fiii_62", "jsCall_fiii_63", "jsCall_fiii_64", "jsCall_fiii_65", "jsCall_fiii_66", "jsCall_fiii_67", "jsCall_fiii_68", "jsCall_fiii_69", "jsCall_fiii_70", "jsCall_fiii_71", "jsCall_fiii_72", "jsCall_fiii_73", "jsCall_fiii_74", "jsCall_fiii_75", "jsCall_fiii_76", "jsCall_fiii_77", "jsCall_fiii_78", "jsCall_fiii_79", "jsCall_fiii_80", "jsCall_fiii_81", "jsCall_fiii_82", "jsCall_fiii_83", "jsCall_fiii_84", "jsCall_fiii_85", "jsCall_fiii_86", "jsCall_fiii_87", "jsCall_fiii_88", "jsCall_fiii_89", "jsCall_fiii_90", "jsCall_fiii_91", "jsCall_fiii_92", "jsCall_fiii_93", "jsCall_fiii_94", "jsCall_fiii_95", "jsCall_fiii_96", "jsCall_fiii_97", "jsCall_fiii_98", "jsCall_fiii_99", "_avpriv_scalarproduct_float_c", 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]; +var debug_table_ii = [0, "jsCall_ii_0", "jsCall_ii_1", "jsCall_ii_2", "jsCall_ii_3", "jsCall_ii_4", "jsCall_ii_5", "jsCall_ii_6", "jsCall_ii_7", "jsCall_ii_8", "jsCall_ii_9", "jsCall_ii_10", "jsCall_ii_11", "jsCall_ii_12", "jsCall_ii_13", "jsCall_ii_14", "jsCall_ii_15", "jsCall_ii_16", "jsCall_ii_17", "jsCall_ii_18", "jsCall_ii_19", "jsCall_ii_20", "jsCall_ii_21", "jsCall_ii_22", "jsCall_ii_23", "jsCall_ii_24", "jsCall_ii_25", "jsCall_ii_26", "jsCall_ii_27", "jsCall_ii_28", "jsCall_ii_29", "jsCall_ii_30", "jsCall_ii_31", "jsCall_ii_32", "jsCall_ii_33", "jsCall_ii_34", "jsCall_ii_35", "jsCall_ii_36", "jsCall_ii_37", "jsCall_ii_38", "jsCall_ii_39", "jsCall_ii_40", "jsCall_ii_41", "jsCall_ii_42", "jsCall_ii_43", "jsCall_ii_44", "jsCall_ii_45", "jsCall_ii_46", "jsCall_ii_47", "jsCall_ii_48", "jsCall_ii_49", "jsCall_ii_50", "jsCall_ii_51", "jsCall_ii_52", "jsCall_ii_53", "jsCall_ii_54", "jsCall_ii_55", "jsCall_ii_56", "jsCall_ii_57", "jsCall_ii_58", "jsCall_ii_59", "jsCall_ii_60", "jsCall_ii_61", "jsCall_ii_62", "jsCall_ii_63", "jsCall_ii_64", "jsCall_ii_65", "jsCall_ii_66", "jsCall_ii_67", "jsCall_ii_68", "jsCall_ii_69", "jsCall_ii_70", "jsCall_ii_71", "jsCall_ii_72", "jsCall_ii_73", "jsCall_ii_74", "jsCall_ii_75", "jsCall_ii_76", "jsCall_ii_77", "jsCall_ii_78", "jsCall_ii_79", "jsCall_ii_80", "jsCall_ii_81", "jsCall_ii_82", "jsCall_ii_83", "jsCall_ii_84", "jsCall_ii_85", "jsCall_ii_86", "jsCall_ii_87", "jsCall_ii_88", "jsCall_ii_89", "jsCall_ii_90", "jsCall_ii_91", "jsCall_ii_92", "jsCall_ii_93", "jsCall_ii_94", "jsCall_ii_95", "jsCall_ii_96", "jsCall_ii_97", "jsCall_ii_98", "jsCall_ii_99", "_avi_probe", "_avi_read_header", "_avi_read_close", "_av_default_item_name", "_ff_avio_child_class_next", "_flv_probe", "_flv_read_header", "_flv_read_close", "_live_flv_probe", "_h264_probe", "_ff_raw_video_read_header", "_hevc_probe", "_mpeg4video_probe", "_matroska_probe", "_matroska_read_header", "_matroska_read_close", "_mov_probe", "_mov_read_header", "_mov_read_close", "_mp3_read_probe", "_mp3_read_header", "_mpegps_probe", "_mpegps_read_header", "_mpegts_probe", "_mpegts_read_header", "_mpegts_read_close", "_mpegvideo_probe", "_format_to_name", "_format_child_class_next", "_get_category", "_pcm_read_header", "_urlcontext_to_name", "_ff_urlcontext_child_class_next", "_sws_context_to_name", "_ff_bsf_child_class_next", "_hevc_mp4toannexb_init", "_hevc_init_thread_copy", "_hevc_decode_init", "_hevc_decode_free", "_decode_init", "_context_to_name", "_codec_child_class_next", "_get_category_2919", "_pcm_decode_init", "_pcm_decode_close", "_aac_decode_init", "_aac_decode_close", "_init", "_context_to_name_6206", "_resample_flush", "___stdio_close", "___emscripten_stdout_close", "_releaseSniffStreamFunc", "_naluLListLengthFunc", "_hflv_releaseFunc", "_hflv_getBufferLength", "_g711_releaseFunc", "_g711_decodeVideoFrameFunc", "_g711_getBufferLength", "_initializeDecoderFunc", "__getFrame", "_closeVideoFunc", "_releaseFunc", "_initializeDemuxerFunc", "_getPacketFunc", "_releaseDemuxerFunc", "_io_short_seek", "_avio_rb16", "_avio_rl16", "_av_buffer_allocz", "_frame_worker_thread", "_av_buffer_alloc", "_thread_worker", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iid = [0, "jsCall_iid_0", "jsCall_iid_1", "jsCall_iid_2", "jsCall_iid_3", "jsCall_iid_4", "jsCall_iid_5", "jsCall_iid_6", "jsCall_iid_7", "jsCall_iid_8", "jsCall_iid_9", "jsCall_iid_10", "jsCall_iid_11", "jsCall_iid_12", "jsCall_iid_13", "jsCall_iid_14", "jsCall_iid_15", "jsCall_iid_16", "jsCall_iid_17", "jsCall_iid_18", "jsCall_iid_19", "jsCall_iid_20", "jsCall_iid_21", "jsCall_iid_22", "jsCall_iid_23", "jsCall_iid_24", "jsCall_iid_25", "jsCall_iid_26", "jsCall_iid_27", "jsCall_iid_28", "jsCall_iid_29", "jsCall_iid_30", "jsCall_iid_31", "jsCall_iid_32", "jsCall_iid_33", "jsCall_iid_34", "jsCall_iid_35", "jsCall_iid_36", "jsCall_iid_37", "jsCall_iid_38", "jsCall_iid_39", "jsCall_iid_40", "jsCall_iid_41", "jsCall_iid_42", "jsCall_iid_43", "jsCall_iid_44", "jsCall_iid_45", "jsCall_iid_46", "jsCall_iid_47", "jsCall_iid_48", "jsCall_iid_49", "jsCall_iid_50", "jsCall_iid_51", "jsCall_iid_52", "jsCall_iid_53", "jsCall_iid_54", "jsCall_iid_55", "jsCall_iid_56", "jsCall_iid_57", "jsCall_iid_58", "jsCall_iid_59", "jsCall_iid_60", "jsCall_iid_61", "jsCall_iid_62", "jsCall_iid_63", "jsCall_iid_64", "jsCall_iid_65", "jsCall_iid_66", "jsCall_iid_67", "jsCall_iid_68", "jsCall_iid_69", "jsCall_iid_70", "jsCall_iid_71", "jsCall_iid_72", "jsCall_iid_73", "jsCall_iid_74", "jsCall_iid_75", "jsCall_iid_76", "jsCall_iid_77", "jsCall_iid_78", "jsCall_iid_79", "jsCall_iid_80", "jsCall_iid_81", "jsCall_iid_82", "jsCall_iid_83", "jsCall_iid_84", "jsCall_iid_85", "jsCall_iid_86", "jsCall_iid_87", "jsCall_iid_88", "jsCall_iid_89", "jsCall_iid_90", "jsCall_iid_91", "jsCall_iid_92", "jsCall_iid_93", "jsCall_iid_94", "jsCall_iid_95", "jsCall_iid_96", "jsCall_iid_97", "jsCall_iid_98", "jsCall_iid_99", "_seekBufferFunc", 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]; +var debug_table_iidiiii = [0, "jsCall_iidiiii_0", "jsCall_iidiiii_1", "jsCall_iidiiii_2", "jsCall_iidiiii_3", "jsCall_iidiiii_4", "jsCall_iidiiii_5", "jsCall_iidiiii_6", "jsCall_iidiiii_7", "jsCall_iidiiii_8", "jsCall_iidiiii_9", "jsCall_iidiiii_10", "jsCall_iidiiii_11", "jsCall_iidiiii_12", "jsCall_iidiiii_13", "jsCall_iidiiii_14", "jsCall_iidiiii_15", "jsCall_iidiiii_16", "jsCall_iidiiii_17", "jsCall_iidiiii_18", "jsCall_iidiiii_19", "jsCall_iidiiii_20", "jsCall_iidiiii_21", "jsCall_iidiiii_22", "jsCall_iidiiii_23", "jsCall_iidiiii_24", "jsCall_iidiiii_25", "jsCall_iidiiii_26", "jsCall_iidiiii_27", "jsCall_iidiiii_28", "jsCall_iidiiii_29", "jsCall_iidiiii_30", "jsCall_iidiiii_31", "jsCall_iidiiii_32", "jsCall_iidiiii_33", "jsCall_iidiiii_34", "jsCall_iidiiii_35", "jsCall_iidiiii_36", "jsCall_iidiiii_37", "jsCall_iidiiii_38", "jsCall_iidiiii_39", "jsCall_iidiiii_40", "jsCall_iidiiii_41", "jsCall_iidiiii_42", "jsCall_iidiiii_43", "jsCall_iidiiii_44", "jsCall_iidiiii_45", "jsCall_iidiiii_46", "jsCall_iidiiii_47", "jsCall_iidiiii_48", "jsCall_iidiiii_49", "jsCall_iidiiii_50", "jsCall_iidiiii_51", "jsCall_iidiiii_52", "jsCall_iidiiii_53", "jsCall_iidiiii_54", "jsCall_iidiiii_55", "jsCall_iidiiii_56", "jsCall_iidiiii_57", "jsCall_iidiiii_58", "jsCall_iidiiii_59", "jsCall_iidiiii_60", "jsCall_iidiiii_61", "jsCall_iidiiii_62", "jsCall_iidiiii_63", "jsCall_iidiiii_64", "jsCall_iidiiii_65", "jsCall_iidiiii_66", "jsCall_iidiiii_67", "jsCall_iidiiii_68", "jsCall_iidiiii_69", "jsCall_iidiiii_70", "jsCall_iidiiii_71", "jsCall_iidiiii_72", "jsCall_iidiiii_73", "jsCall_iidiiii_74", "jsCall_iidiiii_75", "jsCall_iidiiii_76", "jsCall_iidiiii_77", "jsCall_iidiiii_78", "jsCall_iidiiii_79", "jsCall_iidiiii_80", "jsCall_iidiiii_81", "jsCall_iidiiii_82", "jsCall_iidiiii_83", "jsCall_iidiiii_84", "jsCall_iidiiii_85", "jsCall_iidiiii_86", "jsCall_iidiiii_87", "jsCall_iidiiii_88", "jsCall_iidiiii_89", "jsCall_iidiiii_90", "jsCall_iidiiii_91", "jsCall_iidiiii_92", "jsCall_iidiiii_93", "jsCall_iidiiii_94", "jsCall_iidiiii_95", "jsCall_iidiiii_96", "jsCall_iidiiii_97", "jsCall_iidiiii_98", "jsCall_iidiiii_99", "_fmt_fp", 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]; +var debug_table_iii = [0, "jsCall_iii_0", "jsCall_iii_1", "jsCall_iii_2", "jsCall_iii_3", "jsCall_iii_4", "jsCall_iii_5", "jsCall_iii_6", "jsCall_iii_7", "jsCall_iii_8", "jsCall_iii_9", "jsCall_iii_10", "jsCall_iii_11", "jsCall_iii_12", "jsCall_iii_13", "jsCall_iii_14", "jsCall_iii_15", "jsCall_iii_16", "jsCall_iii_17", "jsCall_iii_18", "jsCall_iii_19", "jsCall_iii_20", "jsCall_iii_21", "jsCall_iii_22", "jsCall_iii_23", "jsCall_iii_24", "jsCall_iii_25", "jsCall_iii_26", "jsCall_iii_27", "jsCall_iii_28", "jsCall_iii_29", "jsCall_iii_30", "jsCall_iii_31", "jsCall_iii_32", "jsCall_iii_33", "jsCall_iii_34", "jsCall_iii_35", "jsCall_iii_36", "jsCall_iii_37", "jsCall_iii_38", "jsCall_iii_39", "jsCall_iii_40", "jsCall_iii_41", "jsCall_iii_42", "jsCall_iii_43", "jsCall_iii_44", "jsCall_iii_45", "jsCall_iii_46", "jsCall_iii_47", "jsCall_iii_48", "jsCall_iii_49", "jsCall_iii_50", "jsCall_iii_51", "jsCall_iii_52", "jsCall_iii_53", "jsCall_iii_54", "jsCall_iii_55", "jsCall_iii_56", "jsCall_iii_57", "jsCall_iii_58", "jsCall_iii_59", "jsCall_iii_60", "jsCall_iii_61", "jsCall_iii_62", "jsCall_iii_63", "jsCall_iii_64", "jsCall_iii_65", "jsCall_iii_66", "jsCall_iii_67", "jsCall_iii_68", "jsCall_iii_69", "jsCall_iii_70", "jsCall_iii_71", "jsCall_iii_72", "jsCall_iii_73", "jsCall_iii_74", "jsCall_iii_75", "jsCall_iii_76", "jsCall_iii_77", "jsCall_iii_78", "jsCall_iii_79", "jsCall_iii_80", "jsCall_iii_81", "jsCall_iii_82", "jsCall_iii_83", "jsCall_iii_84", "jsCall_iii_85", "jsCall_iii_86", "jsCall_iii_87", "jsCall_iii_88", "jsCall_iii_89", "jsCall_iii_90", "jsCall_iii_91", "jsCall_iii_92", "jsCall_iii_93", "jsCall_iii_94", "jsCall_iii_95", "jsCall_iii_96", "jsCall_iii_97", "jsCall_iii_98", "jsCall_iii_99", "_avi_read_packet", "_ff_avio_child_next", "_flv_read_packet", "_ff_raw_read_partial_packet", "_matroska_read_packet", "_mov_read_packet", "_mp3_read_packet", "_mpegps_read_packet", "_mpegts_read_packet", "_mpegts_raw_read_packet", "_format_child_next", "_ff_pcm_read_packet", "_urlcontext_child_next", "_bsf_child_next", "_hevc_mp4toannexb_filter", "_hevc_update_thread_context", "_null_filter", "_codec_child_next", "_initSniffStreamFunc", "_hflv_initFunc", "_hflv_getPacketFunc", "_g711_initFunc", "_io_read_pause", "_descriptor_compare", "_hls_decode_entry", "_avcodec_default_get_format", "_ff_startcode_find_candidate_c", "_color_table_compare", 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, 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, 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, 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]; +var debug_table_iiii = [0, "jsCall_iiii_0", "jsCall_iiii_1", "jsCall_iiii_2", "jsCall_iiii_3", "jsCall_iiii_4", "jsCall_iiii_5", "jsCall_iiii_6", "jsCall_iiii_7", "jsCall_iiii_8", "jsCall_iiii_9", "jsCall_iiii_10", "jsCall_iiii_11", "jsCall_iiii_12", "jsCall_iiii_13", "jsCall_iiii_14", "jsCall_iiii_15", "jsCall_iiii_16", "jsCall_iiii_17", "jsCall_iiii_18", "jsCall_iiii_19", "jsCall_iiii_20", "jsCall_iiii_21", "jsCall_iiii_22", "jsCall_iiii_23", "jsCall_iiii_24", "jsCall_iiii_25", "jsCall_iiii_26", "jsCall_iiii_27", "jsCall_iiii_28", "jsCall_iiii_29", "jsCall_iiii_30", "jsCall_iiii_31", "jsCall_iiii_32", "jsCall_iiii_33", "jsCall_iiii_34", "jsCall_iiii_35", "jsCall_iiii_36", "jsCall_iiii_37", "jsCall_iiii_38", "jsCall_iiii_39", "jsCall_iiii_40", "jsCall_iiii_41", "jsCall_iiii_42", "jsCall_iiii_43", "jsCall_iiii_44", "jsCall_iiii_45", "jsCall_iiii_46", "jsCall_iiii_47", "jsCall_iiii_48", "jsCall_iiii_49", "jsCall_iiii_50", "jsCall_iiii_51", "jsCall_iiii_52", "jsCall_iiii_53", "jsCall_iiii_54", "jsCall_iiii_55", "jsCall_iiii_56", "jsCall_iiii_57", "jsCall_iiii_58", "jsCall_iiii_59", "jsCall_iiii_60", "jsCall_iiii_61", "jsCall_iiii_62", "jsCall_iiii_63", "jsCall_iiii_64", "jsCall_iiii_65", "jsCall_iiii_66", "jsCall_iiii_67", "jsCall_iiii_68", "jsCall_iiii_69", "jsCall_iiii_70", "jsCall_iiii_71", "jsCall_iiii_72", "jsCall_iiii_73", "jsCall_iiii_74", "jsCall_iiii_75", "jsCall_iiii_76", "jsCall_iiii_77", "jsCall_iiii_78", "jsCall_iiii_79", "jsCall_iiii_80", "jsCall_iiii_81", "jsCall_iiii_82", "jsCall_iiii_83", "jsCall_iiii_84", "jsCall_iiii_85", "jsCall_iiii_86", "jsCall_iiii_87", "jsCall_iiii_88", "jsCall_iiii_89", "jsCall_iiii_90", "jsCall_iiii_91", "jsCall_iiii_92", "jsCall_iiii_93", "jsCall_iiii_94", "jsCall_iiii_95", "jsCall_iiii_96", "jsCall_iiii_97", "jsCall_iiii_98", "jsCall_iiii_99", "_mov_read_aclr", "_mov_read_avid", "_mov_read_ares", "_mov_read_avss", "_mov_read_av1c", "_mov_read_chpl", "_mov_read_stco", "_mov_read_colr", "_mov_read_ctts", "_mov_read_default", "_mov_read_dpxe", "_mov_read_dref", "_mov_read_elst", "_mov_read_enda", "_mov_read_fiel", "_mov_read_adrm", "_mov_read_ftyp", "_mov_read_glbl", "_mov_read_hdlr", "_mov_read_ilst", "_mov_read_jp2h", "_mov_read_mdat", "_mov_read_mdhd", "_mov_read_meta", "_mov_read_moof", "_mov_read_moov", "_mov_read_mvhd", "_mov_read_svq3", "_mov_read_alac", "_mov_read_pasp", "_mov_read_sidx", "_mov_read_stps", "_mov_read_strf", "_mov_read_stsc", "_mov_read_stsd", "_mov_read_stss", "_mov_read_stsz", "_mov_read_stts", "_mov_read_tkhd", "_mov_read_tfdt", "_mov_read_tfhd", "_mov_read_trak", "_mov_read_tmcd", "_mov_read_chap", "_mov_read_trex", "_mov_read_trun", "_mov_read_wave", "_mov_read_esds", "_mov_read_dac3", "_mov_read_dec3", "_mov_read_ddts", "_mov_read_wide", "_mov_read_wfex", "_mov_read_cmov", "_mov_read_chan", "_mov_read_dvc1", "_mov_read_sbgp", "_mov_read_uuid", "_mov_read_targa_y216", "_mov_read_free", "_mov_read_custom", "_mov_read_frma", "_mov_read_senc", "_mov_read_saiz", "_mov_read_saio", "_mov_read_pssh", "_mov_read_schm", "_mov_read_tenc", "_mov_read_dfla", "_mov_read_st3d", "_mov_read_sv3d", "_mov_read_dops", "_mov_read_smdm", "_mov_read_coll", "_mov_read_vpcc", "_mov_read_mdcv", "_mov_read_clli", "_h264_split", "_hevc_split", "_set_compensation", "___stdio_write", "_sn_write", "_read_stream_live", "_read_stream_vod", "_getSniffStreamPacketFunc", "_hflv_read_stream_live", "_g711_read_stream_live", "_setCodecTypeFunc", "_read_packet", "_io_write_packet", "_io_read_packet", "_dyn_buf_write", "_mov_read_keys", "_mov_read_udta_string", "_ff_crcA001_update", "_avcodec_default_get_buffer2", "_do_read", 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, 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]; +var debug_table_iiiii = [0, "jsCall_iiiii_0", "jsCall_iiiii_1", "jsCall_iiiii_2", "jsCall_iiiii_3", "jsCall_iiiii_4", "jsCall_iiiii_5", "jsCall_iiiii_6", "jsCall_iiiii_7", "jsCall_iiiii_8", "jsCall_iiiii_9", "jsCall_iiiii_10", "jsCall_iiiii_11", "jsCall_iiiii_12", "jsCall_iiiii_13", "jsCall_iiiii_14", "jsCall_iiiii_15", "jsCall_iiiii_16", "jsCall_iiiii_17", "jsCall_iiiii_18", "jsCall_iiiii_19", "jsCall_iiiii_20", "jsCall_iiiii_21", "jsCall_iiiii_22", "jsCall_iiiii_23", "jsCall_iiiii_24", "jsCall_iiiii_25", "jsCall_iiiii_26", "jsCall_iiiii_27", "jsCall_iiiii_28", "jsCall_iiiii_29", "jsCall_iiiii_30", "jsCall_iiiii_31", "jsCall_iiiii_32", "jsCall_iiiii_33", "jsCall_iiiii_34", "jsCall_iiiii_35", "jsCall_iiiii_36", "jsCall_iiiii_37", "jsCall_iiiii_38", "jsCall_iiiii_39", "jsCall_iiiii_40", "jsCall_iiiii_41", "jsCall_iiiii_42", "jsCall_iiiii_43", "jsCall_iiiii_44", "jsCall_iiiii_45", "jsCall_iiiii_46", "jsCall_iiiii_47", "jsCall_iiiii_48", "jsCall_iiiii_49", "jsCall_iiiii_50", "jsCall_iiiii_51", "jsCall_iiiii_52", "jsCall_iiiii_53", "jsCall_iiiii_54", "jsCall_iiiii_55", "jsCall_iiiii_56", "jsCall_iiiii_57", "jsCall_iiiii_58", "jsCall_iiiii_59", "jsCall_iiiii_60", "jsCall_iiiii_61", "jsCall_iiiii_62", "jsCall_iiiii_63", "jsCall_iiiii_64", "jsCall_iiiii_65", "jsCall_iiiii_66", "jsCall_iiiii_67", "jsCall_iiiii_68", "jsCall_iiiii_69", "jsCall_iiiii_70", "jsCall_iiiii_71", "jsCall_iiiii_72", "jsCall_iiiii_73", "jsCall_iiiii_74", "jsCall_iiiii_75", "jsCall_iiiii_76", "jsCall_iiiii_77", "jsCall_iiiii_78", "jsCall_iiiii_79", "jsCall_iiiii_80", "jsCall_iiiii_81", "jsCall_iiiii_82", "jsCall_iiiii_83", "jsCall_iiiii_84", "jsCall_iiiii_85", "jsCall_iiiii_86", "jsCall_iiiii_87", "jsCall_iiiii_88", "jsCall_iiiii_89", "jsCall_iiiii_90", "jsCall_iiiii_91", "jsCall_iiiii_92", "jsCall_iiiii_93", "jsCall_iiiii_94", "jsCall_iiiii_95", "jsCall_iiiii_96", "jsCall_iiiii_97", "jsCall_iiiii_98", "jsCall_iiiii_99", "_hevc_decode_frame", "_decode_frame", "_pcm_decode_frame", "_aac_decode_frame", "_hflv_pushBufferFunc", "_g711_pushBufferFunc", "_demuxBoxFunc", "_mov_metadata_int8_no_padding", "_mov_metadata_track_or_disc_number", "_mov_metadata_gnre", "_mov_metadata_int8_bypass_padding", "_lum_planar_vscale", "_chr_planar_vscale", "_any_vscale", "_packed_vscale", "_gamma_convert", "_lum_convert", "_lum_h_scale", "_chr_convert", "_chr_h_scale", "_no_chr_scale", "_hls_decode_entry_wpp", 0, 0, 0, 0, 0]; +var debug_table_iiiiii = [0, "jsCall_iiiiii_0", "jsCall_iiiiii_1", "jsCall_iiiiii_2", "jsCall_iiiiii_3", "jsCall_iiiiii_4", "jsCall_iiiiii_5", "jsCall_iiiiii_6", "jsCall_iiiiii_7", "jsCall_iiiiii_8", "jsCall_iiiiii_9", "jsCall_iiiiii_10", "jsCall_iiiiii_11", "jsCall_iiiiii_12", "jsCall_iiiiii_13", "jsCall_iiiiii_14", "jsCall_iiiiii_15", "jsCall_iiiiii_16", "jsCall_iiiiii_17", "jsCall_iiiiii_18", "jsCall_iiiiii_19", "jsCall_iiiiii_20", "jsCall_iiiiii_21", "jsCall_iiiiii_22", "jsCall_iiiiii_23", "jsCall_iiiiii_24", "jsCall_iiiiii_25", "jsCall_iiiiii_26", "jsCall_iiiiii_27", "jsCall_iiiiii_28", "jsCall_iiiiii_29", "jsCall_iiiiii_30", "jsCall_iiiiii_31", "jsCall_iiiiii_32", "jsCall_iiiiii_33", "jsCall_iiiiii_34", "jsCall_iiiiii_35", "jsCall_iiiiii_36", "jsCall_iiiiii_37", "jsCall_iiiiii_38", "jsCall_iiiiii_39", "jsCall_iiiiii_40", "jsCall_iiiiii_41", "jsCall_iiiiii_42", "jsCall_iiiiii_43", "jsCall_iiiiii_44", "jsCall_iiiiii_45", "jsCall_iiiiii_46", "jsCall_iiiiii_47", "jsCall_iiiiii_48", "jsCall_iiiiii_49", "jsCall_iiiiii_50", "jsCall_iiiiii_51", "jsCall_iiiiii_52", "jsCall_iiiiii_53", "jsCall_iiiiii_54", "jsCall_iiiiii_55", "jsCall_iiiiii_56", "jsCall_iiiiii_57", "jsCall_iiiiii_58", "jsCall_iiiiii_59", "jsCall_iiiiii_60", "jsCall_iiiiii_61", "jsCall_iiiiii_62", "jsCall_iiiiii_63", "jsCall_iiiiii_64", "jsCall_iiiiii_65", "jsCall_iiiiii_66", "jsCall_iiiiii_67", "jsCall_iiiiii_68", "jsCall_iiiiii_69", "jsCall_iiiiii_70", "jsCall_iiiiii_71", "jsCall_iiiiii_72", "jsCall_iiiiii_73", "jsCall_iiiiii_74", "jsCall_iiiiii_75", "jsCall_iiiiii_76", "jsCall_iiiiii_77", "jsCall_iiiiii_78", "jsCall_iiiiii_79", "jsCall_iiiiii_80", "jsCall_iiiiii_81", "jsCall_iiiiii_82", "jsCall_iiiiii_83", "jsCall_iiiiii_84", "jsCall_iiiiii_85", "jsCall_iiiiii_86", "jsCall_iiiiii_87", "jsCall_iiiiii_88", "jsCall_iiiiii_89", "jsCall_iiiiii_90", "jsCall_iiiiii_91", "jsCall_iiiiii_92", "jsCall_iiiiii_93", "jsCall_iiiiii_94", "jsCall_iiiiii_95", "jsCall_iiiiii_96", "jsCall_iiiiii_97", "jsCall_iiiiii_98", "jsCall_iiiiii_99", "_pushBufferFunc", "_g711_setSniffStreamCodecTypeFunc", "_decodeCodecContextFunc", "_io_open_default", "_avcodec_default_execute2", "_thread_execute2", "_sbr_lf_gen", "_resample_common_int16", "_resample_linear_int16", "_resample_common_int32", "_resample_linear_int32", "_resample_common_float", "_resample_linear_float", "_resample_common_double", "_resample_linear_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiii = [0, "jsCall_iiiiiii_0", "jsCall_iiiiiii_1", "jsCall_iiiiiii_2", "jsCall_iiiiiii_3", "jsCall_iiiiiii_4", "jsCall_iiiiiii_5", "jsCall_iiiiiii_6", "jsCall_iiiiiii_7", "jsCall_iiiiiii_8", "jsCall_iiiiiii_9", "jsCall_iiiiiii_10", "jsCall_iiiiiii_11", "jsCall_iiiiiii_12", "jsCall_iiiiiii_13", "jsCall_iiiiiii_14", "jsCall_iiiiiii_15", "jsCall_iiiiiii_16", "jsCall_iiiiiii_17", "jsCall_iiiiiii_18", "jsCall_iiiiiii_19", "jsCall_iiiiiii_20", "jsCall_iiiiiii_21", "jsCall_iiiiiii_22", "jsCall_iiiiiii_23", "jsCall_iiiiiii_24", "jsCall_iiiiiii_25", "jsCall_iiiiiii_26", "jsCall_iiiiiii_27", "jsCall_iiiiiii_28", "jsCall_iiiiiii_29", "jsCall_iiiiiii_30", "jsCall_iiiiiii_31", "jsCall_iiiiiii_32", "jsCall_iiiiiii_33", "jsCall_iiiiiii_34", "jsCall_iiiiiii_35", "jsCall_iiiiiii_36", "jsCall_iiiiiii_37", "jsCall_iiiiiii_38", "jsCall_iiiiiii_39", "jsCall_iiiiiii_40", "jsCall_iiiiiii_41", "jsCall_iiiiiii_42", "jsCall_iiiiiii_43", "jsCall_iiiiiii_44", "jsCall_iiiiiii_45", "jsCall_iiiiiii_46", "jsCall_iiiiiii_47", "jsCall_iiiiiii_48", "jsCall_iiiiiii_49", "jsCall_iiiiiii_50", "jsCall_iiiiiii_51", "jsCall_iiiiiii_52", "jsCall_iiiiiii_53", "jsCall_iiiiiii_54", "jsCall_iiiiiii_55", "jsCall_iiiiiii_56", "jsCall_iiiiiii_57", "jsCall_iiiiiii_58", "jsCall_iiiiiii_59", "jsCall_iiiiiii_60", "jsCall_iiiiiii_61", "jsCall_iiiiiii_62", "jsCall_iiiiiii_63", "jsCall_iiiiiii_64", "jsCall_iiiiiii_65", "jsCall_iiiiiii_66", "jsCall_iiiiiii_67", "jsCall_iiiiiii_68", "jsCall_iiiiiii_69", "jsCall_iiiiiii_70", "jsCall_iiiiiii_71", "jsCall_iiiiiii_72", "jsCall_iiiiiii_73", "jsCall_iiiiiii_74", "jsCall_iiiiiii_75", "jsCall_iiiiiii_76", "jsCall_iiiiiii_77", "jsCall_iiiiiii_78", "jsCall_iiiiiii_79", "jsCall_iiiiiii_80", "jsCall_iiiiiii_81", "jsCall_iiiiiii_82", "jsCall_iiiiiii_83", "jsCall_iiiiiii_84", "jsCall_iiiiiii_85", "jsCall_iiiiiii_86", "jsCall_iiiiiii_87", "jsCall_iiiiiii_88", "jsCall_iiiiiii_89", "jsCall_iiiiiii_90", "jsCall_iiiiiii_91", "jsCall_iiiiiii_92", "jsCall_iiiiiii_93", "jsCall_iiiiiii_94", "jsCall_iiiiiii_95", "jsCall_iiiiiii_96", "jsCall_iiiiiii_97", "jsCall_iiiiiii_98", "jsCall_iiiiiii_99", "_h264_parse", "_hevc_parse", "_mpegaudio_parse", "_multiple_resample", "_invert_initial_buffer", "_hflv_decodeVideoFrameFunc", "_avcodec_default_execute", "_thread_execute", "_sbr_x_gen", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiidiiddii = [0, "jsCall_iiiiiiidiiddii_0", "jsCall_iiiiiiidiiddii_1", "jsCall_iiiiiiidiiddii_2", "jsCall_iiiiiiidiiddii_3", "jsCall_iiiiiiidiiddii_4", "jsCall_iiiiiiidiiddii_5", "jsCall_iiiiiiidiiddii_6", "jsCall_iiiiiiidiiddii_7", "jsCall_iiiiiiidiiddii_8", "jsCall_iiiiiiidiiddii_9", "jsCall_iiiiiiidiiddii_10", "jsCall_iiiiiiidiiddii_11", "jsCall_iiiiiiidiiddii_12", "jsCall_iiiiiiidiiddii_13", "jsCall_iiiiiiidiiddii_14", "jsCall_iiiiiiidiiddii_15", "jsCall_iiiiiiidiiddii_16", "jsCall_iiiiiiidiiddii_17", "jsCall_iiiiiiidiiddii_18", "jsCall_iiiiiiidiiddii_19", "jsCall_iiiiiiidiiddii_20", "jsCall_iiiiiiidiiddii_21", "jsCall_iiiiiiidiiddii_22", "jsCall_iiiiiiidiiddii_23", "jsCall_iiiiiiidiiddii_24", "jsCall_iiiiiiidiiddii_25", "jsCall_iiiiiiidiiddii_26", "jsCall_iiiiiiidiiddii_27", "jsCall_iiiiiiidiiddii_28", "jsCall_iiiiiiidiiddii_29", "jsCall_iiiiiiidiiddii_30", "jsCall_iiiiiiidiiddii_31", "jsCall_iiiiiiidiiddii_32", "jsCall_iiiiiiidiiddii_33", "jsCall_iiiiiiidiiddii_34", "jsCall_iiiiiiidiiddii_35", "jsCall_iiiiiiidiiddii_36", "jsCall_iiiiiiidiiddii_37", "jsCall_iiiiiiidiiddii_38", "jsCall_iiiiiiidiiddii_39", "jsCall_iiiiiiidiiddii_40", "jsCall_iiiiiiidiiddii_41", "jsCall_iiiiiiidiiddii_42", "jsCall_iiiiiiidiiddii_43", "jsCall_iiiiiiidiiddii_44", "jsCall_iiiiiiidiiddii_45", "jsCall_iiiiiiidiiddii_46", "jsCall_iiiiiiidiiddii_47", "jsCall_iiiiiiidiiddii_48", "jsCall_iiiiiiidiiddii_49", "jsCall_iiiiiiidiiddii_50", "jsCall_iiiiiiidiiddii_51", "jsCall_iiiiiiidiiddii_52", "jsCall_iiiiiiidiiddii_53", "jsCall_iiiiiiidiiddii_54", "jsCall_iiiiiiidiiddii_55", "jsCall_iiiiiiidiiddii_56", "jsCall_iiiiiiidiiddii_57", "jsCall_iiiiiiidiiddii_58", "jsCall_iiiiiiidiiddii_59", "jsCall_iiiiiiidiiddii_60", "jsCall_iiiiiiidiiddii_61", "jsCall_iiiiiiidiiddii_62", "jsCall_iiiiiiidiiddii_63", "jsCall_iiiiiiidiiddii_64", "jsCall_iiiiiiidiiddii_65", "jsCall_iiiiiiidiiddii_66", "jsCall_iiiiiiidiiddii_67", "jsCall_iiiiiiidiiddii_68", "jsCall_iiiiiiidiiddii_69", "jsCall_iiiiiiidiiddii_70", "jsCall_iiiiiiidiiddii_71", "jsCall_iiiiiiidiiddii_72", "jsCall_iiiiiiidiiddii_73", "jsCall_iiiiiiidiiddii_74", "jsCall_iiiiiiidiiddii_75", "jsCall_iiiiiiidiiddii_76", "jsCall_iiiiiiidiiddii_77", "jsCall_iiiiiiidiiddii_78", "jsCall_iiiiiiidiiddii_79", "jsCall_iiiiiiidiiddii_80", "jsCall_iiiiiiidiiddii_81", "jsCall_iiiiiiidiiddii_82", "jsCall_iiiiiiidiiddii_83", "jsCall_iiiiiiidiiddii_84", "jsCall_iiiiiiidiiddii_85", "jsCall_iiiiiiidiiddii_86", "jsCall_iiiiiiidiiddii_87", "jsCall_iiiiiiidiiddii_88", "jsCall_iiiiiiidiiddii_89", "jsCall_iiiiiiidiiddii_90", "jsCall_iiiiiiidiiddii_91", "jsCall_iiiiiiidiiddii_92", "jsCall_iiiiiiidiiddii_93", "jsCall_iiiiiiidiiddii_94", "jsCall_iiiiiiidiiddii_95", "jsCall_iiiiiiidiiddii_96", "jsCall_iiiiiiidiiddii_97", "jsCall_iiiiiiidiiddii_98", "jsCall_iiiiiiidiiddii_99", "_resample_init", 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]; +var debug_table_iiiiiiii = [0, "jsCall_iiiiiiii_0", "jsCall_iiiiiiii_1", "jsCall_iiiiiiii_2", "jsCall_iiiiiiii_3", "jsCall_iiiiiiii_4", "jsCall_iiiiiiii_5", "jsCall_iiiiiiii_6", "jsCall_iiiiiiii_7", "jsCall_iiiiiiii_8", "jsCall_iiiiiiii_9", "jsCall_iiiiiiii_10", "jsCall_iiiiiiii_11", "jsCall_iiiiiiii_12", "jsCall_iiiiiiii_13", "jsCall_iiiiiiii_14", "jsCall_iiiiiiii_15", "jsCall_iiiiiiii_16", "jsCall_iiiiiiii_17", "jsCall_iiiiiiii_18", "jsCall_iiiiiiii_19", "jsCall_iiiiiiii_20", "jsCall_iiiiiiii_21", "jsCall_iiiiiiii_22", "jsCall_iiiiiiii_23", "jsCall_iiiiiiii_24", "jsCall_iiiiiiii_25", "jsCall_iiiiiiii_26", "jsCall_iiiiiiii_27", "jsCall_iiiiiiii_28", "jsCall_iiiiiiii_29", "jsCall_iiiiiiii_30", "jsCall_iiiiiiii_31", "jsCall_iiiiiiii_32", "jsCall_iiiiiiii_33", "jsCall_iiiiiiii_34", "jsCall_iiiiiiii_35", "jsCall_iiiiiiii_36", "jsCall_iiiiiiii_37", "jsCall_iiiiiiii_38", "jsCall_iiiiiiii_39", "jsCall_iiiiiiii_40", "jsCall_iiiiiiii_41", "jsCall_iiiiiiii_42", "jsCall_iiiiiiii_43", "jsCall_iiiiiiii_44", "jsCall_iiiiiiii_45", "jsCall_iiiiiiii_46", "jsCall_iiiiiiii_47", "jsCall_iiiiiiii_48", "jsCall_iiiiiiii_49", "jsCall_iiiiiiii_50", "jsCall_iiiiiiii_51", "jsCall_iiiiiiii_52", "jsCall_iiiiiiii_53", "jsCall_iiiiiiii_54", "jsCall_iiiiiiii_55", "jsCall_iiiiiiii_56", "jsCall_iiiiiiii_57", "jsCall_iiiiiiii_58", "jsCall_iiiiiiii_59", "jsCall_iiiiiiii_60", "jsCall_iiiiiiii_61", "jsCall_iiiiiiii_62", "jsCall_iiiiiiii_63", "jsCall_iiiiiiii_64", "jsCall_iiiiiiii_65", "jsCall_iiiiiiii_66", "jsCall_iiiiiiii_67", "jsCall_iiiiiiii_68", "jsCall_iiiiiiii_69", "jsCall_iiiiiiii_70", "jsCall_iiiiiiii_71", "jsCall_iiiiiiii_72", "jsCall_iiiiiiii_73", "jsCall_iiiiiiii_74", "jsCall_iiiiiiii_75", "jsCall_iiiiiiii_76", "jsCall_iiiiiiii_77", "jsCall_iiiiiiii_78", "jsCall_iiiiiiii_79", "jsCall_iiiiiiii_80", "jsCall_iiiiiiii_81", "jsCall_iiiiiiii_82", "jsCall_iiiiiiii_83", "jsCall_iiiiiiii_84", "jsCall_iiiiiiii_85", "jsCall_iiiiiiii_86", "jsCall_iiiiiiii_87", "jsCall_iiiiiiii_88", "jsCall_iiiiiiii_89", "jsCall_iiiiiiii_90", "jsCall_iiiiiiii_91", "jsCall_iiiiiiii_92", "jsCall_iiiiiiii_93", "jsCall_iiiiiiii_94", "jsCall_iiiiiiii_95", "jsCall_iiiiiiii_96", "jsCall_iiiiiiii_97", "jsCall_iiiiiiii_98", "jsCall_iiiiiiii_99", "_decodeVideoFrameFunc", "_hflv_setSniffStreamCodecTypeFunc", "_swscale", "_ff_sws_alphablendaway", "_yuv2rgb_c_32", "_yuva2rgba_c", "_yuv2rgb_c_bgr48", "_yuv2rgb_c_48", "_yuva2argb_c", "_yuv2rgb_c_24_rgb", "_yuv2rgb_c_24_bgr", "_yuv2rgb_c_16_ordered_dither", "_yuv2rgb_c_15_ordered_dither", "_yuv2rgb_c_12_ordered_dither", "_yuv2rgb_c_8_ordered_dither", "_yuv2rgb_c_4_ordered_dither", "_yuv2rgb_c_4b_ordered_dither", "_yuv2rgb_c_1_ordered_dither", "_planarToP01xWrapper", "_planar8ToP01xleWrapper", "_yvu9ToYv12Wrapper", "_bgr24ToYv12Wrapper", "_rgbToRgbWrapper", "_planarRgbToplanarRgbWrapper", "_planarRgbToRgbWrapper", "_planarRgbaToRgbWrapper", "_Rgb16ToPlanarRgb16Wrapper", "_planarRgb16ToRgb16Wrapper", "_rgbToPlanarRgbWrapper", "_bayer_to_rgb24_wrapper", "_bayer_to_yv12_wrapper", "_bswap_16bpc", "_palToRgbWrapper", "_yuv422pToYuy2Wrapper", "_yuv422pToUyvyWrapper", "_uint_y_to_float_y_wrapper", "_float_y_to_uint_y_wrapper", "_planarToYuy2Wrapper", "_planarToUyvyWrapper", "_yuyvToYuv420Wrapper", "_uyvyToYuv420Wrapper", "_yuyvToYuv422Wrapper", "_uyvyToYuv422Wrapper", "_packedCopyWrapper", "_planarCopyWrapper", "_planarToNv12Wrapper", "_planarToNv24Wrapper", "_nv12ToPlanarWrapper", "_nv24ToPlanarWrapper", 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, 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, 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, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiiiiiiid = [0, "jsCall_iiiiiiiid_0", "jsCall_iiiiiiiid_1", "jsCall_iiiiiiiid_2", "jsCall_iiiiiiiid_3", "jsCall_iiiiiiiid_4", "jsCall_iiiiiiiid_5", "jsCall_iiiiiiiid_6", "jsCall_iiiiiiiid_7", "jsCall_iiiiiiiid_8", "jsCall_iiiiiiiid_9", "jsCall_iiiiiiiid_10", "jsCall_iiiiiiiid_11", "jsCall_iiiiiiiid_12", "jsCall_iiiiiiiid_13", "jsCall_iiiiiiiid_14", "jsCall_iiiiiiiid_15", "jsCall_iiiiiiiid_16", "jsCall_iiiiiiiid_17", "jsCall_iiiiiiiid_18", "jsCall_iiiiiiiid_19", "jsCall_iiiiiiiid_20", "jsCall_iiiiiiiid_21", "jsCall_iiiiiiiid_22", "jsCall_iiiiiiiid_23", "jsCall_iiiiiiiid_24", "jsCall_iiiiiiiid_25", "jsCall_iiiiiiiid_26", "jsCall_iiiiiiiid_27", "jsCall_iiiiiiiid_28", "jsCall_iiiiiiiid_29", "jsCall_iiiiiiiid_30", "jsCall_iiiiiiiid_31", "jsCall_iiiiiiiid_32", "jsCall_iiiiiiiid_33", "jsCall_iiiiiiiid_34", "jsCall_iiiiiiiid_35", "jsCall_iiiiiiiid_36", "jsCall_iiiiiiiid_37", "jsCall_iiiiiiiid_38", "jsCall_iiiiiiiid_39", "jsCall_iiiiiiiid_40", "jsCall_iiiiiiiid_41", "jsCall_iiiiiiiid_42", "jsCall_iiiiiiiid_43", "jsCall_iiiiiiiid_44", "jsCall_iiiiiiiid_45", "jsCall_iiiiiiiid_46", "jsCall_iiiiiiiid_47", "jsCall_iiiiiiiid_48", "jsCall_iiiiiiiid_49", "jsCall_iiiiiiiid_50", "jsCall_iiiiiiiid_51", "jsCall_iiiiiiiid_52", "jsCall_iiiiiiiid_53", "jsCall_iiiiiiiid_54", "jsCall_iiiiiiiid_55", "jsCall_iiiiiiiid_56", "jsCall_iiiiiiiid_57", "jsCall_iiiiiiiid_58", "jsCall_iiiiiiiid_59", "jsCall_iiiiiiiid_60", "jsCall_iiiiiiiid_61", "jsCall_iiiiiiiid_62", "jsCall_iiiiiiiid_63", "jsCall_iiiiiiiid_64", "jsCall_iiiiiiiid_65", "jsCall_iiiiiiiid_66", "jsCall_iiiiiiiid_67", "jsCall_iiiiiiiid_68", "jsCall_iiiiiiiid_69", "jsCall_iiiiiiiid_70", "jsCall_iiiiiiiid_71", "jsCall_iiiiiiiid_72", "jsCall_iiiiiiiid_73", "jsCall_iiiiiiiid_74", "jsCall_iiiiiiiid_75", "jsCall_iiiiiiiid_76", "jsCall_iiiiiiiid_77", "jsCall_iiiiiiiid_78", "jsCall_iiiiiiiid_79", "jsCall_iiiiiiiid_80", "jsCall_iiiiiiiid_81", "jsCall_iiiiiiiid_82", "jsCall_iiiiiiiid_83", "jsCall_iiiiiiiid_84", "jsCall_iiiiiiiid_85", "jsCall_iiiiiiiid_86", "jsCall_iiiiiiiid_87", "jsCall_iiiiiiiid_88", "jsCall_iiiiiiiid_89", "jsCall_iiiiiiiid_90", "jsCall_iiiiiiiid_91", "jsCall_iiiiiiiid_92", "jsCall_iiiiiiiid_93", "jsCall_iiiiiiiid_94", "jsCall_iiiiiiiid_95", "jsCall_iiiiiiiid_96", "jsCall_iiiiiiiid_97", "jsCall_iiiiiiiid_98", "jsCall_iiiiiiiid_99", "_setSniffStreamCodecTypeFunc", 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]; +var debug_table_iiiiij = [0, "jsCall_iiiiij_0", "jsCall_iiiiij_1", "jsCall_iiiiij_2", "jsCall_iiiiij_3", "jsCall_iiiiij_4", "jsCall_iiiiij_5", "jsCall_iiiiij_6", "jsCall_iiiiij_7", "jsCall_iiiiij_8", "jsCall_iiiiij_9", "jsCall_iiiiij_10", "jsCall_iiiiij_11", "jsCall_iiiiij_12", "jsCall_iiiiij_13", "jsCall_iiiiij_14", "jsCall_iiiiij_15", "jsCall_iiiiij_16", "jsCall_iiiiij_17", "jsCall_iiiiij_18", "jsCall_iiiiij_19", "jsCall_iiiiij_20", "jsCall_iiiiij_21", "jsCall_iiiiij_22", "jsCall_iiiiij_23", "jsCall_iiiiij_24", "jsCall_iiiiij_25", "jsCall_iiiiij_26", "jsCall_iiiiij_27", "jsCall_iiiiij_28", "jsCall_iiiiij_29", "jsCall_iiiiij_30", "jsCall_iiiiij_31", "jsCall_iiiiij_32", "jsCall_iiiiij_33", "jsCall_iiiiij_34", "jsCall_iiiiij_35", "jsCall_iiiiij_36", "jsCall_iiiiij_37", "jsCall_iiiiij_38", "jsCall_iiiiij_39", "jsCall_iiiiij_40", "jsCall_iiiiij_41", "jsCall_iiiiij_42", "jsCall_iiiiij_43", "jsCall_iiiiij_44", "jsCall_iiiiij_45", "jsCall_iiiiij_46", "jsCall_iiiiij_47", "jsCall_iiiiij_48", "jsCall_iiiiij_49", "jsCall_iiiiij_50", "jsCall_iiiiij_51", "jsCall_iiiiij_52", "jsCall_iiiiij_53", "jsCall_iiiiij_54", "jsCall_iiiiij_55", "jsCall_iiiiij_56", "jsCall_iiiiij_57", "jsCall_iiiiij_58", "jsCall_iiiiij_59", "jsCall_iiiiij_60", "jsCall_iiiiij_61", "jsCall_iiiiij_62", "jsCall_iiiiij_63", "jsCall_iiiiij_64", "jsCall_iiiiij_65", "jsCall_iiiiij_66", "jsCall_iiiiij_67", "jsCall_iiiiij_68", "jsCall_iiiiij_69", "jsCall_iiiiij_70", "jsCall_iiiiij_71", "jsCall_iiiiij_72", "jsCall_iiiiij_73", "jsCall_iiiiij_74", "jsCall_iiiiij_75", "jsCall_iiiiij_76", "jsCall_iiiiij_77", "jsCall_iiiiij_78", "jsCall_iiiiij_79", "jsCall_iiiiij_80", "jsCall_iiiiij_81", "jsCall_iiiiij_82", "jsCall_iiiiij_83", "jsCall_iiiiij_84", "jsCall_iiiiij_85", "jsCall_iiiiij_86", "jsCall_iiiiij_87", "jsCall_iiiiij_88", "jsCall_iiiiij_89", "jsCall_iiiiij_90", "jsCall_iiiiij_91", "jsCall_iiiiij_92", "jsCall_iiiiij_93", "jsCall_iiiiij_94", "jsCall_iiiiij_95", "jsCall_iiiiij_96", "jsCall_iiiiij_97", "jsCall_iiiiij_98", "jsCall_iiiiij_99", "_mpegts_push_data", 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]; +var debug_table_iiiji = [0, "jsCall_iiiji_0", "jsCall_iiiji_1", "jsCall_iiiji_2", "jsCall_iiiji_3", "jsCall_iiiji_4", "jsCall_iiiji_5", "jsCall_iiiji_6", "jsCall_iiiji_7", "jsCall_iiiji_8", "jsCall_iiiji_9", "jsCall_iiiji_10", "jsCall_iiiji_11", "jsCall_iiiji_12", "jsCall_iiiji_13", "jsCall_iiiji_14", "jsCall_iiiji_15", "jsCall_iiiji_16", "jsCall_iiiji_17", "jsCall_iiiji_18", "jsCall_iiiji_19", "jsCall_iiiji_20", "jsCall_iiiji_21", "jsCall_iiiji_22", "jsCall_iiiji_23", "jsCall_iiiji_24", "jsCall_iiiji_25", "jsCall_iiiji_26", "jsCall_iiiji_27", "jsCall_iiiji_28", "jsCall_iiiji_29", "jsCall_iiiji_30", "jsCall_iiiji_31", "jsCall_iiiji_32", "jsCall_iiiji_33", "jsCall_iiiji_34", "jsCall_iiiji_35", "jsCall_iiiji_36", "jsCall_iiiji_37", "jsCall_iiiji_38", "jsCall_iiiji_39", "jsCall_iiiji_40", "jsCall_iiiji_41", "jsCall_iiiji_42", "jsCall_iiiji_43", "jsCall_iiiji_44", "jsCall_iiiji_45", "jsCall_iiiji_46", "jsCall_iiiji_47", "jsCall_iiiji_48", "jsCall_iiiji_49", "jsCall_iiiji_50", "jsCall_iiiji_51", "jsCall_iiiji_52", "jsCall_iiiji_53", "jsCall_iiiji_54", "jsCall_iiiji_55", "jsCall_iiiji_56", "jsCall_iiiji_57", "jsCall_iiiji_58", "jsCall_iiiji_59", "jsCall_iiiji_60", "jsCall_iiiji_61", "jsCall_iiiji_62", "jsCall_iiiji_63", "jsCall_iiiji_64", "jsCall_iiiji_65", "jsCall_iiiji_66", "jsCall_iiiji_67", "jsCall_iiiji_68", "jsCall_iiiji_69", "jsCall_iiiji_70", "jsCall_iiiji_71", "jsCall_iiiji_72", "jsCall_iiiji_73", "jsCall_iiiji_74", "jsCall_iiiji_75", "jsCall_iiiji_76", "jsCall_iiiji_77", "jsCall_iiiji_78", "jsCall_iiiji_79", "jsCall_iiiji_80", "jsCall_iiiji_81", "jsCall_iiiji_82", "jsCall_iiiji_83", "jsCall_iiiji_84", "jsCall_iiiji_85", "jsCall_iiiji_86", "jsCall_iiiji_87", "jsCall_iiiji_88", "jsCall_iiiji_89", "jsCall_iiiji_90", "jsCall_iiiji_91", "jsCall_iiiji_92", "jsCall_iiiji_93", "jsCall_iiiji_94", "jsCall_iiiji_95", "jsCall_iiiji_96", "jsCall_iiiji_97", "jsCall_iiiji_98", "jsCall_iiiji_99", "_avi_read_seek", "_flv_read_seek", "_matroska_read_seek", "_mov_read_seek", "_mp3_seek", "_ff_pcm_read_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_iiijjji = [0, "jsCall_iiijjji_0", "jsCall_iiijjji_1", "jsCall_iiijjji_2", "jsCall_iiijjji_3", "jsCall_iiijjji_4", "jsCall_iiijjji_5", "jsCall_iiijjji_6", "jsCall_iiijjji_7", "jsCall_iiijjji_8", "jsCall_iiijjji_9", "jsCall_iiijjji_10", "jsCall_iiijjji_11", "jsCall_iiijjji_12", "jsCall_iiijjji_13", "jsCall_iiijjji_14", "jsCall_iiijjji_15", "jsCall_iiijjji_16", "jsCall_iiijjji_17", "jsCall_iiijjji_18", "jsCall_iiijjji_19", "jsCall_iiijjji_20", "jsCall_iiijjji_21", "jsCall_iiijjji_22", "jsCall_iiijjji_23", "jsCall_iiijjji_24", "jsCall_iiijjji_25", "jsCall_iiijjji_26", "jsCall_iiijjji_27", "jsCall_iiijjji_28", "jsCall_iiijjji_29", "jsCall_iiijjji_30", "jsCall_iiijjji_31", "jsCall_iiijjji_32", "jsCall_iiijjji_33", "jsCall_iiijjji_34", "jsCall_iiijjji_35", "jsCall_iiijjji_36", "jsCall_iiijjji_37", "jsCall_iiijjji_38", "jsCall_iiijjji_39", "jsCall_iiijjji_40", "jsCall_iiijjji_41", "jsCall_iiijjji_42", "jsCall_iiijjji_43", "jsCall_iiijjji_44", "jsCall_iiijjji_45", "jsCall_iiijjji_46", "jsCall_iiijjji_47", "jsCall_iiijjji_48", "jsCall_iiijjji_49", "jsCall_iiijjji_50", "jsCall_iiijjji_51", "jsCall_iiijjji_52", "jsCall_iiijjji_53", "jsCall_iiijjji_54", "jsCall_iiijjji_55", "jsCall_iiijjji_56", "jsCall_iiijjji_57", "jsCall_iiijjji_58", "jsCall_iiijjji_59", "jsCall_iiijjji_60", "jsCall_iiijjji_61", "jsCall_iiijjji_62", "jsCall_iiijjji_63", "jsCall_iiijjji_64", "jsCall_iiijjji_65", "jsCall_iiijjji_66", "jsCall_iiijjji_67", "jsCall_iiijjji_68", "jsCall_iiijjji_69", "jsCall_iiijjji_70", "jsCall_iiijjji_71", "jsCall_iiijjji_72", "jsCall_iiijjji_73", "jsCall_iiijjji_74", "jsCall_iiijjji_75", "jsCall_iiijjji_76", "jsCall_iiijjji_77", "jsCall_iiijjji_78", "jsCall_iiijjji_79", "jsCall_iiijjji_80", "jsCall_iiijjji_81", "jsCall_iiijjji_82", "jsCall_iiijjji_83", "jsCall_iiijjji_84", "jsCall_iiijjji_85", "jsCall_iiijjji_86", "jsCall_iiijjji_87", "jsCall_iiijjji_88", "jsCall_iiijjji_89", "jsCall_iiijjji_90", "jsCall_iiijjji_91", "jsCall_iiijjji_92", "jsCall_iiijjji_93", "jsCall_iiijjji_94", "jsCall_iiijjji_95", "jsCall_iiijjji_96", "jsCall_iiijjji_97", "jsCall_iiijjji_98", "jsCall_iiijjji_99", 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]; +var debug_table_jii = [0, "jsCall_jii_0", "jsCall_jii_1", "jsCall_jii_2", "jsCall_jii_3", "jsCall_jii_4", "jsCall_jii_5", "jsCall_jii_6", "jsCall_jii_7", "jsCall_jii_8", "jsCall_jii_9", "jsCall_jii_10", "jsCall_jii_11", "jsCall_jii_12", "jsCall_jii_13", "jsCall_jii_14", "jsCall_jii_15", "jsCall_jii_16", "jsCall_jii_17", "jsCall_jii_18", "jsCall_jii_19", "jsCall_jii_20", "jsCall_jii_21", "jsCall_jii_22", "jsCall_jii_23", "jsCall_jii_24", "jsCall_jii_25", "jsCall_jii_26", "jsCall_jii_27", "jsCall_jii_28", "jsCall_jii_29", "jsCall_jii_30", "jsCall_jii_31", "jsCall_jii_32", "jsCall_jii_33", "jsCall_jii_34", "jsCall_jii_35", "jsCall_jii_36", "jsCall_jii_37", "jsCall_jii_38", "jsCall_jii_39", "jsCall_jii_40", "jsCall_jii_41", "jsCall_jii_42", "jsCall_jii_43", "jsCall_jii_44", "jsCall_jii_45", "jsCall_jii_46", "jsCall_jii_47", "jsCall_jii_48", "jsCall_jii_49", "jsCall_jii_50", "jsCall_jii_51", "jsCall_jii_52", "jsCall_jii_53", "jsCall_jii_54", "jsCall_jii_55", "jsCall_jii_56", "jsCall_jii_57", "jsCall_jii_58", "jsCall_jii_59", "jsCall_jii_60", "jsCall_jii_61", "jsCall_jii_62", "jsCall_jii_63", "jsCall_jii_64", "jsCall_jii_65", "jsCall_jii_66", "jsCall_jii_67", "jsCall_jii_68", "jsCall_jii_69", "jsCall_jii_70", "jsCall_jii_71", "jsCall_jii_72", "jsCall_jii_73", "jsCall_jii_74", "jsCall_jii_75", "jsCall_jii_76", "jsCall_jii_77", "jsCall_jii_78", "jsCall_jii_79", "jsCall_jii_80", "jsCall_jii_81", "jsCall_jii_82", "jsCall_jii_83", "jsCall_jii_84", "jsCall_jii_85", "jsCall_jii_86", "jsCall_jii_87", "jsCall_jii_88", "jsCall_jii_89", "jsCall_jii_90", "jsCall_jii_91", "jsCall_jii_92", "jsCall_jii_93", "jsCall_jii_94", "jsCall_jii_95", "jsCall_jii_96", "jsCall_jii_97", "jsCall_jii_98", "jsCall_jii_99", "_get_out_samples", 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]; +var debug_table_jiiij = [0, "jsCall_jiiij_0", "jsCall_jiiij_1", "jsCall_jiiij_2", "jsCall_jiiij_3", "jsCall_jiiij_4", "jsCall_jiiij_5", "jsCall_jiiij_6", "jsCall_jiiij_7", "jsCall_jiiij_8", "jsCall_jiiij_9", "jsCall_jiiij_10", "jsCall_jiiij_11", "jsCall_jiiij_12", "jsCall_jiiij_13", "jsCall_jiiij_14", "jsCall_jiiij_15", "jsCall_jiiij_16", "jsCall_jiiij_17", "jsCall_jiiij_18", "jsCall_jiiij_19", "jsCall_jiiij_20", "jsCall_jiiij_21", "jsCall_jiiij_22", "jsCall_jiiij_23", "jsCall_jiiij_24", "jsCall_jiiij_25", "jsCall_jiiij_26", "jsCall_jiiij_27", "jsCall_jiiij_28", "jsCall_jiiij_29", "jsCall_jiiij_30", "jsCall_jiiij_31", "jsCall_jiiij_32", "jsCall_jiiij_33", "jsCall_jiiij_34", "jsCall_jiiij_35", "jsCall_jiiij_36", "jsCall_jiiij_37", "jsCall_jiiij_38", "jsCall_jiiij_39", "jsCall_jiiij_40", "jsCall_jiiij_41", "jsCall_jiiij_42", "jsCall_jiiij_43", "jsCall_jiiij_44", "jsCall_jiiij_45", "jsCall_jiiij_46", "jsCall_jiiij_47", "jsCall_jiiij_48", "jsCall_jiiij_49", "jsCall_jiiij_50", "jsCall_jiiij_51", "jsCall_jiiij_52", "jsCall_jiiij_53", "jsCall_jiiij_54", "jsCall_jiiij_55", "jsCall_jiiij_56", "jsCall_jiiij_57", "jsCall_jiiij_58", "jsCall_jiiij_59", "jsCall_jiiij_60", "jsCall_jiiij_61", "jsCall_jiiij_62", "jsCall_jiiij_63", "jsCall_jiiij_64", "jsCall_jiiij_65", "jsCall_jiiij_66", "jsCall_jiiij_67", "jsCall_jiiij_68", "jsCall_jiiij_69", "jsCall_jiiij_70", "jsCall_jiiij_71", "jsCall_jiiij_72", "jsCall_jiiij_73", "jsCall_jiiij_74", "jsCall_jiiij_75", "jsCall_jiiij_76", "jsCall_jiiij_77", "jsCall_jiiij_78", "jsCall_jiiij_79", "jsCall_jiiij_80", "jsCall_jiiij_81", "jsCall_jiiij_82", "jsCall_jiiij_83", "jsCall_jiiij_84", "jsCall_jiiij_85", "jsCall_jiiij_86", "jsCall_jiiij_87", "jsCall_jiiij_88", "jsCall_jiiij_89", "jsCall_jiiij_90", "jsCall_jiiij_91", "jsCall_jiiij_92", "jsCall_jiiij_93", "jsCall_jiiij_94", "jsCall_jiiij_95", "jsCall_jiiij_96", "jsCall_jiiij_97", "jsCall_jiiij_98", "jsCall_jiiij_99", "_mpegps_read_dts", "_mpegts_get_dts", 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]; +var debug_table_jiiji = [0, "jsCall_jiiji_0", "jsCall_jiiji_1", "jsCall_jiiji_2", "jsCall_jiiji_3", "jsCall_jiiji_4", "jsCall_jiiji_5", "jsCall_jiiji_6", "jsCall_jiiji_7", "jsCall_jiiji_8", "jsCall_jiiji_9", "jsCall_jiiji_10", "jsCall_jiiji_11", "jsCall_jiiji_12", "jsCall_jiiji_13", "jsCall_jiiji_14", "jsCall_jiiji_15", "jsCall_jiiji_16", "jsCall_jiiji_17", "jsCall_jiiji_18", "jsCall_jiiji_19", "jsCall_jiiji_20", "jsCall_jiiji_21", "jsCall_jiiji_22", "jsCall_jiiji_23", "jsCall_jiiji_24", "jsCall_jiiji_25", "jsCall_jiiji_26", "jsCall_jiiji_27", "jsCall_jiiji_28", "jsCall_jiiji_29", "jsCall_jiiji_30", "jsCall_jiiji_31", "jsCall_jiiji_32", "jsCall_jiiji_33", "jsCall_jiiji_34", "jsCall_jiiji_35", "jsCall_jiiji_36", "jsCall_jiiji_37", "jsCall_jiiji_38", "jsCall_jiiji_39", "jsCall_jiiji_40", "jsCall_jiiji_41", "jsCall_jiiji_42", "jsCall_jiiji_43", "jsCall_jiiji_44", "jsCall_jiiji_45", "jsCall_jiiji_46", "jsCall_jiiji_47", "jsCall_jiiji_48", "jsCall_jiiji_49", "jsCall_jiiji_50", "jsCall_jiiji_51", "jsCall_jiiji_52", "jsCall_jiiji_53", "jsCall_jiiji_54", "jsCall_jiiji_55", "jsCall_jiiji_56", "jsCall_jiiji_57", "jsCall_jiiji_58", "jsCall_jiiji_59", "jsCall_jiiji_60", "jsCall_jiiji_61", "jsCall_jiiji_62", "jsCall_jiiji_63", "jsCall_jiiji_64", "jsCall_jiiji_65", "jsCall_jiiji_66", "jsCall_jiiji_67", "jsCall_jiiji_68", "jsCall_jiiji_69", "jsCall_jiiji_70", "jsCall_jiiji_71", "jsCall_jiiji_72", "jsCall_jiiji_73", "jsCall_jiiji_74", "jsCall_jiiji_75", "jsCall_jiiji_76", "jsCall_jiiji_77", "jsCall_jiiji_78", "jsCall_jiiji_79", "jsCall_jiiji_80", "jsCall_jiiji_81", "jsCall_jiiji_82", "jsCall_jiiji_83", "jsCall_jiiji_84", "jsCall_jiiji_85", "jsCall_jiiji_86", "jsCall_jiiji_87", "jsCall_jiiji_88", "jsCall_jiiji_89", "jsCall_jiiji_90", "jsCall_jiiji_91", "jsCall_jiiji_92", "jsCall_jiiji_93", "jsCall_jiiji_94", "jsCall_jiiji_95", "jsCall_jiiji_96", "jsCall_jiiji_97", "jsCall_jiiji_98", "jsCall_jiiji_99", "_io_read_seek", 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]; +var debug_table_jij = [0, "jsCall_jij_0", "jsCall_jij_1", "jsCall_jij_2", "jsCall_jij_3", "jsCall_jij_4", "jsCall_jij_5", "jsCall_jij_6", "jsCall_jij_7", "jsCall_jij_8", "jsCall_jij_9", "jsCall_jij_10", "jsCall_jij_11", "jsCall_jij_12", "jsCall_jij_13", "jsCall_jij_14", "jsCall_jij_15", "jsCall_jij_16", "jsCall_jij_17", "jsCall_jij_18", "jsCall_jij_19", "jsCall_jij_20", "jsCall_jij_21", "jsCall_jij_22", "jsCall_jij_23", "jsCall_jij_24", "jsCall_jij_25", "jsCall_jij_26", "jsCall_jij_27", "jsCall_jij_28", "jsCall_jij_29", "jsCall_jij_30", "jsCall_jij_31", "jsCall_jij_32", "jsCall_jij_33", "jsCall_jij_34", "jsCall_jij_35", "jsCall_jij_36", "jsCall_jij_37", "jsCall_jij_38", "jsCall_jij_39", "jsCall_jij_40", "jsCall_jij_41", "jsCall_jij_42", "jsCall_jij_43", "jsCall_jij_44", "jsCall_jij_45", "jsCall_jij_46", "jsCall_jij_47", "jsCall_jij_48", "jsCall_jij_49", "jsCall_jij_50", "jsCall_jij_51", "jsCall_jij_52", "jsCall_jij_53", "jsCall_jij_54", "jsCall_jij_55", "jsCall_jij_56", "jsCall_jij_57", "jsCall_jij_58", "jsCall_jij_59", "jsCall_jij_60", "jsCall_jij_61", "jsCall_jij_62", "jsCall_jij_63", "jsCall_jij_64", "jsCall_jij_65", "jsCall_jij_66", "jsCall_jij_67", "jsCall_jij_68", "jsCall_jij_69", "jsCall_jij_70", "jsCall_jij_71", "jsCall_jij_72", "jsCall_jij_73", "jsCall_jij_74", "jsCall_jij_75", "jsCall_jij_76", "jsCall_jij_77", "jsCall_jij_78", "jsCall_jij_79", "jsCall_jij_80", "jsCall_jij_81", "jsCall_jij_82", "jsCall_jij_83", "jsCall_jij_84", "jsCall_jij_85", "jsCall_jij_86", "jsCall_jij_87", "jsCall_jij_88", "jsCall_jij_89", "jsCall_jij_90", "jsCall_jij_91", "jsCall_jij_92", "jsCall_jij_93", "jsCall_jij_94", "jsCall_jij_95", "jsCall_jij_96", "jsCall_jij_97", "jsCall_jij_98", "jsCall_jij_99", "_get_delay", 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]; +var debug_table_jiji = [0, "jsCall_jiji_0", "jsCall_jiji_1", "jsCall_jiji_2", "jsCall_jiji_3", "jsCall_jiji_4", "jsCall_jiji_5", "jsCall_jiji_6", "jsCall_jiji_7", "jsCall_jiji_8", "jsCall_jiji_9", "jsCall_jiji_10", "jsCall_jiji_11", "jsCall_jiji_12", "jsCall_jiji_13", "jsCall_jiji_14", "jsCall_jiji_15", "jsCall_jiji_16", "jsCall_jiji_17", "jsCall_jiji_18", "jsCall_jiji_19", "jsCall_jiji_20", "jsCall_jiji_21", "jsCall_jiji_22", "jsCall_jiji_23", "jsCall_jiji_24", "jsCall_jiji_25", "jsCall_jiji_26", "jsCall_jiji_27", "jsCall_jiji_28", "jsCall_jiji_29", "jsCall_jiji_30", "jsCall_jiji_31", "jsCall_jiji_32", "jsCall_jiji_33", "jsCall_jiji_34", "jsCall_jiji_35", "jsCall_jiji_36", "jsCall_jiji_37", "jsCall_jiji_38", "jsCall_jiji_39", "jsCall_jiji_40", "jsCall_jiji_41", "jsCall_jiji_42", "jsCall_jiji_43", "jsCall_jiji_44", "jsCall_jiji_45", "jsCall_jiji_46", "jsCall_jiji_47", "jsCall_jiji_48", "jsCall_jiji_49", "jsCall_jiji_50", "jsCall_jiji_51", "jsCall_jiji_52", "jsCall_jiji_53", "jsCall_jiji_54", "jsCall_jiji_55", "jsCall_jiji_56", "jsCall_jiji_57", "jsCall_jiji_58", "jsCall_jiji_59", "jsCall_jiji_60", "jsCall_jiji_61", "jsCall_jiji_62", "jsCall_jiji_63", "jsCall_jiji_64", "jsCall_jiji_65", "jsCall_jiji_66", "jsCall_jiji_67", "jsCall_jiji_68", "jsCall_jiji_69", "jsCall_jiji_70", "jsCall_jiji_71", "jsCall_jiji_72", "jsCall_jiji_73", "jsCall_jiji_74", "jsCall_jiji_75", "jsCall_jiji_76", "jsCall_jiji_77", "jsCall_jiji_78", "jsCall_jiji_79", "jsCall_jiji_80", "jsCall_jiji_81", "jsCall_jiji_82", "jsCall_jiji_83", "jsCall_jiji_84", "jsCall_jiji_85", "jsCall_jiji_86", "jsCall_jiji_87", "jsCall_jiji_88", "jsCall_jiji_89", "jsCall_jiji_90", "jsCall_jiji_91", "jsCall_jiji_92", "jsCall_jiji_93", "jsCall_jiji_94", "jsCall_jiji_95", "jsCall_jiji_96", "jsCall_jiji_97", "jsCall_jiji_98", "jsCall_jiji_99", "___stdio_seek", "___emscripten_stdout_seek", "_seek_in_buffer", "_io_seek", "_dyn_buf_seek", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_v = [0, "jsCall_v_0", "jsCall_v_1", "jsCall_v_2", "jsCall_v_3", "jsCall_v_4", "jsCall_v_5", "jsCall_v_6", "jsCall_v_7", "jsCall_v_8", "jsCall_v_9", "jsCall_v_10", "jsCall_v_11", "jsCall_v_12", "jsCall_v_13", "jsCall_v_14", "jsCall_v_15", "jsCall_v_16", "jsCall_v_17", "jsCall_v_18", "jsCall_v_19", "jsCall_v_20", "jsCall_v_21", "jsCall_v_22", "jsCall_v_23", "jsCall_v_24", "jsCall_v_25", "jsCall_v_26", "jsCall_v_27", "jsCall_v_28", "jsCall_v_29", "jsCall_v_30", "jsCall_v_31", "jsCall_v_32", "jsCall_v_33", "jsCall_v_34", "jsCall_v_35", "jsCall_v_36", "jsCall_v_37", "jsCall_v_38", "jsCall_v_39", "jsCall_v_40", "jsCall_v_41", "jsCall_v_42", "jsCall_v_43", "jsCall_v_44", "jsCall_v_45", "jsCall_v_46", "jsCall_v_47", "jsCall_v_48", "jsCall_v_49", "jsCall_v_50", "jsCall_v_51", "jsCall_v_52", "jsCall_v_53", "jsCall_v_54", "jsCall_v_55", "jsCall_v_56", "jsCall_v_57", "jsCall_v_58", "jsCall_v_59", "jsCall_v_60", "jsCall_v_61", "jsCall_v_62", "jsCall_v_63", "jsCall_v_64", "jsCall_v_65", "jsCall_v_66", "jsCall_v_67", "jsCall_v_68", "jsCall_v_69", "jsCall_v_70", "jsCall_v_71", "jsCall_v_72", "jsCall_v_73", "jsCall_v_74", "jsCall_v_75", "jsCall_v_76", "jsCall_v_77", "jsCall_v_78", "jsCall_v_79", "jsCall_v_80", "jsCall_v_81", "jsCall_v_82", "jsCall_v_83", "jsCall_v_84", "jsCall_v_85", "jsCall_v_86", "jsCall_v_87", "jsCall_v_88", "jsCall_v_89", "jsCall_v_90", "jsCall_v_91", "jsCall_v_92", "jsCall_v_93", "jsCall_v_94", "jsCall_v_95", "jsCall_v_96", "jsCall_v_97", "jsCall_v_98", "jsCall_v_99", "_init_ff_cos_tabs_16", "_init_ff_cos_tabs_32", "_init_ff_cos_tabs_64", "_init_ff_cos_tabs_128", "_init_ff_cos_tabs_256", "_init_ff_cos_tabs_512", "_init_ff_cos_tabs_1024", "_init_ff_cos_tabs_2048", "_init_ff_cos_tabs_4096", "_init_ff_cos_tabs_8192", "_init_ff_cos_tabs_16384", "_init_ff_cos_tabs_32768", "_init_ff_cos_tabs_65536", "_init_ff_cos_tabs_131072", "_introduce_mine", "_introduceMineFunc", "_av_format_init_next", "_av_codec_init_static", "_av_codec_init_next", "_ff_init_mpadsp_tabs_float", "_ff_init_mpadsp_tabs_fixed", "_aac_static_table_init", "_AV_CRC_8_ATM_init_table_once", "_AV_CRC_8_EBU_init_table_once", "_AV_CRC_16_ANSI_init_table_once", "_AV_CRC_16_CCITT_init_table_once", "_AV_CRC_24_IEEE_init_table_once", "_AV_CRC_32_IEEE_init_table_once", "_AV_CRC_32_IEEE_LE_init_table_once", "_AV_CRC_16_ANSI_LE_init_table_once", 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, 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, 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, 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]; +var debug_table_vdiidiiiii = [0, "jsCall_vdiidiiiii_0", "jsCall_vdiidiiiii_1", "jsCall_vdiidiiiii_2", "jsCall_vdiidiiiii_3", "jsCall_vdiidiiiii_4", "jsCall_vdiidiiiii_5", "jsCall_vdiidiiiii_6", "jsCall_vdiidiiiii_7", "jsCall_vdiidiiiii_8", "jsCall_vdiidiiiii_9", "jsCall_vdiidiiiii_10", "jsCall_vdiidiiiii_11", "jsCall_vdiidiiiii_12", "jsCall_vdiidiiiii_13", "jsCall_vdiidiiiii_14", "jsCall_vdiidiiiii_15", "jsCall_vdiidiiiii_16", "jsCall_vdiidiiiii_17", "jsCall_vdiidiiiii_18", "jsCall_vdiidiiiii_19", "jsCall_vdiidiiiii_20", "jsCall_vdiidiiiii_21", "jsCall_vdiidiiiii_22", "jsCall_vdiidiiiii_23", "jsCall_vdiidiiiii_24", "jsCall_vdiidiiiii_25", "jsCall_vdiidiiiii_26", "jsCall_vdiidiiiii_27", "jsCall_vdiidiiiii_28", "jsCall_vdiidiiiii_29", "jsCall_vdiidiiiii_30", "jsCall_vdiidiiiii_31", "jsCall_vdiidiiiii_32", "jsCall_vdiidiiiii_33", "jsCall_vdiidiiiii_34", "jsCall_vdiidiiiii_35", "jsCall_vdiidiiiii_36", "jsCall_vdiidiiiii_37", "jsCall_vdiidiiiii_38", "jsCall_vdiidiiiii_39", "jsCall_vdiidiiiii_40", "jsCall_vdiidiiiii_41", "jsCall_vdiidiiiii_42", "jsCall_vdiidiiiii_43", "jsCall_vdiidiiiii_44", "jsCall_vdiidiiiii_45", "jsCall_vdiidiiiii_46", "jsCall_vdiidiiiii_47", "jsCall_vdiidiiiii_48", "jsCall_vdiidiiiii_49", "jsCall_vdiidiiiii_50", "jsCall_vdiidiiiii_51", "jsCall_vdiidiiiii_52", "jsCall_vdiidiiiii_53", "jsCall_vdiidiiiii_54", "jsCall_vdiidiiiii_55", "jsCall_vdiidiiiii_56", "jsCall_vdiidiiiii_57", "jsCall_vdiidiiiii_58", "jsCall_vdiidiiiii_59", "jsCall_vdiidiiiii_60", "jsCall_vdiidiiiii_61", "jsCall_vdiidiiiii_62", "jsCall_vdiidiiiii_63", "jsCall_vdiidiiiii_64", "jsCall_vdiidiiiii_65", "jsCall_vdiidiiiii_66", "jsCall_vdiidiiiii_67", "jsCall_vdiidiiiii_68", "jsCall_vdiidiiiii_69", "jsCall_vdiidiiiii_70", "jsCall_vdiidiiiii_71", "jsCall_vdiidiiiii_72", "jsCall_vdiidiiiii_73", "jsCall_vdiidiiiii_74", "jsCall_vdiidiiiii_75", "jsCall_vdiidiiiii_76", "jsCall_vdiidiiiii_77", "jsCall_vdiidiiiii_78", "jsCall_vdiidiiiii_79", "jsCall_vdiidiiiii_80", "jsCall_vdiidiiiii_81", "jsCall_vdiidiiiii_82", "jsCall_vdiidiiiii_83", "jsCall_vdiidiiiii_84", "jsCall_vdiidiiiii_85", "jsCall_vdiidiiiii_86", "jsCall_vdiidiiiii_87", "jsCall_vdiidiiiii_88", "jsCall_vdiidiiiii_89", "jsCall_vdiidiiiii_90", "jsCall_vdiidiiiii_91", "jsCall_vdiidiiiii_92", "jsCall_vdiidiiiii_93", "jsCall_vdiidiiiii_94", "jsCall_vdiidiiiii_95", "jsCall_vdiidiiiii_96", "jsCall_vdiidiiiii_97", "jsCall_vdiidiiiii_98", "jsCall_vdiidiiiii_99", 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]; +var debug_table_vdiidiiiiii = [0, "jsCall_vdiidiiiiii_0", "jsCall_vdiidiiiiii_1", "jsCall_vdiidiiiiii_2", "jsCall_vdiidiiiiii_3", "jsCall_vdiidiiiiii_4", "jsCall_vdiidiiiiii_5", "jsCall_vdiidiiiiii_6", "jsCall_vdiidiiiiii_7", "jsCall_vdiidiiiiii_8", "jsCall_vdiidiiiiii_9", "jsCall_vdiidiiiiii_10", "jsCall_vdiidiiiiii_11", "jsCall_vdiidiiiiii_12", "jsCall_vdiidiiiiii_13", "jsCall_vdiidiiiiii_14", "jsCall_vdiidiiiiii_15", "jsCall_vdiidiiiiii_16", "jsCall_vdiidiiiiii_17", "jsCall_vdiidiiiiii_18", "jsCall_vdiidiiiiii_19", "jsCall_vdiidiiiiii_20", "jsCall_vdiidiiiiii_21", "jsCall_vdiidiiiiii_22", "jsCall_vdiidiiiiii_23", "jsCall_vdiidiiiiii_24", "jsCall_vdiidiiiiii_25", "jsCall_vdiidiiiiii_26", "jsCall_vdiidiiiiii_27", "jsCall_vdiidiiiiii_28", "jsCall_vdiidiiiiii_29", "jsCall_vdiidiiiiii_30", "jsCall_vdiidiiiiii_31", "jsCall_vdiidiiiiii_32", "jsCall_vdiidiiiiii_33", "jsCall_vdiidiiiiii_34", "jsCall_vdiidiiiiii_35", "jsCall_vdiidiiiiii_36", "jsCall_vdiidiiiiii_37", "jsCall_vdiidiiiiii_38", "jsCall_vdiidiiiiii_39", "jsCall_vdiidiiiiii_40", "jsCall_vdiidiiiiii_41", "jsCall_vdiidiiiiii_42", "jsCall_vdiidiiiiii_43", "jsCall_vdiidiiiiii_44", "jsCall_vdiidiiiiii_45", "jsCall_vdiidiiiiii_46", "jsCall_vdiidiiiiii_47", "jsCall_vdiidiiiiii_48", "jsCall_vdiidiiiiii_49", "jsCall_vdiidiiiiii_50", "jsCall_vdiidiiiiii_51", "jsCall_vdiidiiiiii_52", "jsCall_vdiidiiiiii_53", "jsCall_vdiidiiiiii_54", "jsCall_vdiidiiiiii_55", "jsCall_vdiidiiiiii_56", "jsCall_vdiidiiiiii_57", "jsCall_vdiidiiiiii_58", "jsCall_vdiidiiiiii_59", "jsCall_vdiidiiiiii_60", "jsCall_vdiidiiiiii_61", "jsCall_vdiidiiiiii_62", "jsCall_vdiidiiiiii_63", "jsCall_vdiidiiiiii_64", "jsCall_vdiidiiiiii_65", "jsCall_vdiidiiiiii_66", "jsCall_vdiidiiiiii_67", "jsCall_vdiidiiiiii_68", "jsCall_vdiidiiiiii_69", "jsCall_vdiidiiiiii_70", "jsCall_vdiidiiiiii_71", "jsCall_vdiidiiiiii_72", "jsCall_vdiidiiiiii_73", "jsCall_vdiidiiiiii_74", "jsCall_vdiidiiiiii_75", "jsCall_vdiidiiiiii_76", "jsCall_vdiidiiiiii_77", "jsCall_vdiidiiiiii_78", "jsCall_vdiidiiiiii_79", "jsCall_vdiidiiiiii_80", "jsCall_vdiidiiiiii_81", "jsCall_vdiidiiiiii_82", "jsCall_vdiidiiiiii_83", "jsCall_vdiidiiiiii_84", "jsCall_vdiidiiiiii_85", "jsCall_vdiidiiiiii_86", "jsCall_vdiidiiiiii_87", "jsCall_vdiidiiiiii_88", "jsCall_vdiidiiiiii_89", "jsCall_vdiidiiiiii_90", "jsCall_vdiidiiiiii_91", "jsCall_vdiidiiiiii_92", "jsCall_vdiidiiiiii_93", "jsCall_vdiidiiiiii_94", "jsCall_vdiidiiiiii_95", "jsCall_vdiidiiiiii_96", "jsCall_vdiidiiiiii_97", "jsCall_vdiidiiiiii_98", "jsCall_vdiidiiiiii_99", 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]; +var debug_table_vi = [0, "jsCall_vi_0", "jsCall_vi_1", "jsCall_vi_2", "jsCall_vi_3", "jsCall_vi_4", "jsCall_vi_5", "jsCall_vi_6", "jsCall_vi_7", "jsCall_vi_8", "jsCall_vi_9", "jsCall_vi_10", "jsCall_vi_11", "jsCall_vi_12", "jsCall_vi_13", "jsCall_vi_14", "jsCall_vi_15", "jsCall_vi_16", "jsCall_vi_17", "jsCall_vi_18", "jsCall_vi_19", "jsCall_vi_20", "jsCall_vi_21", "jsCall_vi_22", "jsCall_vi_23", "jsCall_vi_24", "jsCall_vi_25", "jsCall_vi_26", "jsCall_vi_27", "jsCall_vi_28", "jsCall_vi_29", "jsCall_vi_30", "jsCall_vi_31", "jsCall_vi_32", "jsCall_vi_33", "jsCall_vi_34", "jsCall_vi_35", "jsCall_vi_36", "jsCall_vi_37", "jsCall_vi_38", "jsCall_vi_39", "jsCall_vi_40", "jsCall_vi_41", "jsCall_vi_42", "jsCall_vi_43", "jsCall_vi_44", "jsCall_vi_45", "jsCall_vi_46", "jsCall_vi_47", "jsCall_vi_48", "jsCall_vi_49", "jsCall_vi_50", "jsCall_vi_51", "jsCall_vi_52", "jsCall_vi_53", "jsCall_vi_54", "jsCall_vi_55", "jsCall_vi_56", "jsCall_vi_57", "jsCall_vi_58", "jsCall_vi_59", "jsCall_vi_60", "jsCall_vi_61", "jsCall_vi_62", "jsCall_vi_63", "jsCall_vi_64", "jsCall_vi_65", "jsCall_vi_66", "jsCall_vi_67", "jsCall_vi_68", "jsCall_vi_69", "jsCall_vi_70", "jsCall_vi_71", "jsCall_vi_72", "jsCall_vi_73", "jsCall_vi_74", "jsCall_vi_75", "jsCall_vi_76", "jsCall_vi_77", "jsCall_vi_78", "jsCall_vi_79", "jsCall_vi_80", "jsCall_vi_81", "jsCall_vi_82", "jsCall_vi_83", "jsCall_vi_84", "jsCall_vi_85", "jsCall_vi_86", "jsCall_vi_87", "jsCall_vi_88", "jsCall_vi_89", "jsCall_vi_90", "jsCall_vi_91", "jsCall_vi_92", "jsCall_vi_93", "jsCall_vi_94", "jsCall_vi_95", "jsCall_vi_96", "jsCall_vi_97", "jsCall_vi_98", "jsCall_vi_99", "_free_geobtag", "_free_apic", "_free_chapter", "_free_priv", "_hevc_decode_flush", "_flush", "_flush_3923", "_fft4", "_fft8", "_fft16", "_fft32", "_fft64", "_fft128", "_fft256", "_fft512", "_fft1024", "_fft2048", "_fft4096", "_fft8192", "_fft16384", "_fft32768", "_fft65536", "_fft131072", "_h264_close", "_hevc_parser_close", "_ff_parse_close", "_resample_free", "_logRequest_downloadSucceeded", "_logRequest_downloadFailed", "_downloadSucceeded", "_downloadFailed", "_transform_4x4_luma_9", "_idct_4x4_dc_9", "_idct_8x8_dc_9", "_idct_16x16_dc_9", "_idct_32x32_dc_9", "_transform_4x4_luma_10", "_idct_4x4_dc_10", "_idct_8x8_dc_10", "_idct_16x16_dc_10", "_idct_32x32_dc_10", "_transform_4x4_luma_12", "_idct_4x4_dc_12", "_idct_8x8_dc_12", "_idct_16x16_dc_12", "_idct_32x32_dc_12", "_transform_4x4_luma_8", "_idct_4x4_dc_8", "_idct_8x8_dc_8", "_idct_16x16_dc_8", "_idct_32x32_dc_8", "_main_function", "_sbr_sum64x5_c", "_sbr_neg_odd_64_c", "_sbr_qmf_pre_shuffle_c", 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, 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, 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, 0]; +var debug_table_vii = [0, "jsCall_vii_0", "jsCall_vii_1", "jsCall_vii_2", "jsCall_vii_3", "jsCall_vii_4", "jsCall_vii_5", "jsCall_vii_6", "jsCall_vii_7", "jsCall_vii_8", "jsCall_vii_9", "jsCall_vii_10", "jsCall_vii_11", "jsCall_vii_12", "jsCall_vii_13", "jsCall_vii_14", "jsCall_vii_15", "jsCall_vii_16", "jsCall_vii_17", "jsCall_vii_18", "jsCall_vii_19", "jsCall_vii_20", "jsCall_vii_21", "jsCall_vii_22", "jsCall_vii_23", "jsCall_vii_24", "jsCall_vii_25", "jsCall_vii_26", "jsCall_vii_27", "jsCall_vii_28", "jsCall_vii_29", "jsCall_vii_30", "jsCall_vii_31", "jsCall_vii_32", "jsCall_vii_33", "jsCall_vii_34", "jsCall_vii_35", "jsCall_vii_36", "jsCall_vii_37", "jsCall_vii_38", "jsCall_vii_39", "jsCall_vii_40", "jsCall_vii_41", "jsCall_vii_42", "jsCall_vii_43", "jsCall_vii_44", "jsCall_vii_45", "jsCall_vii_46", "jsCall_vii_47", "jsCall_vii_48", "jsCall_vii_49", "jsCall_vii_50", "jsCall_vii_51", "jsCall_vii_52", "jsCall_vii_53", "jsCall_vii_54", "jsCall_vii_55", "jsCall_vii_56", "jsCall_vii_57", "jsCall_vii_58", "jsCall_vii_59", "jsCall_vii_60", "jsCall_vii_61", "jsCall_vii_62", "jsCall_vii_63", "jsCall_vii_64", "jsCall_vii_65", "jsCall_vii_66", "jsCall_vii_67", "jsCall_vii_68", "jsCall_vii_69", "jsCall_vii_70", "jsCall_vii_71", "jsCall_vii_72", "jsCall_vii_73", "jsCall_vii_74", "jsCall_vii_75", "jsCall_vii_76", "jsCall_vii_77", "jsCall_vii_78", "jsCall_vii_79", "jsCall_vii_80", "jsCall_vii_81", "jsCall_vii_82", "jsCall_vii_83", "jsCall_vii_84", "jsCall_vii_85", "jsCall_vii_86", "jsCall_vii_87", "jsCall_vii_88", "jsCall_vii_89", "jsCall_vii_90", "jsCall_vii_91", "jsCall_vii_92", "jsCall_vii_93", "jsCall_vii_94", "jsCall_vii_95", "jsCall_vii_96", "jsCall_vii_97", "jsCall_vii_98", "jsCall_vii_99", "_io_close_default", "_lumRangeFromJpeg_c", "_lumRangeToJpeg_c", "_lumRangeFromJpeg16_c", "_lumRangeToJpeg16_c", "_decode_data_free", "_dequant_9", "_idct_4x4_9", "_idct_8x8_9", "_idct_16x16_9", "_idct_32x32_9", "_dequant_10", "_idct_4x4_10", "_idct_8x8_10", "_idct_16x16_10", "_idct_32x32_10", "_dequant_12", "_idct_4x4_12", "_idct_8x8_12", "_idct_16x16_12", "_idct_32x32_12", "_dequant_8", "_idct_4x4_8", "_idct_8x8_8", "_idct_16x16_8", "_idct_32x32_8", "_ff_dct32_fixed", "_imdct_and_windowing", "_apply_ltp", "_update_ltp", "_imdct_and_windowing_ld", "_imdct_and_windowing_eld", "_imdct_and_windowing_960", "_ff_dct32_float", "_dct32_func", "_dct_calc_I_c", "_dct_calc_II_c", "_dct_calc_III_c", "_dst_calc_I_c", "_fft_permute_c", "_fft_calc_c", "_ff_h264_chroma_dc_dequant_idct_9_c", "_ff_h264_chroma422_dc_dequant_idct_9_c", "_ff_h264_chroma_dc_dequant_idct_10_c", "_ff_h264_chroma422_dc_dequant_idct_10_c", "_ff_h264_chroma_dc_dequant_idct_12_c", "_ff_h264_chroma422_dc_dequant_idct_12_c", "_ff_h264_chroma_dc_dequant_idct_14_c", "_ff_h264_chroma422_dc_dequant_idct_14_c", "_ff_h264_chroma_dc_dequant_idct_8_c", "_ff_h264_chroma422_dc_dequant_idct_8_c", "_hevc_pps_free", "_rdft_calc_c", "_sbr_qmf_post_shuffle_c", "_sbr_qmf_deint_neg_c", "_sbr_autocorrelate_c", "_av_buffer_default_free", "_pool_release_buffer", "_sha1_transform", "_sha256_transform", "_pop_arg_long_double", 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, 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, 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]; +var debug_table_viidi = [0, "jsCall_viidi_0", "jsCall_viidi_1", "jsCall_viidi_2", "jsCall_viidi_3", "jsCall_viidi_4", "jsCall_viidi_5", "jsCall_viidi_6", "jsCall_viidi_7", "jsCall_viidi_8", "jsCall_viidi_9", "jsCall_viidi_10", "jsCall_viidi_11", "jsCall_viidi_12", "jsCall_viidi_13", "jsCall_viidi_14", "jsCall_viidi_15", "jsCall_viidi_16", "jsCall_viidi_17", "jsCall_viidi_18", "jsCall_viidi_19", "jsCall_viidi_20", "jsCall_viidi_21", "jsCall_viidi_22", "jsCall_viidi_23", "jsCall_viidi_24", "jsCall_viidi_25", "jsCall_viidi_26", "jsCall_viidi_27", "jsCall_viidi_28", "jsCall_viidi_29", "jsCall_viidi_30", "jsCall_viidi_31", "jsCall_viidi_32", "jsCall_viidi_33", "jsCall_viidi_34", "jsCall_viidi_35", "jsCall_viidi_36", "jsCall_viidi_37", "jsCall_viidi_38", "jsCall_viidi_39", "jsCall_viidi_40", "jsCall_viidi_41", "jsCall_viidi_42", "jsCall_viidi_43", "jsCall_viidi_44", "jsCall_viidi_45", "jsCall_viidi_46", "jsCall_viidi_47", "jsCall_viidi_48", "jsCall_viidi_49", "jsCall_viidi_50", "jsCall_viidi_51", "jsCall_viidi_52", "jsCall_viidi_53", "jsCall_viidi_54", "jsCall_viidi_55", "jsCall_viidi_56", "jsCall_viidi_57", "jsCall_viidi_58", "jsCall_viidi_59", "jsCall_viidi_60", "jsCall_viidi_61", "jsCall_viidi_62", "jsCall_viidi_63", "jsCall_viidi_64", "jsCall_viidi_65", "jsCall_viidi_66", "jsCall_viidi_67", "jsCall_viidi_68", "jsCall_viidi_69", "jsCall_viidi_70", "jsCall_viidi_71", "jsCall_viidi_72", "jsCall_viidi_73", "jsCall_viidi_74", "jsCall_viidi_75", "jsCall_viidi_76", "jsCall_viidi_77", "jsCall_viidi_78", "jsCall_viidi_79", "jsCall_viidi_80", "jsCall_viidi_81", "jsCall_viidi_82", "jsCall_viidi_83", "jsCall_viidi_84", "jsCall_viidi_85", "jsCall_viidi_86", "jsCall_viidi_87", "jsCall_viidi_88", "jsCall_viidi_89", "jsCall_viidi_90", "jsCall_viidi_91", "jsCall_viidi_92", "jsCall_viidi_93", "jsCall_viidi_94", "jsCall_viidi_95", "jsCall_viidi_96", "jsCall_viidi_97", "jsCall_viidi_98", "jsCall_viidi_99", "_vector_dmac_scalar_c", "_vector_dmul_scalar_c", 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]; +var debug_table_viifi = [0, "jsCall_viifi_0", "jsCall_viifi_1", "jsCall_viifi_2", "jsCall_viifi_3", "jsCall_viifi_4", "jsCall_viifi_5", "jsCall_viifi_6", "jsCall_viifi_7", "jsCall_viifi_8", "jsCall_viifi_9", "jsCall_viifi_10", "jsCall_viifi_11", "jsCall_viifi_12", "jsCall_viifi_13", "jsCall_viifi_14", "jsCall_viifi_15", "jsCall_viifi_16", "jsCall_viifi_17", "jsCall_viifi_18", "jsCall_viifi_19", "jsCall_viifi_20", "jsCall_viifi_21", "jsCall_viifi_22", "jsCall_viifi_23", "jsCall_viifi_24", "jsCall_viifi_25", "jsCall_viifi_26", "jsCall_viifi_27", "jsCall_viifi_28", "jsCall_viifi_29", "jsCall_viifi_30", "jsCall_viifi_31", "jsCall_viifi_32", "jsCall_viifi_33", "jsCall_viifi_34", "jsCall_viifi_35", "jsCall_viifi_36", "jsCall_viifi_37", "jsCall_viifi_38", "jsCall_viifi_39", "jsCall_viifi_40", "jsCall_viifi_41", "jsCall_viifi_42", "jsCall_viifi_43", "jsCall_viifi_44", "jsCall_viifi_45", "jsCall_viifi_46", "jsCall_viifi_47", "jsCall_viifi_48", "jsCall_viifi_49", "jsCall_viifi_50", "jsCall_viifi_51", "jsCall_viifi_52", "jsCall_viifi_53", "jsCall_viifi_54", "jsCall_viifi_55", "jsCall_viifi_56", "jsCall_viifi_57", "jsCall_viifi_58", "jsCall_viifi_59", "jsCall_viifi_60", "jsCall_viifi_61", "jsCall_viifi_62", "jsCall_viifi_63", "jsCall_viifi_64", "jsCall_viifi_65", "jsCall_viifi_66", "jsCall_viifi_67", "jsCall_viifi_68", "jsCall_viifi_69", "jsCall_viifi_70", "jsCall_viifi_71", "jsCall_viifi_72", "jsCall_viifi_73", "jsCall_viifi_74", "jsCall_viifi_75", "jsCall_viifi_76", "jsCall_viifi_77", "jsCall_viifi_78", "jsCall_viifi_79", "jsCall_viifi_80", "jsCall_viifi_81", "jsCall_viifi_82", "jsCall_viifi_83", "jsCall_viifi_84", "jsCall_viifi_85", "jsCall_viifi_86", "jsCall_viifi_87", "jsCall_viifi_88", "jsCall_viifi_89", "jsCall_viifi_90", "jsCall_viifi_91", "jsCall_viifi_92", "jsCall_viifi_93", "jsCall_viifi_94", "jsCall_viifi_95", "jsCall_viifi_96", "jsCall_viifi_97", "jsCall_viifi_98", "jsCall_viifi_99", "_vector_fmac_scalar_c", "_vector_fmul_scalar_c", 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]; +var debug_table_viii = [0, "jsCall_viii_0", "jsCall_viii_1", "jsCall_viii_2", "jsCall_viii_3", "jsCall_viii_4", "jsCall_viii_5", "jsCall_viii_6", "jsCall_viii_7", "jsCall_viii_8", "jsCall_viii_9", "jsCall_viii_10", "jsCall_viii_11", "jsCall_viii_12", "jsCall_viii_13", "jsCall_viii_14", "jsCall_viii_15", "jsCall_viii_16", "jsCall_viii_17", "jsCall_viii_18", "jsCall_viii_19", "jsCall_viii_20", "jsCall_viii_21", "jsCall_viii_22", "jsCall_viii_23", "jsCall_viii_24", "jsCall_viii_25", "jsCall_viii_26", "jsCall_viii_27", "jsCall_viii_28", "jsCall_viii_29", "jsCall_viii_30", "jsCall_viii_31", "jsCall_viii_32", "jsCall_viii_33", "jsCall_viii_34", "jsCall_viii_35", "jsCall_viii_36", "jsCall_viii_37", "jsCall_viii_38", "jsCall_viii_39", "jsCall_viii_40", "jsCall_viii_41", "jsCall_viii_42", "jsCall_viii_43", "jsCall_viii_44", "jsCall_viii_45", "jsCall_viii_46", "jsCall_viii_47", "jsCall_viii_48", "jsCall_viii_49", "jsCall_viii_50", "jsCall_viii_51", "jsCall_viii_52", "jsCall_viii_53", "jsCall_viii_54", "jsCall_viii_55", "jsCall_viii_56", "jsCall_viii_57", "jsCall_viii_58", "jsCall_viii_59", "jsCall_viii_60", "jsCall_viii_61", "jsCall_viii_62", "jsCall_viii_63", "jsCall_viii_64", "jsCall_viii_65", "jsCall_viii_66", "jsCall_viii_67", "jsCall_viii_68", "jsCall_viii_69", "jsCall_viii_70", "jsCall_viii_71", "jsCall_viii_72", "jsCall_viii_73", "jsCall_viii_74", "jsCall_viii_75", "jsCall_viii_76", "jsCall_viii_77", "jsCall_viii_78", "jsCall_viii_79", "jsCall_viii_80", "jsCall_viii_81", "jsCall_viii_82", "jsCall_viii_83", "jsCall_viii_84", "jsCall_viii_85", "jsCall_viii_86", "jsCall_viii_87", "jsCall_viii_88", "jsCall_viii_89", "jsCall_viii_90", "jsCall_viii_91", "jsCall_viii_92", "jsCall_viii_93", "jsCall_viii_94", "jsCall_viii_95", "jsCall_viii_96", "jsCall_viii_97", "jsCall_viii_98", "jsCall_viii_99", "_avcHandleFrame", "_handleFrame", "_sdt_cb", "_pat_cb", "_pmt_cb", "_scte_data_cb", "_m4sl_cb", "_chrRangeFromJpeg_c", "_chrRangeToJpeg_c", "_chrRangeFromJpeg16_c", "_chrRangeToJpeg16_c", "_rgb15to16_c", "_rgb15tobgr24_c", "_rgb15to32_c", "_rgb16tobgr24_c", "_rgb16to32_c", "_rgb16to15_c", "_rgb24tobgr16_c", "_rgb24tobgr15_c", "_rgb24tobgr32_c", "_rgb32to16_c", "_rgb32to15_c", "_rgb32tobgr24_c", "_rgb24to15_c", "_rgb24to16_c", "_rgb24tobgr24_c", "_shuffle_bytes_0321_c", "_shuffle_bytes_2103_c", "_shuffle_bytes_1230_c", "_shuffle_bytes_3012_c", "_shuffle_bytes_3210_c", "_rgb32tobgr16_c", "_rgb32tobgr15_c", "_rgb48tobgr48_bswap", "_rgb48tobgr64_bswap", "_rgb48to64_bswap", "_rgb64to48_bswap", "_rgb48tobgr48_nobswap", "_rgb48tobgr64_nobswap", "_rgb48to64_nobswap", "_rgb64tobgr48_nobswap", "_rgb64tobgr48_bswap", "_rgb64to48_nobswap", "_rgb12to15", "_rgb15to24", "_rgb16to24", "_rgb32to24", "_rgb24to32", "_rgb12tobgr12", "_rgb15tobgr15", "_rgb16tobgr15", "_rgb15tobgr16", "_rgb16tobgr16", "_rgb15tobgr32", "_rgb16tobgr32", "_add_residual4x4_9", "_add_residual8x8_9", "_add_residual16x16_9", "_add_residual32x32_9", "_transform_rdpcm_9", "_add_residual4x4_10", "_add_residual8x8_10", "_add_residual16x16_10", "_add_residual32x32_10", "_transform_rdpcm_10", "_add_residual4x4_12", "_add_residual8x8_12", "_add_residual16x16_12", "_add_residual32x32_12", "_transform_rdpcm_12", "_add_residual4x4_8", "_add_residual8x8_8", "_add_residual16x16_8", "_add_residual32x32_8", "_transform_rdpcm_8", "_just_return", "_bswap_buf", "_bswap16_buf", "_ff_imdct_calc_c", "_ff_imdct_half_c", "_ff_mdct_calc_c", "_ff_h264_add_pixels4_16_c", "_ff_h264_add_pixels4_8_c", "_ff_h264_add_pixels8_16_c", "_ff_h264_add_pixels8_8_c", "_ff_h264_idct_add_9_c", "_ff_h264_idct8_add_9_c", "_ff_h264_idct_dc_add_9_c", "_ff_h264_idct8_dc_add_9_c", "_ff_h264_luma_dc_dequant_idct_9_c", "_ff_h264_idct_add_10_c", "_ff_h264_idct8_add_10_c", "_ff_h264_idct_dc_add_10_c", "_ff_h264_idct8_dc_add_10_c", "_ff_h264_luma_dc_dequant_idct_10_c", "_ff_h264_idct_add_12_c", "_ff_h264_idct8_add_12_c", "_ff_h264_idct_dc_add_12_c", "_ff_h264_idct8_dc_add_12_c", "_ff_h264_luma_dc_dequant_idct_12_c", "_ff_h264_idct_add_14_c", "_ff_h264_idct8_add_14_c", "_ff_h264_idct_dc_add_14_c", "_ff_h264_idct8_dc_add_14_c", "_ff_h264_luma_dc_dequant_idct_14_c", "_ff_h264_idct_add_8_c", "_ff_h264_idct8_add_8_c", "_ff_h264_idct_dc_add_8_c", "_ff_h264_idct8_dc_add_8_c", "_ff_h264_luma_dc_dequant_idct_8_c", "_sbr_qmf_deint_bfly_c", "_ps_add_squares_c", "_butterflies_float_c", "_cpy1", "_cpy2", "_cpy4", "_cpy8", 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, 0, 0, 0, 0, 0]; +var debug_table_viiid = [0, "jsCall_viiid_0", "jsCall_viiid_1", "jsCall_viiid_2", "jsCall_viiid_3", "jsCall_viiid_4", "jsCall_viiid_5", "jsCall_viiid_6", "jsCall_viiid_7", "jsCall_viiid_8", "jsCall_viiid_9", "jsCall_viiid_10", "jsCall_viiid_11", "jsCall_viiid_12", "jsCall_viiid_13", "jsCall_viiid_14", "jsCall_viiid_15", "jsCall_viiid_16", "jsCall_viiid_17", "jsCall_viiid_18", "jsCall_viiid_19", "jsCall_viiid_20", "jsCall_viiid_21", "jsCall_viiid_22", "jsCall_viiid_23", "jsCall_viiid_24", "jsCall_viiid_25", "jsCall_viiid_26", "jsCall_viiid_27", "jsCall_viiid_28", "jsCall_viiid_29", "jsCall_viiid_30", "jsCall_viiid_31", "jsCall_viiid_32", "jsCall_viiid_33", "jsCall_viiid_34", "jsCall_viiid_35", "jsCall_viiid_36", "jsCall_viiid_37", "jsCall_viiid_38", "jsCall_viiid_39", "jsCall_viiid_40", "jsCall_viiid_41", "jsCall_viiid_42", "jsCall_viiid_43", "jsCall_viiid_44", "jsCall_viiid_45", "jsCall_viiid_46", "jsCall_viiid_47", "jsCall_viiid_48", "jsCall_viiid_49", "jsCall_viiid_50", "jsCall_viiid_51", "jsCall_viiid_52", "jsCall_viiid_53", "jsCall_viiid_54", "jsCall_viiid_55", "jsCall_viiid_56", "jsCall_viiid_57", "jsCall_viiid_58", "jsCall_viiid_59", "jsCall_viiid_60", "jsCall_viiid_61", "jsCall_viiid_62", "jsCall_viiid_63", "jsCall_viiid_64", "jsCall_viiid_65", "jsCall_viiid_66", "jsCall_viiid_67", "jsCall_viiid_68", "jsCall_viiid_69", "jsCall_viiid_70", "jsCall_viiid_71", "jsCall_viiid_72", "jsCall_viiid_73", "jsCall_viiid_74", "jsCall_viiid_75", "jsCall_viiid_76", "jsCall_viiid_77", "jsCall_viiid_78", "jsCall_viiid_79", "jsCall_viiid_80", "jsCall_viiid_81", "jsCall_viiid_82", "jsCall_viiid_83", "jsCall_viiid_84", "jsCall_viiid_85", "jsCall_viiid_86", "jsCall_viiid_87", "jsCall_viiid_88", "jsCall_viiid_89", "jsCall_viiid_90", "jsCall_viiid_91", "jsCall_viiid_92", "jsCall_viiid_93", "jsCall_viiid_94", "jsCall_viiid_95", "jsCall_viiid_96", "jsCall_viiid_97", "jsCall_viiid_98", "jsCall_viiid_99", 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]; +var debug_table_viiii = [0, "jsCall_viiii_0", "jsCall_viiii_1", "jsCall_viiii_2", "jsCall_viiii_3", "jsCall_viiii_4", "jsCall_viiii_5", "jsCall_viiii_6", "jsCall_viiii_7", "jsCall_viiii_8", "jsCall_viiii_9", "jsCall_viiii_10", "jsCall_viiii_11", "jsCall_viiii_12", "jsCall_viiii_13", "jsCall_viiii_14", "jsCall_viiii_15", "jsCall_viiii_16", "jsCall_viiii_17", "jsCall_viiii_18", "jsCall_viiii_19", "jsCall_viiii_20", "jsCall_viiii_21", "jsCall_viiii_22", "jsCall_viiii_23", "jsCall_viiii_24", "jsCall_viiii_25", "jsCall_viiii_26", "jsCall_viiii_27", "jsCall_viiii_28", "jsCall_viiii_29", "jsCall_viiii_30", "jsCall_viiii_31", "jsCall_viiii_32", "jsCall_viiii_33", "jsCall_viiii_34", "jsCall_viiii_35", "jsCall_viiii_36", "jsCall_viiii_37", "jsCall_viiii_38", "jsCall_viiii_39", "jsCall_viiii_40", "jsCall_viiii_41", "jsCall_viiii_42", "jsCall_viiii_43", "jsCall_viiii_44", "jsCall_viiii_45", "jsCall_viiii_46", "jsCall_viiii_47", "jsCall_viiii_48", "jsCall_viiii_49", "jsCall_viiii_50", "jsCall_viiii_51", "jsCall_viiii_52", "jsCall_viiii_53", "jsCall_viiii_54", "jsCall_viiii_55", "jsCall_viiii_56", "jsCall_viiii_57", "jsCall_viiii_58", "jsCall_viiii_59", "jsCall_viiii_60", "jsCall_viiii_61", "jsCall_viiii_62", "jsCall_viiii_63", "jsCall_viiii_64", "jsCall_viiii_65", "jsCall_viiii_66", "jsCall_viiii_67", "jsCall_viiii_68", "jsCall_viiii_69", "jsCall_viiii_70", "jsCall_viiii_71", "jsCall_viiii_72", "jsCall_viiii_73", "jsCall_viiii_74", "jsCall_viiii_75", "jsCall_viiii_76", "jsCall_viiii_77", "jsCall_viiii_78", "jsCall_viiii_79", "jsCall_viiii_80", "jsCall_viiii_81", "jsCall_viiii_82", "jsCall_viiii_83", "jsCall_viiii_84", "jsCall_viiii_85", "jsCall_viiii_86", "jsCall_viiii_87", "jsCall_viiii_88", "jsCall_viiii_89", "jsCall_viiii_90", "jsCall_viiii_91", "jsCall_viiii_92", "jsCall_viiii_93", "jsCall_viiii_94", "jsCall_viiii_95", "jsCall_viiii_96", "jsCall_viiii_97", "jsCall_viiii_98", "jsCall_viiii_99", "_planar_rgb9le_to_y", "_planar_rgb10le_to_a", "_planar_rgb10le_to_y", "_planar_rgb12le_to_a", "_planar_rgb12le_to_y", "_planar_rgb14le_to_y", "_planar_rgb16le_to_a", "_planar_rgb16le_to_y", "_planar_rgb9be_to_y", "_planar_rgb10be_to_a", "_planar_rgb10be_to_y", "_planar_rgb12be_to_a", "_planar_rgb12be_to_y", "_planar_rgb14be_to_y", "_planar_rgb16be_to_a", "_planar_rgb16be_to_y", "_planar_rgb_to_a", "_planar_rgb_to_y", "_gray8aToPacked32", "_gray8aToPacked32_1", "_gray8aToPacked24", "_sws_convertPalette8ToPacked32", "_sws_convertPalette8ToPacked24", "_intra_pred_2_9", "_intra_pred_3_9", "_intra_pred_4_9", "_intra_pred_5_9", "_pred_planar_0_9", "_pred_planar_1_9", "_pred_planar_2_9", "_pred_planar_3_9", "_intra_pred_2_10", "_intra_pred_3_10", "_intra_pred_4_10", "_intra_pred_5_10", "_pred_planar_0_10", "_pred_planar_1_10", "_pred_planar_2_10", "_pred_planar_3_10", "_intra_pred_2_12", "_intra_pred_3_12", "_intra_pred_4_12", "_intra_pred_5_12", "_pred_planar_0_12", "_pred_planar_1_12", "_pred_planar_2_12", "_pred_planar_3_12", "_intra_pred_2_8", "_intra_pred_3_8", "_intra_pred_4_8", "_intra_pred_5_8", "_pred_planar_0_8", "_pred_planar_1_8", "_pred_planar_2_8", "_pred_planar_3_8", "_apply_tns", "_windowing_and_mdct_ltp", "_h264_v_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_intra_9_c", "_h264_h_loop_filter_luma_mbaff_intra_9_c", "_h264_v_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma_intra_9_c", "_h264_h_loop_filter_chroma422_intra_9_c", "_h264_h_loop_filter_chroma_mbaff_intra_9_c", "_h264_h_loop_filter_chroma422_mbaff_intra_9_c", "_h264_v_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_intra_10_c", "_h264_h_loop_filter_luma_mbaff_intra_10_c", "_h264_v_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma_intra_10_c", "_h264_h_loop_filter_chroma422_intra_10_c", "_h264_h_loop_filter_chroma_mbaff_intra_10_c", "_h264_h_loop_filter_chroma422_mbaff_intra_10_c", "_h264_v_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_intra_12_c", "_h264_h_loop_filter_luma_mbaff_intra_12_c", "_h264_v_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma_intra_12_c", "_h264_h_loop_filter_chroma422_intra_12_c", "_h264_h_loop_filter_chroma_mbaff_intra_12_c", "_h264_h_loop_filter_chroma422_mbaff_intra_12_c", "_h264_v_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_intra_14_c", "_h264_h_loop_filter_luma_mbaff_intra_14_c", "_h264_v_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma_intra_14_c", "_h264_h_loop_filter_chroma422_intra_14_c", "_h264_h_loop_filter_chroma_mbaff_intra_14_c", "_h264_h_loop_filter_chroma422_mbaff_intra_14_c", "_h264_v_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_intra_8_c", "_h264_h_loop_filter_luma_mbaff_intra_8_c", "_h264_v_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma_intra_8_c", "_h264_h_loop_filter_chroma422_intra_8_c", "_h264_h_loop_filter_chroma_mbaff_intra_8_c", "_h264_h_loop_filter_chroma422_mbaff_intra_8_c", "_fft15_c", "_mdct15", "_imdct15_half", "_ps_mul_pair_single_c", "_ps_hybrid_analysis_ileave_c", "_ps_hybrid_synthesis_deint_c", "_vector_fmul_c", "_vector_dmul_c", "_vector_fmul_reverse_c", "_av_log_default_callback", "_mix6to2_s16", "_mix8to2_s16", "_mix6to2_clip_s16", "_mix8to2_clip_s16", "_mix6to2_float", "_mix8to2_float", "_mix6to2_double", "_mix8to2_double", "_mix6to2_s32", "_mix8to2_s32", 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, 0, 0, 0, 0, 0]; +var debug_table_viiiifii = [0, "jsCall_viiiifii_0", "jsCall_viiiifii_1", "jsCall_viiiifii_2", "jsCall_viiiifii_3", "jsCall_viiiifii_4", "jsCall_viiiifii_5", "jsCall_viiiifii_6", "jsCall_viiiifii_7", "jsCall_viiiifii_8", "jsCall_viiiifii_9", "jsCall_viiiifii_10", "jsCall_viiiifii_11", "jsCall_viiiifii_12", "jsCall_viiiifii_13", "jsCall_viiiifii_14", "jsCall_viiiifii_15", "jsCall_viiiifii_16", "jsCall_viiiifii_17", "jsCall_viiiifii_18", "jsCall_viiiifii_19", "jsCall_viiiifii_20", "jsCall_viiiifii_21", "jsCall_viiiifii_22", "jsCall_viiiifii_23", "jsCall_viiiifii_24", "jsCall_viiiifii_25", "jsCall_viiiifii_26", "jsCall_viiiifii_27", "jsCall_viiiifii_28", "jsCall_viiiifii_29", "jsCall_viiiifii_30", "jsCall_viiiifii_31", "jsCall_viiiifii_32", "jsCall_viiiifii_33", "jsCall_viiiifii_34", "jsCall_viiiifii_35", "jsCall_viiiifii_36", "jsCall_viiiifii_37", "jsCall_viiiifii_38", "jsCall_viiiifii_39", "jsCall_viiiifii_40", "jsCall_viiiifii_41", "jsCall_viiiifii_42", "jsCall_viiiifii_43", "jsCall_viiiifii_44", "jsCall_viiiifii_45", "jsCall_viiiifii_46", "jsCall_viiiifii_47", "jsCall_viiiifii_48", "jsCall_viiiifii_49", "jsCall_viiiifii_50", "jsCall_viiiifii_51", "jsCall_viiiifii_52", "jsCall_viiiifii_53", "jsCall_viiiifii_54", "jsCall_viiiifii_55", "jsCall_viiiifii_56", "jsCall_viiiifii_57", "jsCall_viiiifii_58", "jsCall_viiiifii_59", "jsCall_viiiifii_60", "jsCall_viiiifii_61", "jsCall_viiiifii_62", "jsCall_viiiifii_63", "jsCall_viiiifii_64", "jsCall_viiiifii_65", "jsCall_viiiifii_66", "jsCall_viiiifii_67", "jsCall_viiiifii_68", "jsCall_viiiifii_69", "jsCall_viiiifii_70", "jsCall_viiiifii_71", "jsCall_viiiifii_72", "jsCall_viiiifii_73", "jsCall_viiiifii_74", "jsCall_viiiifii_75", "jsCall_viiiifii_76", "jsCall_viiiifii_77", "jsCall_viiiifii_78", "jsCall_viiiifii_79", "jsCall_viiiifii_80", "jsCall_viiiifii_81", "jsCall_viiiifii_82", "jsCall_viiiifii_83", "jsCall_viiiifii_84", "jsCall_viiiifii_85", "jsCall_viiiifii_86", "jsCall_viiiifii_87", "jsCall_viiiifii_88", "jsCall_viiiifii_89", "jsCall_viiiifii_90", "jsCall_viiiifii_91", "jsCall_viiiifii_92", "jsCall_viiiifii_93", "jsCall_viiiifii_94", "jsCall_viiiifii_95", "jsCall_viiiifii_96", "jsCall_viiiifii_97", "jsCall_viiiifii_98", "jsCall_viiiifii_99", "_sbr_hf_gen_c", 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]; +var debug_table_viiiii = [0, "jsCall_viiiii_0", "jsCall_viiiii_1", "jsCall_viiiii_2", "jsCall_viiiii_3", "jsCall_viiiii_4", "jsCall_viiiii_5", "jsCall_viiiii_6", "jsCall_viiiii_7", "jsCall_viiiii_8", "jsCall_viiiii_9", "jsCall_viiiii_10", "jsCall_viiiii_11", "jsCall_viiiii_12", "jsCall_viiiii_13", "jsCall_viiiii_14", "jsCall_viiiii_15", "jsCall_viiiii_16", "jsCall_viiiii_17", "jsCall_viiiii_18", "jsCall_viiiii_19", "jsCall_viiiii_20", "jsCall_viiiii_21", "jsCall_viiiii_22", "jsCall_viiiii_23", "jsCall_viiiii_24", "jsCall_viiiii_25", "jsCall_viiiii_26", "jsCall_viiiii_27", "jsCall_viiiii_28", "jsCall_viiiii_29", "jsCall_viiiii_30", "jsCall_viiiii_31", "jsCall_viiiii_32", "jsCall_viiiii_33", "jsCall_viiiii_34", "jsCall_viiiii_35", "jsCall_viiiii_36", "jsCall_viiiii_37", "jsCall_viiiii_38", "jsCall_viiiii_39", "jsCall_viiiii_40", "jsCall_viiiii_41", "jsCall_viiiii_42", "jsCall_viiiii_43", "jsCall_viiiii_44", "jsCall_viiiii_45", "jsCall_viiiii_46", "jsCall_viiiii_47", "jsCall_viiiii_48", "jsCall_viiiii_49", "jsCall_viiiii_50", "jsCall_viiiii_51", "jsCall_viiiii_52", "jsCall_viiiii_53", "jsCall_viiiii_54", "jsCall_viiiii_55", "jsCall_viiiii_56", "jsCall_viiiii_57", "jsCall_viiiii_58", "jsCall_viiiii_59", "jsCall_viiiii_60", "jsCall_viiiii_61", "jsCall_viiiii_62", "jsCall_viiiii_63", "jsCall_viiiii_64", "jsCall_viiiii_65", "jsCall_viiiii_66", "jsCall_viiiii_67", "jsCall_viiiii_68", "jsCall_viiiii_69", "jsCall_viiiii_70", "jsCall_viiiii_71", "jsCall_viiiii_72", "jsCall_viiiii_73", "jsCall_viiiii_74", "jsCall_viiiii_75", "jsCall_viiiii_76", "jsCall_viiiii_77", "jsCall_viiiii_78", "jsCall_viiiii_79", "jsCall_viiiii_80", "jsCall_viiiii_81", "jsCall_viiiii_82", "jsCall_viiiii_83", "jsCall_viiiii_84", "jsCall_viiiii_85", "jsCall_viiiii_86", "jsCall_viiiii_87", "jsCall_viiiii_88", "jsCall_viiiii_89", "jsCall_viiiii_90", "jsCall_viiiii_91", "jsCall_viiiii_92", "jsCall_viiiii_93", "jsCall_viiiii_94", "jsCall_viiiii_95", "jsCall_viiiii_96", "jsCall_viiiii_97", "jsCall_viiiii_98", "jsCall_viiiii_99", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_U8_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S16_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S32_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_FLT_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_DBL_to_AV_SAMPLE_FMT_S64", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_U8", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S16", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S32", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_FLT", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_DBL", "_conv_AV_SAMPLE_FMT_S64_to_AV_SAMPLE_FMT_S64", "_planar_rgb9le_to_uv", "_planar_rgb10le_to_uv", "_planar_rgb12le_to_uv", "_planar_rgb14le_to_uv", "_planar_rgb16le_to_uv", "_planar_rgb9be_to_uv", "_planar_rgb10be_to_uv", "_planar_rgb12be_to_uv", "_planar_rgb14be_to_uv", "_planar_rgb16be_to_uv", "_planar_rgb_to_uv", "_yuv2p010l1_LE_c", "_yuv2p010l1_BE_c", "_yuv2plane1_16LE_c", "_yuv2plane1_16BE_c", "_yuv2plane1_9LE_c", "_yuv2plane1_9BE_c", "_yuv2plane1_10LE_c", "_yuv2plane1_10BE_c", "_yuv2plane1_12LE_c", "_yuv2plane1_12BE_c", "_yuv2plane1_14LE_c", "_yuv2plane1_14BE_c", "_yuv2plane1_floatBE_c", "_yuv2plane1_floatLE_c", "_yuv2plane1_8_c", "_bayer_bggr8_to_rgb24_copy", "_bayer_bggr8_to_rgb24_interpolate", "_bayer_bggr16le_to_rgb24_copy", "_bayer_bggr16le_to_rgb24_interpolate", "_bayer_bggr16be_to_rgb24_copy", "_bayer_bggr16be_to_rgb24_interpolate", "_bayer_rggb8_to_rgb24_copy", "_bayer_rggb8_to_rgb24_interpolate", "_bayer_rggb16le_to_rgb24_copy", "_bayer_rggb16le_to_rgb24_interpolate", "_bayer_rggb16be_to_rgb24_copy", "_bayer_rggb16be_to_rgb24_interpolate", "_bayer_gbrg8_to_rgb24_copy", "_bayer_gbrg8_to_rgb24_interpolate", "_bayer_gbrg16le_to_rgb24_copy", "_bayer_gbrg16le_to_rgb24_interpolate", "_bayer_gbrg16be_to_rgb24_copy", "_bayer_gbrg16be_to_rgb24_interpolate", "_bayer_grbg8_to_rgb24_copy", "_bayer_grbg8_to_rgb24_interpolate", "_bayer_grbg16le_to_rgb24_copy", "_bayer_grbg16le_to_rgb24_interpolate", "_bayer_grbg16be_to_rgb24_copy", "_bayer_grbg16be_to_rgb24_interpolate", "_hevc_h_loop_filter_chroma_9", "_hevc_v_loop_filter_chroma_9", "_hevc_h_loop_filter_chroma_10", "_hevc_v_loop_filter_chroma_10", "_hevc_h_loop_filter_chroma_12", "_hevc_v_loop_filter_chroma_12", "_hevc_h_loop_filter_chroma_8", "_hevc_v_loop_filter_chroma_8", "_ff_mpadsp_apply_window_float", "_ff_mpadsp_apply_window_fixed", "_worker_func", "_sbr_hf_assemble", "_sbr_hf_inverse_filter", "_ff_h264_idct_add16_9_c", "_ff_h264_idct8_add4_9_c", "_ff_h264_idct_add8_9_c", "_ff_h264_idct_add8_422_9_c", "_ff_h264_idct_add16intra_9_c", "_h264_v_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_9_c", "_h264_h_loop_filter_luma_mbaff_9_c", "_h264_v_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma_9_c", "_h264_h_loop_filter_chroma422_9_c", "_h264_h_loop_filter_chroma_mbaff_9_c", "_h264_h_loop_filter_chroma422_mbaff_9_c", "_ff_h264_idct_add16_10_c", "_ff_h264_idct8_add4_10_c", "_ff_h264_idct_add8_10_c", "_ff_h264_idct_add8_422_10_c", "_ff_h264_idct_add16intra_10_c", "_h264_v_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_10_c", "_h264_h_loop_filter_luma_mbaff_10_c", "_h264_v_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma_10_c", "_h264_h_loop_filter_chroma422_10_c", "_h264_h_loop_filter_chroma_mbaff_10_c", "_h264_h_loop_filter_chroma422_mbaff_10_c", "_ff_h264_idct_add16_12_c", "_ff_h264_idct8_add4_12_c", "_ff_h264_idct_add8_12_c", "_ff_h264_idct_add8_422_12_c", "_ff_h264_idct_add16intra_12_c", "_h264_v_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_12_c", "_h264_h_loop_filter_luma_mbaff_12_c", "_h264_v_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma_12_c", "_h264_h_loop_filter_chroma422_12_c", "_h264_h_loop_filter_chroma_mbaff_12_c", "_h264_h_loop_filter_chroma422_mbaff_12_c", "_ff_h264_idct_add16_14_c", "_ff_h264_idct8_add4_14_c", "_ff_h264_idct_add8_14_c", "_ff_h264_idct_add8_422_14_c", "_ff_h264_idct_add16intra_14_c", "_h264_v_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_14_c", "_h264_h_loop_filter_luma_mbaff_14_c", "_h264_v_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma_14_c", "_h264_h_loop_filter_chroma422_14_c", "_h264_h_loop_filter_chroma_mbaff_14_c", "_h264_h_loop_filter_chroma422_mbaff_14_c", "_ff_h264_idct_add16_8_c", "_ff_h264_idct8_add4_8_c", "_ff_h264_idct_add8_8_c", "_ff_h264_idct_add8_422_8_c", "_ff_h264_idct_add16intra_8_c", "_h264_v_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_8_c", "_h264_h_loop_filter_luma_mbaff_8_c", "_h264_v_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma_8_c", "_h264_h_loop_filter_chroma422_8_c", "_h264_h_loop_filter_chroma_mbaff_8_c", "_h264_h_loop_filter_chroma422_mbaff_8_c", "_postrotate_c", "_sbr_hf_g_filt_c", "_ps_hybrid_analysis_c", "_ps_stereo_interpolate_c", "_ps_stereo_interpolate_ipdopd_c", "_vector_fmul_window_c", "_vector_fmul_add_c", "_copy_s16", "_copy_clip_s16", "_copy_float", "_copy_double", "_copy_s32", 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, 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, 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, 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, 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, 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, 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, 0, 0, 0, 0]; +var debug_table_viiiiidd = [0, "jsCall_viiiiidd_0", "jsCall_viiiiidd_1", "jsCall_viiiiidd_2", "jsCall_viiiiidd_3", "jsCall_viiiiidd_4", "jsCall_viiiiidd_5", "jsCall_viiiiidd_6", "jsCall_viiiiidd_7", "jsCall_viiiiidd_8", "jsCall_viiiiidd_9", "jsCall_viiiiidd_10", "jsCall_viiiiidd_11", "jsCall_viiiiidd_12", "jsCall_viiiiidd_13", "jsCall_viiiiidd_14", "jsCall_viiiiidd_15", "jsCall_viiiiidd_16", "jsCall_viiiiidd_17", "jsCall_viiiiidd_18", "jsCall_viiiiidd_19", "jsCall_viiiiidd_20", "jsCall_viiiiidd_21", "jsCall_viiiiidd_22", "jsCall_viiiiidd_23", "jsCall_viiiiidd_24", "jsCall_viiiiidd_25", "jsCall_viiiiidd_26", "jsCall_viiiiidd_27", "jsCall_viiiiidd_28", "jsCall_viiiiidd_29", "jsCall_viiiiidd_30", "jsCall_viiiiidd_31", "jsCall_viiiiidd_32", "jsCall_viiiiidd_33", "jsCall_viiiiidd_34", "jsCall_viiiiidd_35", "jsCall_viiiiidd_36", "jsCall_viiiiidd_37", "jsCall_viiiiidd_38", "jsCall_viiiiidd_39", "jsCall_viiiiidd_40", "jsCall_viiiiidd_41", "jsCall_viiiiidd_42", "jsCall_viiiiidd_43", "jsCall_viiiiidd_44", "jsCall_viiiiidd_45", "jsCall_viiiiidd_46", "jsCall_viiiiidd_47", "jsCall_viiiiidd_48", "jsCall_viiiiidd_49", "jsCall_viiiiidd_50", "jsCall_viiiiidd_51", "jsCall_viiiiidd_52", "jsCall_viiiiidd_53", "jsCall_viiiiidd_54", "jsCall_viiiiidd_55", "jsCall_viiiiidd_56", "jsCall_viiiiidd_57", "jsCall_viiiiidd_58", "jsCall_viiiiidd_59", "jsCall_viiiiidd_60", "jsCall_viiiiidd_61", "jsCall_viiiiidd_62", "jsCall_viiiiidd_63", "jsCall_viiiiidd_64", "jsCall_viiiiidd_65", "jsCall_viiiiidd_66", "jsCall_viiiiidd_67", "jsCall_viiiiidd_68", "jsCall_viiiiidd_69", "jsCall_viiiiidd_70", "jsCall_viiiiidd_71", "jsCall_viiiiidd_72", "jsCall_viiiiidd_73", "jsCall_viiiiidd_74", "jsCall_viiiiidd_75", "jsCall_viiiiidd_76", "jsCall_viiiiidd_77", "jsCall_viiiiidd_78", "jsCall_viiiiidd_79", "jsCall_viiiiidd_80", "jsCall_viiiiidd_81", "jsCall_viiiiidd_82", "jsCall_viiiiidd_83", "jsCall_viiiiidd_84", "jsCall_viiiiidd_85", "jsCall_viiiiidd_86", "jsCall_viiiiidd_87", "jsCall_viiiiidd_88", "jsCall_viiiiidd_89", "jsCall_viiiiidd_90", "jsCall_viiiiidd_91", "jsCall_viiiiidd_92", "jsCall_viiiiidd_93", "jsCall_viiiiidd_94", "jsCall_viiiiidd_95", "jsCall_viiiiidd_96", "jsCall_viiiiidd_97", "jsCall_viiiiidd_98", "jsCall_viiiiidd_99", 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]; +var debug_table_viiiiiddi = [0, "jsCall_viiiiiddi_0", "jsCall_viiiiiddi_1", "jsCall_viiiiiddi_2", "jsCall_viiiiiddi_3", "jsCall_viiiiiddi_4", "jsCall_viiiiiddi_5", "jsCall_viiiiiddi_6", "jsCall_viiiiiddi_7", "jsCall_viiiiiddi_8", "jsCall_viiiiiddi_9", "jsCall_viiiiiddi_10", "jsCall_viiiiiddi_11", "jsCall_viiiiiddi_12", "jsCall_viiiiiddi_13", "jsCall_viiiiiddi_14", "jsCall_viiiiiddi_15", "jsCall_viiiiiddi_16", "jsCall_viiiiiddi_17", "jsCall_viiiiiddi_18", "jsCall_viiiiiddi_19", "jsCall_viiiiiddi_20", "jsCall_viiiiiddi_21", "jsCall_viiiiiddi_22", "jsCall_viiiiiddi_23", "jsCall_viiiiiddi_24", "jsCall_viiiiiddi_25", "jsCall_viiiiiddi_26", "jsCall_viiiiiddi_27", "jsCall_viiiiiddi_28", "jsCall_viiiiiddi_29", "jsCall_viiiiiddi_30", "jsCall_viiiiiddi_31", "jsCall_viiiiiddi_32", "jsCall_viiiiiddi_33", "jsCall_viiiiiddi_34", "jsCall_viiiiiddi_35", "jsCall_viiiiiddi_36", "jsCall_viiiiiddi_37", "jsCall_viiiiiddi_38", "jsCall_viiiiiddi_39", "jsCall_viiiiiddi_40", "jsCall_viiiiiddi_41", "jsCall_viiiiiddi_42", "jsCall_viiiiiddi_43", "jsCall_viiiiiddi_44", "jsCall_viiiiiddi_45", "jsCall_viiiiiddi_46", "jsCall_viiiiiddi_47", "jsCall_viiiiiddi_48", "jsCall_viiiiiddi_49", "jsCall_viiiiiddi_50", "jsCall_viiiiiddi_51", "jsCall_viiiiiddi_52", "jsCall_viiiiiddi_53", "jsCall_viiiiiddi_54", "jsCall_viiiiiddi_55", "jsCall_viiiiiddi_56", "jsCall_viiiiiddi_57", "jsCall_viiiiiddi_58", "jsCall_viiiiiddi_59", "jsCall_viiiiiddi_60", "jsCall_viiiiiddi_61", "jsCall_viiiiiddi_62", "jsCall_viiiiiddi_63", "jsCall_viiiiiddi_64", "jsCall_viiiiiddi_65", "jsCall_viiiiiddi_66", "jsCall_viiiiiddi_67", "jsCall_viiiiiddi_68", "jsCall_viiiiiddi_69", "jsCall_viiiiiddi_70", "jsCall_viiiiiddi_71", "jsCall_viiiiiddi_72", "jsCall_viiiiiddi_73", "jsCall_viiiiiddi_74", "jsCall_viiiiiddi_75", "jsCall_viiiiiddi_76", "jsCall_viiiiiddi_77", "jsCall_viiiiiddi_78", "jsCall_viiiiiddi_79", "jsCall_viiiiiddi_80", "jsCall_viiiiiddi_81", "jsCall_viiiiiddi_82", "jsCall_viiiiiddi_83", "jsCall_viiiiiddi_84", "jsCall_viiiiiddi_85", "jsCall_viiiiiddi_86", "jsCall_viiiiiddi_87", "jsCall_viiiiiddi_88", "jsCall_viiiiiddi_89", "jsCall_viiiiiddi_90", "jsCall_viiiiiddi_91", "jsCall_viiiiiddi_92", "jsCall_viiiiiddi_93", "jsCall_viiiiiddi_94", "jsCall_viiiiiddi_95", "jsCall_viiiiiddi_96", "jsCall_viiiiiddi_97", "jsCall_viiiiiddi_98", "jsCall_viiiiiddi_99", 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]; +var debug_table_viiiiii = [0, "jsCall_viiiiii_0", "jsCall_viiiiii_1", "jsCall_viiiiii_2", "jsCall_viiiiii_3", "jsCall_viiiiii_4", "jsCall_viiiiii_5", "jsCall_viiiiii_6", "jsCall_viiiiii_7", "jsCall_viiiiii_8", "jsCall_viiiiii_9", "jsCall_viiiiii_10", "jsCall_viiiiii_11", "jsCall_viiiiii_12", "jsCall_viiiiii_13", "jsCall_viiiiii_14", "jsCall_viiiiii_15", "jsCall_viiiiii_16", "jsCall_viiiiii_17", "jsCall_viiiiii_18", "jsCall_viiiiii_19", "jsCall_viiiiii_20", "jsCall_viiiiii_21", "jsCall_viiiiii_22", "jsCall_viiiiii_23", "jsCall_viiiiii_24", "jsCall_viiiiii_25", "jsCall_viiiiii_26", "jsCall_viiiiii_27", "jsCall_viiiiii_28", "jsCall_viiiiii_29", "jsCall_viiiiii_30", "jsCall_viiiiii_31", "jsCall_viiiiii_32", "jsCall_viiiiii_33", "jsCall_viiiiii_34", "jsCall_viiiiii_35", "jsCall_viiiiii_36", "jsCall_viiiiii_37", "jsCall_viiiiii_38", "jsCall_viiiiii_39", "jsCall_viiiiii_40", "jsCall_viiiiii_41", "jsCall_viiiiii_42", "jsCall_viiiiii_43", "jsCall_viiiiii_44", "jsCall_viiiiii_45", "jsCall_viiiiii_46", "jsCall_viiiiii_47", "jsCall_viiiiii_48", "jsCall_viiiiii_49", "jsCall_viiiiii_50", "jsCall_viiiiii_51", "jsCall_viiiiii_52", "jsCall_viiiiii_53", "jsCall_viiiiii_54", "jsCall_viiiiii_55", "jsCall_viiiiii_56", "jsCall_viiiiii_57", "jsCall_viiiiii_58", "jsCall_viiiiii_59", "jsCall_viiiiii_60", "jsCall_viiiiii_61", "jsCall_viiiiii_62", "jsCall_viiiiii_63", "jsCall_viiiiii_64", "jsCall_viiiiii_65", "jsCall_viiiiii_66", "jsCall_viiiiii_67", "jsCall_viiiiii_68", "jsCall_viiiiii_69", "jsCall_viiiiii_70", "jsCall_viiiiii_71", "jsCall_viiiiii_72", "jsCall_viiiiii_73", "jsCall_viiiiii_74", "jsCall_viiiiii_75", "jsCall_viiiiii_76", "jsCall_viiiiii_77", "jsCall_viiiiii_78", "jsCall_viiiiii_79", "jsCall_viiiiii_80", "jsCall_viiiiii_81", "jsCall_viiiiii_82", "jsCall_viiiiii_83", "jsCall_viiiiii_84", "jsCall_viiiiii_85", "jsCall_viiiiii_86", "jsCall_viiiiii_87", "jsCall_viiiiii_88", "jsCall_viiiiii_89", "jsCall_viiiiii_90", "jsCall_viiiiii_91", "jsCall_viiiiii_92", "jsCall_viiiiii_93", "jsCall_viiiiii_94", "jsCall_viiiiii_95", "jsCall_viiiiii_96", "jsCall_viiiiii_97", "jsCall_viiiiii_98", "jsCall_viiiiii_99", "_read_geobtag", "_read_apic", "_read_chapter", "_read_priv", "_ff_hyscale_fast_c", "_bswap16Y_c", "_read_ya16le_gray_c", "_read_ya16be_gray_c", "_read_ayuv64le_Y_c", "_yuy2ToY_c", "_uyvyToY_c", "_bgr24ToY_c", "_bgr16leToY_c", "_bgr16beToY_c", "_bgr15leToY_c", "_bgr15beToY_c", "_bgr12leToY_c", "_bgr12beToY_c", "_rgb24ToY_c", "_rgb16leToY_c", "_rgb16beToY_c", "_rgb15leToY_c", "_rgb15beToY_c", "_rgb12leToY_c", "_rgb12beToY_c", "_palToY_c", "_monoblack2Y_c", "_monowhite2Y_c", "_bgr32ToY_c", "_bgr321ToY_c", "_rgb32ToY_c", "_rgb321ToY_c", "_rgb48BEToY_c", "_rgb48LEToY_c", "_bgr48BEToY_c", "_bgr48LEToY_c", "_rgb64BEToY_c", "_rgb64LEToY_c", "_bgr64BEToY_c", "_bgr64LEToY_c", "_p010LEToY_c", "_p010BEToY_c", "_grayf32ToY16_c", "_grayf32ToY16_bswap_c", "_rgba64leToA_c", "_rgba64beToA_c", "_rgbaToA_c", "_abgrToA_c", "_read_ya16le_alpha_c", "_read_ya16be_alpha_c", "_read_ayuv64le_A_c", "_palToA_c", "_put_pcm_9", "_hevc_h_loop_filter_luma_9", "_hevc_v_loop_filter_luma_9", "_put_pcm_10", "_hevc_h_loop_filter_luma_10", "_hevc_v_loop_filter_luma_10", "_put_pcm_12", "_hevc_h_loop_filter_luma_12", "_hevc_v_loop_filter_luma_12", "_put_pcm_8", "_hevc_h_loop_filter_luma_8", "_hevc_v_loop_filter_luma_8", "_pred_dc_9", "_pred_angular_0_9", "_pred_angular_1_9", "_pred_angular_2_9", "_pred_angular_3_9", "_pred_dc_10", "_pred_angular_0_10", "_pred_angular_1_10", "_pred_angular_2_10", "_pred_angular_3_10", "_pred_dc_12", "_pred_angular_0_12", "_pred_angular_1_12", "_pred_angular_2_12", "_pred_angular_3_12", "_pred_dc_8", "_pred_angular_0_8", "_pred_angular_1_8", "_pred_angular_2_8", "_pred_angular_3_8", "_ff_imdct36_blocks_float", "_ff_imdct36_blocks_fixed", "_weight_h264_pixels16_9_c", "_weight_h264_pixels8_9_c", "_weight_h264_pixels4_9_c", "_weight_h264_pixels2_9_c", "_weight_h264_pixels16_10_c", "_weight_h264_pixels8_10_c", "_weight_h264_pixels4_10_c", "_weight_h264_pixels2_10_c", "_weight_h264_pixels16_12_c", "_weight_h264_pixels8_12_c", "_weight_h264_pixels4_12_c", "_weight_h264_pixels2_12_c", "_weight_h264_pixels16_14_c", "_weight_h264_pixels8_14_c", "_weight_h264_pixels4_14_c", "_weight_h264_pixels2_14_c", "_weight_h264_pixels16_8_c", "_weight_h264_pixels8_8_c", "_weight_h264_pixels4_8_c", "_weight_h264_pixels2_8_c", "_sbr_hf_apply_noise_0", "_sbr_hf_apply_noise_1", "_sbr_hf_apply_noise_2", "_sbr_hf_apply_noise_3", "_aes_decrypt", "_aes_encrypt", "_image_copy_plane", 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, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiifi = [0, "jsCall_viiiiiifi_0", "jsCall_viiiiiifi_1", "jsCall_viiiiiifi_2", "jsCall_viiiiiifi_3", "jsCall_viiiiiifi_4", "jsCall_viiiiiifi_5", "jsCall_viiiiiifi_6", "jsCall_viiiiiifi_7", "jsCall_viiiiiifi_8", "jsCall_viiiiiifi_9", "jsCall_viiiiiifi_10", "jsCall_viiiiiifi_11", "jsCall_viiiiiifi_12", "jsCall_viiiiiifi_13", "jsCall_viiiiiifi_14", "jsCall_viiiiiifi_15", "jsCall_viiiiiifi_16", "jsCall_viiiiiifi_17", "jsCall_viiiiiifi_18", "jsCall_viiiiiifi_19", "jsCall_viiiiiifi_20", "jsCall_viiiiiifi_21", "jsCall_viiiiiifi_22", "jsCall_viiiiiifi_23", "jsCall_viiiiiifi_24", "jsCall_viiiiiifi_25", "jsCall_viiiiiifi_26", "jsCall_viiiiiifi_27", "jsCall_viiiiiifi_28", "jsCall_viiiiiifi_29", "jsCall_viiiiiifi_30", "jsCall_viiiiiifi_31", "jsCall_viiiiiifi_32", "jsCall_viiiiiifi_33", "jsCall_viiiiiifi_34", "jsCall_viiiiiifi_35", "jsCall_viiiiiifi_36", "jsCall_viiiiiifi_37", "jsCall_viiiiiifi_38", "jsCall_viiiiiifi_39", "jsCall_viiiiiifi_40", "jsCall_viiiiiifi_41", "jsCall_viiiiiifi_42", "jsCall_viiiiiifi_43", "jsCall_viiiiiifi_44", "jsCall_viiiiiifi_45", "jsCall_viiiiiifi_46", "jsCall_viiiiiifi_47", "jsCall_viiiiiifi_48", "jsCall_viiiiiifi_49", "jsCall_viiiiiifi_50", "jsCall_viiiiiifi_51", "jsCall_viiiiiifi_52", "jsCall_viiiiiifi_53", "jsCall_viiiiiifi_54", "jsCall_viiiiiifi_55", "jsCall_viiiiiifi_56", "jsCall_viiiiiifi_57", "jsCall_viiiiiifi_58", "jsCall_viiiiiifi_59", "jsCall_viiiiiifi_60", "jsCall_viiiiiifi_61", "jsCall_viiiiiifi_62", "jsCall_viiiiiifi_63", "jsCall_viiiiiifi_64", "jsCall_viiiiiifi_65", "jsCall_viiiiiifi_66", "jsCall_viiiiiifi_67", "jsCall_viiiiiifi_68", "jsCall_viiiiiifi_69", "jsCall_viiiiiifi_70", "jsCall_viiiiiifi_71", "jsCall_viiiiiifi_72", "jsCall_viiiiiifi_73", "jsCall_viiiiiifi_74", "jsCall_viiiiiifi_75", "jsCall_viiiiiifi_76", "jsCall_viiiiiifi_77", "jsCall_viiiiiifi_78", "jsCall_viiiiiifi_79", "jsCall_viiiiiifi_80", "jsCall_viiiiiifi_81", "jsCall_viiiiiifi_82", "jsCall_viiiiiifi_83", "jsCall_viiiiiifi_84", "jsCall_viiiiiifi_85", "jsCall_viiiiiifi_86", "jsCall_viiiiiifi_87", "jsCall_viiiiiifi_88", "jsCall_viiiiiifi_89", "jsCall_viiiiiifi_90", "jsCall_viiiiiifi_91", "jsCall_viiiiiifi_92", "jsCall_viiiiiifi_93", "jsCall_viiiiiifi_94", "jsCall_viiiiiifi_95", "jsCall_viiiiiifi_96", "jsCall_viiiiiifi_97", "jsCall_viiiiiifi_98", "jsCall_viiiiiifi_99", "_ps_decorrelate_c", 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]; +var debug_table_viiiiiii = [0, "jsCall_viiiiiii_0", "jsCall_viiiiiii_1", "jsCall_viiiiiii_2", "jsCall_viiiiiii_3", "jsCall_viiiiiii_4", "jsCall_viiiiiii_5", "jsCall_viiiiiii_6", "jsCall_viiiiiii_7", "jsCall_viiiiiii_8", "jsCall_viiiiiii_9", "jsCall_viiiiiii_10", "jsCall_viiiiiii_11", "jsCall_viiiiiii_12", "jsCall_viiiiiii_13", "jsCall_viiiiiii_14", "jsCall_viiiiiii_15", "jsCall_viiiiiii_16", "jsCall_viiiiiii_17", "jsCall_viiiiiii_18", "jsCall_viiiiiii_19", "jsCall_viiiiiii_20", "jsCall_viiiiiii_21", "jsCall_viiiiiii_22", "jsCall_viiiiiii_23", "jsCall_viiiiiii_24", "jsCall_viiiiiii_25", "jsCall_viiiiiii_26", "jsCall_viiiiiii_27", "jsCall_viiiiiii_28", "jsCall_viiiiiii_29", "jsCall_viiiiiii_30", "jsCall_viiiiiii_31", "jsCall_viiiiiii_32", "jsCall_viiiiiii_33", "jsCall_viiiiiii_34", "jsCall_viiiiiii_35", "jsCall_viiiiiii_36", "jsCall_viiiiiii_37", "jsCall_viiiiiii_38", "jsCall_viiiiiii_39", "jsCall_viiiiiii_40", "jsCall_viiiiiii_41", "jsCall_viiiiiii_42", "jsCall_viiiiiii_43", "jsCall_viiiiiii_44", "jsCall_viiiiiii_45", "jsCall_viiiiiii_46", "jsCall_viiiiiii_47", "jsCall_viiiiiii_48", "jsCall_viiiiiii_49", "jsCall_viiiiiii_50", "jsCall_viiiiiii_51", "jsCall_viiiiiii_52", "jsCall_viiiiiii_53", "jsCall_viiiiiii_54", "jsCall_viiiiiii_55", "jsCall_viiiiiii_56", "jsCall_viiiiiii_57", "jsCall_viiiiiii_58", "jsCall_viiiiiii_59", "jsCall_viiiiiii_60", "jsCall_viiiiiii_61", "jsCall_viiiiiii_62", "jsCall_viiiiiii_63", "jsCall_viiiiiii_64", "jsCall_viiiiiii_65", "jsCall_viiiiiii_66", "jsCall_viiiiiii_67", "jsCall_viiiiiii_68", "jsCall_viiiiiii_69", "jsCall_viiiiiii_70", "jsCall_viiiiiii_71", "jsCall_viiiiiii_72", "jsCall_viiiiiii_73", "jsCall_viiiiiii_74", "jsCall_viiiiiii_75", "jsCall_viiiiiii_76", "jsCall_viiiiiii_77", "jsCall_viiiiiii_78", "jsCall_viiiiiii_79", "jsCall_viiiiiii_80", "jsCall_viiiiiii_81", "jsCall_viiiiiii_82", "jsCall_viiiiiii_83", "jsCall_viiiiiii_84", "jsCall_viiiiiii_85", "jsCall_viiiiiii_86", "jsCall_viiiiiii_87", "jsCall_viiiiiii_88", "jsCall_viiiiiii_89", "jsCall_viiiiiii_90", "jsCall_viiiiiii_91", "jsCall_viiiiiii_92", "jsCall_viiiiiii_93", "jsCall_viiiiiii_94", "jsCall_viiiiiii_95", "jsCall_viiiiiii_96", "jsCall_viiiiiii_97", "jsCall_viiiiiii_98", "jsCall_viiiiiii_99", "_hScale8To15_c", "_hScale8To19_c", "_hScale16To19_c", "_hScale16To15_c", "_yuy2ToUV_c", "_yvy2ToUV_c", "_uyvyToUV_c", "_nv12ToUV_c", "_nv21ToUV_c", "_palToUV_c", "_bswap16UV_c", "_read_ayuv64le_UV_c", "_p010LEToUV_c", "_p010BEToUV_c", "_p016LEToUV_c", "_p016BEToUV_c", "_gbr24pToUV_half_c", "_rgb64BEToUV_half_c", "_rgb64LEToUV_half_c", "_bgr64BEToUV_half_c", "_bgr64LEToUV_half_c", "_rgb48BEToUV_half_c", "_rgb48LEToUV_half_c", "_bgr48BEToUV_half_c", "_bgr48LEToUV_half_c", "_bgr32ToUV_half_c", "_bgr321ToUV_half_c", "_bgr24ToUV_half_c", "_bgr16leToUV_half_c", "_bgr16beToUV_half_c", "_bgr15leToUV_half_c", "_bgr15beToUV_half_c", "_bgr12leToUV_half_c", "_bgr12beToUV_half_c", "_rgb32ToUV_half_c", "_rgb321ToUV_half_c", "_rgb24ToUV_half_c", "_rgb16leToUV_half_c", "_rgb16beToUV_half_c", "_rgb15leToUV_half_c", "_rgb15beToUV_half_c", "_rgb12leToUV_half_c", "_rgb12beToUV_half_c", "_rgb64BEToUV_c", "_rgb64LEToUV_c", "_bgr64BEToUV_c", "_bgr64LEToUV_c", "_rgb48BEToUV_c", "_rgb48LEToUV_c", "_bgr48BEToUV_c", "_bgr48LEToUV_c", "_bgr32ToUV_c", "_bgr321ToUV_c", "_bgr24ToUV_c", "_bgr16leToUV_c", "_bgr16beToUV_c", "_bgr15leToUV_c", "_bgr15beToUV_c", "_bgr12leToUV_c", "_bgr12beToUV_c", "_rgb32ToUV_c", "_rgb321ToUV_c", "_rgb24ToUV_c", "_rgb16leToUV_c", "_rgb16beToUV_c", "_rgb15leToUV_c", "_rgb15beToUV_c", "_rgb12leToUV_c", "_rgb12beToUV_c", "_yuv2p010lX_LE_c", "_yuv2p010lX_BE_c", "_yuv2p010cX_c", "_yuv2planeX_16LE_c", "_yuv2planeX_16BE_c", "_yuv2p016cX_c", "_yuv2planeX_9LE_c", "_yuv2planeX_9BE_c", "_yuv2planeX_10LE_c", "_yuv2planeX_10BE_c", "_yuv2planeX_12LE_c", "_yuv2planeX_12BE_c", "_yuv2planeX_14LE_c", "_yuv2planeX_14BE_c", "_yuv2planeX_floatBE_c", "_yuv2planeX_floatLE_c", "_yuv2planeX_8_c", "_yuv2nv12cX_c", "_sao_edge_filter_9", "_put_hevc_pel_pixels_9", "_put_hevc_qpel_h_9", "_put_hevc_qpel_v_9", "_put_hevc_qpel_hv_9", "_put_hevc_epel_h_9", "_put_hevc_epel_v_9", "_put_hevc_epel_hv_9", "_sao_edge_filter_10", "_put_hevc_pel_pixels_10", "_put_hevc_qpel_h_10", "_put_hevc_qpel_v_10", "_put_hevc_qpel_hv_10", "_put_hevc_epel_h_10", "_put_hevc_epel_v_10", "_put_hevc_epel_hv_10", "_sao_edge_filter_12", "_put_hevc_pel_pixels_12", "_put_hevc_qpel_h_12", "_put_hevc_qpel_v_12", "_put_hevc_qpel_hv_12", "_put_hevc_epel_h_12", "_put_hevc_epel_v_12", "_put_hevc_epel_hv_12", "_sao_edge_filter_8", "_put_hevc_pel_pixels_8", "_put_hevc_qpel_h_8", "_put_hevc_qpel_v_8", "_put_hevc_qpel_hv_8", "_put_hevc_epel_h_8", "_put_hevc_epel_v_8", "_put_hevc_epel_hv_8", "_sum2_s16", "_sum2_clip_s16", "_sum2_float", "_sum2_double", "_sum2_s32", 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]; +var debug_table_viiiiiiii = [0, "jsCall_viiiiiiii_0", "jsCall_viiiiiiii_1", "jsCall_viiiiiiii_2", "jsCall_viiiiiiii_3", "jsCall_viiiiiiii_4", "jsCall_viiiiiiii_5", "jsCall_viiiiiiii_6", "jsCall_viiiiiiii_7", "jsCall_viiiiiiii_8", "jsCall_viiiiiiii_9", "jsCall_viiiiiiii_10", "jsCall_viiiiiiii_11", "jsCall_viiiiiiii_12", "jsCall_viiiiiiii_13", "jsCall_viiiiiiii_14", "jsCall_viiiiiiii_15", "jsCall_viiiiiiii_16", "jsCall_viiiiiiii_17", "jsCall_viiiiiiii_18", "jsCall_viiiiiiii_19", "jsCall_viiiiiiii_20", "jsCall_viiiiiiii_21", "jsCall_viiiiiiii_22", "jsCall_viiiiiiii_23", "jsCall_viiiiiiii_24", "jsCall_viiiiiiii_25", "jsCall_viiiiiiii_26", "jsCall_viiiiiiii_27", "jsCall_viiiiiiii_28", "jsCall_viiiiiiii_29", "jsCall_viiiiiiii_30", "jsCall_viiiiiiii_31", "jsCall_viiiiiiii_32", "jsCall_viiiiiiii_33", "jsCall_viiiiiiii_34", "jsCall_viiiiiiii_35", "jsCall_viiiiiiii_36", "jsCall_viiiiiiii_37", "jsCall_viiiiiiii_38", "jsCall_viiiiiiii_39", "jsCall_viiiiiiii_40", "jsCall_viiiiiiii_41", "jsCall_viiiiiiii_42", "jsCall_viiiiiiii_43", "jsCall_viiiiiiii_44", "jsCall_viiiiiiii_45", "jsCall_viiiiiiii_46", "jsCall_viiiiiiii_47", "jsCall_viiiiiiii_48", "jsCall_viiiiiiii_49", "jsCall_viiiiiiii_50", "jsCall_viiiiiiii_51", "jsCall_viiiiiiii_52", "jsCall_viiiiiiii_53", "jsCall_viiiiiiii_54", "jsCall_viiiiiiii_55", "jsCall_viiiiiiii_56", "jsCall_viiiiiiii_57", "jsCall_viiiiiiii_58", "jsCall_viiiiiiii_59", "jsCall_viiiiiiii_60", "jsCall_viiiiiiii_61", "jsCall_viiiiiiii_62", "jsCall_viiiiiiii_63", "jsCall_viiiiiiii_64", "jsCall_viiiiiiii_65", "jsCall_viiiiiiii_66", "jsCall_viiiiiiii_67", "jsCall_viiiiiiii_68", "jsCall_viiiiiiii_69", "jsCall_viiiiiiii_70", "jsCall_viiiiiiii_71", "jsCall_viiiiiiii_72", "jsCall_viiiiiiii_73", "jsCall_viiiiiiii_74", "jsCall_viiiiiiii_75", "jsCall_viiiiiiii_76", "jsCall_viiiiiiii_77", "jsCall_viiiiiiii_78", "jsCall_viiiiiiii_79", "jsCall_viiiiiiii_80", "jsCall_viiiiiiii_81", "jsCall_viiiiiiii_82", "jsCall_viiiiiiii_83", "jsCall_viiiiiiii_84", "jsCall_viiiiiiii_85", "jsCall_viiiiiiii_86", "jsCall_viiiiiiii_87", "jsCall_viiiiiiii_88", "jsCall_viiiiiiii_89", "jsCall_viiiiiiii_90", "jsCall_viiiiiiii_91", "jsCall_viiiiiiii_92", "jsCall_viiiiiiii_93", "jsCall_viiiiiiii_94", "jsCall_viiiiiiii_95", "jsCall_viiiiiiii_96", "jsCall_viiiiiiii_97", "jsCall_viiiiiiii_98", "jsCall_viiiiiiii_99", "_ff_hcscale_fast_c", "_bayer_bggr8_to_yv12_copy", "_bayer_bggr8_to_yv12_interpolate", "_bayer_bggr16le_to_yv12_copy", "_bayer_bggr16le_to_yv12_interpolate", "_bayer_bggr16be_to_yv12_copy", "_bayer_bggr16be_to_yv12_interpolate", "_bayer_rggb8_to_yv12_copy", "_bayer_rggb8_to_yv12_interpolate", "_bayer_rggb16le_to_yv12_copy", "_bayer_rggb16le_to_yv12_interpolate", "_bayer_rggb16be_to_yv12_copy", "_bayer_rggb16be_to_yv12_interpolate", "_bayer_gbrg8_to_yv12_copy", "_bayer_gbrg8_to_yv12_interpolate", "_bayer_gbrg16le_to_yv12_copy", "_bayer_gbrg16le_to_yv12_interpolate", "_bayer_gbrg16be_to_yv12_copy", "_bayer_gbrg16be_to_yv12_interpolate", "_bayer_grbg8_to_yv12_copy", "_bayer_grbg8_to_yv12_interpolate", "_bayer_grbg16le_to_yv12_copy", "_bayer_grbg16le_to_yv12_interpolate", "_bayer_grbg16be_to_yv12_copy", "_bayer_grbg16be_to_yv12_interpolate", "_sao_band_filter_9", "_put_hevc_pel_uni_pixels_9", "_put_hevc_qpel_uni_h_9", "_put_hevc_qpel_uni_v_9", "_put_hevc_qpel_uni_hv_9", "_put_hevc_epel_uni_h_9", "_put_hevc_epel_uni_v_9", "_put_hevc_epel_uni_hv_9", "_sao_band_filter_10", "_put_hevc_pel_uni_pixels_10", "_put_hevc_qpel_uni_h_10", "_put_hevc_qpel_uni_v_10", "_put_hevc_qpel_uni_hv_10", "_put_hevc_epel_uni_h_10", "_put_hevc_epel_uni_v_10", "_put_hevc_epel_uni_hv_10", "_sao_band_filter_12", "_put_hevc_pel_uni_pixels_12", "_put_hevc_qpel_uni_h_12", "_put_hevc_qpel_uni_v_12", "_put_hevc_qpel_uni_hv_12", "_put_hevc_epel_uni_h_12", "_put_hevc_epel_uni_v_12", "_put_hevc_epel_uni_hv_12", "_sao_band_filter_8", "_put_hevc_pel_uni_pixels_8", "_put_hevc_qpel_uni_h_8", "_put_hevc_qpel_uni_v_8", "_put_hevc_qpel_uni_hv_8", "_put_hevc_epel_uni_h_8", "_put_hevc_epel_uni_v_8", "_put_hevc_epel_uni_hv_8", "_biweight_h264_pixels16_9_c", "_biweight_h264_pixels8_9_c", "_biweight_h264_pixels4_9_c", "_biweight_h264_pixels2_9_c", "_biweight_h264_pixels16_10_c", "_biweight_h264_pixels8_10_c", "_biweight_h264_pixels4_10_c", "_biweight_h264_pixels2_10_c", "_biweight_h264_pixels16_12_c", "_biweight_h264_pixels8_12_c", "_biweight_h264_pixels4_12_c", "_biweight_h264_pixels2_12_c", "_biweight_h264_pixels16_14_c", "_biweight_h264_pixels8_14_c", "_biweight_h264_pixels4_14_c", "_biweight_h264_pixels2_14_c", "_biweight_h264_pixels16_8_c", "_biweight_h264_pixels8_8_c", "_biweight_h264_pixels4_8_c", "_biweight_h264_pixels2_8_c", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiid = [0, "jsCall_viiiiiiiid_0", "jsCall_viiiiiiiid_1", "jsCall_viiiiiiiid_2", "jsCall_viiiiiiiid_3", "jsCall_viiiiiiiid_4", "jsCall_viiiiiiiid_5", "jsCall_viiiiiiiid_6", "jsCall_viiiiiiiid_7", "jsCall_viiiiiiiid_8", "jsCall_viiiiiiiid_9", "jsCall_viiiiiiiid_10", "jsCall_viiiiiiiid_11", "jsCall_viiiiiiiid_12", "jsCall_viiiiiiiid_13", "jsCall_viiiiiiiid_14", "jsCall_viiiiiiiid_15", "jsCall_viiiiiiiid_16", "jsCall_viiiiiiiid_17", "jsCall_viiiiiiiid_18", "jsCall_viiiiiiiid_19", "jsCall_viiiiiiiid_20", "jsCall_viiiiiiiid_21", "jsCall_viiiiiiiid_22", "jsCall_viiiiiiiid_23", "jsCall_viiiiiiiid_24", "jsCall_viiiiiiiid_25", "jsCall_viiiiiiiid_26", "jsCall_viiiiiiiid_27", "jsCall_viiiiiiiid_28", "jsCall_viiiiiiiid_29", "jsCall_viiiiiiiid_30", "jsCall_viiiiiiiid_31", "jsCall_viiiiiiiid_32", "jsCall_viiiiiiiid_33", "jsCall_viiiiiiiid_34", "jsCall_viiiiiiiid_35", "jsCall_viiiiiiiid_36", "jsCall_viiiiiiiid_37", "jsCall_viiiiiiiid_38", "jsCall_viiiiiiiid_39", "jsCall_viiiiiiiid_40", "jsCall_viiiiiiiid_41", "jsCall_viiiiiiiid_42", "jsCall_viiiiiiiid_43", "jsCall_viiiiiiiid_44", "jsCall_viiiiiiiid_45", "jsCall_viiiiiiiid_46", "jsCall_viiiiiiiid_47", "jsCall_viiiiiiiid_48", "jsCall_viiiiiiiid_49", "jsCall_viiiiiiiid_50", "jsCall_viiiiiiiid_51", "jsCall_viiiiiiiid_52", "jsCall_viiiiiiiid_53", "jsCall_viiiiiiiid_54", "jsCall_viiiiiiiid_55", "jsCall_viiiiiiiid_56", "jsCall_viiiiiiiid_57", "jsCall_viiiiiiiid_58", "jsCall_viiiiiiiid_59", "jsCall_viiiiiiiid_60", "jsCall_viiiiiiiid_61", "jsCall_viiiiiiiid_62", "jsCall_viiiiiiiid_63", "jsCall_viiiiiiiid_64", "jsCall_viiiiiiiid_65", "jsCall_viiiiiiiid_66", "jsCall_viiiiiiiid_67", "jsCall_viiiiiiiid_68", "jsCall_viiiiiiiid_69", "jsCall_viiiiiiiid_70", "jsCall_viiiiiiiid_71", "jsCall_viiiiiiiid_72", "jsCall_viiiiiiiid_73", "jsCall_viiiiiiiid_74", "jsCall_viiiiiiiid_75", "jsCall_viiiiiiiid_76", "jsCall_viiiiiiiid_77", "jsCall_viiiiiiiid_78", "jsCall_viiiiiiiid_79", "jsCall_viiiiiiiid_80", "jsCall_viiiiiiiid_81", "jsCall_viiiiiiiid_82", "jsCall_viiiiiiiid_83", "jsCall_viiiiiiiid_84", "jsCall_viiiiiiiid_85", "jsCall_viiiiiiiid_86", "jsCall_viiiiiiiid_87", "jsCall_viiiiiiiid_88", "jsCall_viiiiiiiid_89", "jsCall_viiiiiiiid_90", "jsCall_viiiiiiiid_91", "jsCall_viiiiiiiid_92", "jsCall_viiiiiiiid_93", "jsCall_viiiiiiiid_94", "jsCall_viiiiiiiid_95", "jsCall_viiiiiiiid_96", "jsCall_viiiiiiiid_97", "jsCall_viiiiiiiid_98", "jsCall_viiiiiiiid_99", 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]; +var debug_table_viiiiiiiidi = [0, "jsCall_viiiiiiiidi_0", "jsCall_viiiiiiiidi_1", "jsCall_viiiiiiiidi_2", "jsCall_viiiiiiiidi_3", "jsCall_viiiiiiiidi_4", "jsCall_viiiiiiiidi_5", "jsCall_viiiiiiiidi_6", "jsCall_viiiiiiiidi_7", "jsCall_viiiiiiiidi_8", "jsCall_viiiiiiiidi_9", "jsCall_viiiiiiiidi_10", "jsCall_viiiiiiiidi_11", "jsCall_viiiiiiiidi_12", "jsCall_viiiiiiiidi_13", "jsCall_viiiiiiiidi_14", "jsCall_viiiiiiiidi_15", "jsCall_viiiiiiiidi_16", "jsCall_viiiiiiiidi_17", "jsCall_viiiiiiiidi_18", "jsCall_viiiiiiiidi_19", "jsCall_viiiiiiiidi_20", "jsCall_viiiiiiiidi_21", "jsCall_viiiiiiiidi_22", "jsCall_viiiiiiiidi_23", "jsCall_viiiiiiiidi_24", "jsCall_viiiiiiiidi_25", "jsCall_viiiiiiiidi_26", "jsCall_viiiiiiiidi_27", "jsCall_viiiiiiiidi_28", "jsCall_viiiiiiiidi_29", "jsCall_viiiiiiiidi_30", "jsCall_viiiiiiiidi_31", "jsCall_viiiiiiiidi_32", "jsCall_viiiiiiiidi_33", "jsCall_viiiiiiiidi_34", "jsCall_viiiiiiiidi_35", "jsCall_viiiiiiiidi_36", "jsCall_viiiiiiiidi_37", "jsCall_viiiiiiiidi_38", "jsCall_viiiiiiiidi_39", "jsCall_viiiiiiiidi_40", "jsCall_viiiiiiiidi_41", "jsCall_viiiiiiiidi_42", "jsCall_viiiiiiiidi_43", "jsCall_viiiiiiiidi_44", "jsCall_viiiiiiiidi_45", "jsCall_viiiiiiiidi_46", "jsCall_viiiiiiiidi_47", "jsCall_viiiiiiiidi_48", "jsCall_viiiiiiiidi_49", "jsCall_viiiiiiiidi_50", "jsCall_viiiiiiiidi_51", "jsCall_viiiiiiiidi_52", "jsCall_viiiiiiiidi_53", "jsCall_viiiiiiiidi_54", "jsCall_viiiiiiiidi_55", "jsCall_viiiiiiiidi_56", "jsCall_viiiiiiiidi_57", "jsCall_viiiiiiiidi_58", "jsCall_viiiiiiiidi_59", "jsCall_viiiiiiiidi_60", "jsCall_viiiiiiiidi_61", "jsCall_viiiiiiiidi_62", "jsCall_viiiiiiiidi_63", "jsCall_viiiiiiiidi_64", "jsCall_viiiiiiiidi_65", "jsCall_viiiiiiiidi_66", "jsCall_viiiiiiiidi_67", "jsCall_viiiiiiiidi_68", "jsCall_viiiiiiiidi_69", "jsCall_viiiiiiiidi_70", "jsCall_viiiiiiiidi_71", "jsCall_viiiiiiiidi_72", "jsCall_viiiiiiiidi_73", "jsCall_viiiiiiiidi_74", "jsCall_viiiiiiiidi_75", "jsCall_viiiiiiiidi_76", "jsCall_viiiiiiiidi_77", "jsCall_viiiiiiiidi_78", "jsCall_viiiiiiiidi_79", "jsCall_viiiiiiiidi_80", "jsCall_viiiiiiiidi_81", "jsCall_viiiiiiiidi_82", "jsCall_viiiiiiiidi_83", "jsCall_viiiiiiiidi_84", "jsCall_viiiiiiiidi_85", "jsCall_viiiiiiiidi_86", "jsCall_viiiiiiiidi_87", "jsCall_viiiiiiiidi_88", "jsCall_viiiiiiiidi_89", "jsCall_viiiiiiiidi_90", "jsCall_viiiiiiiidi_91", "jsCall_viiiiiiiidi_92", "jsCall_viiiiiiiidi_93", "jsCall_viiiiiiiidi_94", "jsCall_viiiiiiiidi_95", "jsCall_viiiiiiiidi_96", "jsCall_viiiiiiiidi_97", "jsCall_viiiiiiiidi_98", "jsCall_viiiiiiiidi_99", 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]; +var debug_table_viiiiiiiii = [0, "jsCall_viiiiiiiii_0", "jsCall_viiiiiiiii_1", "jsCall_viiiiiiiii_2", "jsCall_viiiiiiiii_3", "jsCall_viiiiiiiii_4", "jsCall_viiiiiiiii_5", "jsCall_viiiiiiiii_6", "jsCall_viiiiiiiii_7", "jsCall_viiiiiiiii_8", "jsCall_viiiiiiiii_9", "jsCall_viiiiiiiii_10", "jsCall_viiiiiiiii_11", "jsCall_viiiiiiiii_12", "jsCall_viiiiiiiii_13", "jsCall_viiiiiiiii_14", "jsCall_viiiiiiiii_15", "jsCall_viiiiiiiii_16", "jsCall_viiiiiiiii_17", "jsCall_viiiiiiiii_18", "jsCall_viiiiiiiii_19", "jsCall_viiiiiiiii_20", "jsCall_viiiiiiiii_21", "jsCall_viiiiiiiii_22", "jsCall_viiiiiiiii_23", "jsCall_viiiiiiiii_24", "jsCall_viiiiiiiii_25", "jsCall_viiiiiiiii_26", "jsCall_viiiiiiiii_27", "jsCall_viiiiiiiii_28", "jsCall_viiiiiiiii_29", "jsCall_viiiiiiiii_30", "jsCall_viiiiiiiii_31", "jsCall_viiiiiiiii_32", "jsCall_viiiiiiiii_33", "jsCall_viiiiiiiii_34", "jsCall_viiiiiiiii_35", "jsCall_viiiiiiiii_36", "jsCall_viiiiiiiii_37", "jsCall_viiiiiiiii_38", "jsCall_viiiiiiiii_39", "jsCall_viiiiiiiii_40", "jsCall_viiiiiiiii_41", "jsCall_viiiiiiiii_42", "jsCall_viiiiiiiii_43", "jsCall_viiiiiiiii_44", "jsCall_viiiiiiiii_45", "jsCall_viiiiiiiii_46", "jsCall_viiiiiiiii_47", "jsCall_viiiiiiiii_48", "jsCall_viiiiiiiii_49", "jsCall_viiiiiiiii_50", "jsCall_viiiiiiiii_51", "jsCall_viiiiiiiii_52", "jsCall_viiiiiiiii_53", "jsCall_viiiiiiiii_54", "jsCall_viiiiiiiii_55", "jsCall_viiiiiiiii_56", "jsCall_viiiiiiiii_57", "jsCall_viiiiiiiii_58", "jsCall_viiiiiiiii_59", "jsCall_viiiiiiiii_60", "jsCall_viiiiiiiii_61", "jsCall_viiiiiiiii_62", "jsCall_viiiiiiiii_63", "jsCall_viiiiiiiii_64", "jsCall_viiiiiiiii_65", "jsCall_viiiiiiiii_66", "jsCall_viiiiiiiii_67", "jsCall_viiiiiiiii_68", "jsCall_viiiiiiiii_69", "jsCall_viiiiiiiii_70", "jsCall_viiiiiiiii_71", "jsCall_viiiiiiiii_72", "jsCall_viiiiiiiii_73", "jsCall_viiiiiiiii_74", "jsCall_viiiiiiiii_75", "jsCall_viiiiiiiii_76", "jsCall_viiiiiiiii_77", "jsCall_viiiiiiiii_78", "jsCall_viiiiiiiii_79", "jsCall_viiiiiiiii_80", "jsCall_viiiiiiiii_81", "jsCall_viiiiiiiii_82", "jsCall_viiiiiiiii_83", "jsCall_viiiiiiiii_84", "jsCall_viiiiiiiii_85", "jsCall_viiiiiiiii_86", "jsCall_viiiiiiiii_87", "jsCall_viiiiiiiii_88", "jsCall_viiiiiiiii_89", "jsCall_viiiiiiiii_90", "jsCall_viiiiiiiii_91", "jsCall_viiiiiiiii_92", "jsCall_viiiiiiiii_93", "jsCall_viiiiiiiii_94", "jsCall_viiiiiiiii_95", "jsCall_viiiiiiiii_96", "jsCall_viiiiiiiii_97", "jsCall_viiiiiiiii_98", "jsCall_viiiiiiiii_99", "_yuv2rgba32_full_1_c", "_yuv2rgbx32_full_1_c", "_yuv2argb32_full_1_c", "_yuv2xrgb32_full_1_c", "_yuv2bgra32_full_1_c", "_yuv2bgrx32_full_1_c", "_yuv2abgr32_full_1_c", "_yuv2xbgr32_full_1_c", "_yuv2rgba64le_full_1_c", "_yuv2rgbx64le_full_1_c", "_yuv2rgba64be_full_1_c", "_yuv2rgbx64be_full_1_c", "_yuv2bgra64le_full_1_c", "_yuv2bgrx64le_full_1_c", "_yuv2bgra64be_full_1_c", "_yuv2bgrx64be_full_1_c", "_yuv2rgb24_full_1_c", "_yuv2bgr24_full_1_c", "_yuv2rgb48le_full_1_c", "_yuv2bgr48le_full_1_c", "_yuv2rgb48be_full_1_c", "_yuv2bgr48be_full_1_c", "_yuv2bgr4_byte_full_1_c", "_yuv2rgb4_byte_full_1_c", "_yuv2bgr8_full_1_c", "_yuv2rgb8_full_1_c", "_yuv2rgbx64le_1_c", "_yuv2rgba64le_1_c", "_yuv2rgbx64be_1_c", "_yuv2rgba64be_1_c", "_yuv2bgrx64le_1_c", "_yuv2bgra64le_1_c", "_yuv2bgrx64be_1_c", "_yuv2bgra64be_1_c", "_yuv2rgba32_1_c", "_yuv2rgbx32_1_c", "_yuv2rgba32_1_1_c", "_yuv2rgbx32_1_1_c", "_yuv2rgb16_1_c", "_yuv2rgb15_1_c", "_yuv2rgb12_1_c", "_yuv2rgb8_1_c", "_yuv2rgb4_1_c", "_yuv2rgb4b_1_c", "_yuv2rgb48le_1_c", "_yuv2rgb48be_1_c", "_yuv2bgr48le_1_c", "_yuv2bgr48be_1_c", "_yuv2rgb24_1_c", "_yuv2bgr24_1_c", "_yuv2monowhite_1_c", "_yuv2monoblack_1_c", "_yuv2yuyv422_1_c", "_yuv2yvyu422_1_c", "_yuv2uyvy422_1_c", "_yuv2ya8_1_c", "_yuv2ya16le_1_c", "_yuv2ya16be_1_c", "_yuy2toyv12_c", "_put_hevc_pel_bi_pixels_9", "_put_hevc_qpel_bi_h_9", "_put_hevc_qpel_bi_v_9", "_put_hevc_qpel_bi_hv_9", "_put_hevc_epel_bi_h_9", "_put_hevc_epel_bi_v_9", "_put_hevc_epel_bi_hv_9", "_put_hevc_pel_bi_pixels_10", "_put_hevc_qpel_bi_h_10", "_put_hevc_qpel_bi_v_10", "_put_hevc_qpel_bi_hv_10", "_put_hevc_epel_bi_h_10", "_put_hevc_epel_bi_v_10", "_put_hevc_epel_bi_hv_10", "_put_hevc_pel_bi_pixels_12", "_put_hevc_qpel_bi_h_12", "_put_hevc_qpel_bi_v_12", "_put_hevc_qpel_bi_hv_12", "_put_hevc_epel_bi_h_12", "_put_hevc_epel_bi_v_12", "_put_hevc_epel_bi_hv_12", "_put_hevc_pel_bi_pixels_8", "_put_hevc_qpel_bi_h_8", "_put_hevc_qpel_bi_v_8", "_put_hevc_qpel_bi_hv_8", "_put_hevc_epel_bi_h_8", "_put_hevc_epel_bi_v_8", "_put_hevc_epel_bi_hv_8", 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, 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, 0, 0]; +var debug_table_viiiiiiiiii = [0, "jsCall_viiiiiiiiii_0", "jsCall_viiiiiiiiii_1", "jsCall_viiiiiiiiii_2", "jsCall_viiiiiiiiii_3", "jsCall_viiiiiiiiii_4", "jsCall_viiiiiiiiii_5", "jsCall_viiiiiiiiii_6", "jsCall_viiiiiiiiii_7", "jsCall_viiiiiiiiii_8", "jsCall_viiiiiiiiii_9", "jsCall_viiiiiiiiii_10", "jsCall_viiiiiiiiii_11", "jsCall_viiiiiiiiii_12", "jsCall_viiiiiiiiii_13", "jsCall_viiiiiiiiii_14", "jsCall_viiiiiiiiii_15", "jsCall_viiiiiiiiii_16", "jsCall_viiiiiiiiii_17", "jsCall_viiiiiiiiii_18", "jsCall_viiiiiiiiii_19", "jsCall_viiiiiiiiii_20", "jsCall_viiiiiiiiii_21", "jsCall_viiiiiiiiii_22", "jsCall_viiiiiiiiii_23", "jsCall_viiiiiiiiii_24", "jsCall_viiiiiiiiii_25", "jsCall_viiiiiiiiii_26", "jsCall_viiiiiiiiii_27", "jsCall_viiiiiiiiii_28", "jsCall_viiiiiiiiii_29", "jsCall_viiiiiiiiii_30", "jsCall_viiiiiiiiii_31", "jsCall_viiiiiiiiii_32", "jsCall_viiiiiiiiii_33", "jsCall_viiiiiiiiii_34", "jsCall_viiiiiiiiii_35", "jsCall_viiiiiiiiii_36", "jsCall_viiiiiiiiii_37", "jsCall_viiiiiiiiii_38", "jsCall_viiiiiiiiii_39", "jsCall_viiiiiiiiii_40", "jsCall_viiiiiiiiii_41", "jsCall_viiiiiiiiii_42", "jsCall_viiiiiiiiii_43", "jsCall_viiiiiiiiii_44", "jsCall_viiiiiiiiii_45", "jsCall_viiiiiiiiii_46", "jsCall_viiiiiiiiii_47", "jsCall_viiiiiiiiii_48", "jsCall_viiiiiiiiii_49", "jsCall_viiiiiiiiii_50", "jsCall_viiiiiiiiii_51", "jsCall_viiiiiiiiii_52", "jsCall_viiiiiiiiii_53", "jsCall_viiiiiiiiii_54", "jsCall_viiiiiiiiii_55", "jsCall_viiiiiiiiii_56", "jsCall_viiiiiiiiii_57", "jsCall_viiiiiiiiii_58", "jsCall_viiiiiiiiii_59", "jsCall_viiiiiiiiii_60", "jsCall_viiiiiiiiii_61", "jsCall_viiiiiiiiii_62", "jsCall_viiiiiiiiii_63", "jsCall_viiiiiiiiii_64", "jsCall_viiiiiiiiii_65", "jsCall_viiiiiiiiii_66", "jsCall_viiiiiiiiii_67", "jsCall_viiiiiiiiii_68", "jsCall_viiiiiiiiii_69", "jsCall_viiiiiiiiii_70", "jsCall_viiiiiiiiii_71", "jsCall_viiiiiiiiii_72", "jsCall_viiiiiiiiii_73", "jsCall_viiiiiiiiii_74", "jsCall_viiiiiiiiii_75", "jsCall_viiiiiiiiii_76", "jsCall_viiiiiiiiii_77", "jsCall_viiiiiiiiii_78", "jsCall_viiiiiiiiii_79", "jsCall_viiiiiiiiii_80", "jsCall_viiiiiiiiii_81", "jsCall_viiiiiiiiii_82", "jsCall_viiiiiiiiii_83", "jsCall_viiiiiiiiii_84", "jsCall_viiiiiiiiii_85", "jsCall_viiiiiiiiii_86", "jsCall_viiiiiiiiii_87", "jsCall_viiiiiiiiii_88", "jsCall_viiiiiiiiii_89", "jsCall_viiiiiiiiii_90", "jsCall_viiiiiiiiii_91", "jsCall_viiiiiiiiii_92", "jsCall_viiiiiiiiii_93", "jsCall_viiiiiiiiii_94", "jsCall_viiiiiiiiii_95", "jsCall_viiiiiiiiii_96", "jsCall_viiiiiiiiii_97", "jsCall_viiiiiiiiii_98", "jsCall_viiiiiiiiii_99", "_yuv2rgba32_full_2_c", "_yuv2rgbx32_full_2_c", "_yuv2argb32_full_2_c", "_yuv2xrgb32_full_2_c", "_yuv2bgra32_full_2_c", "_yuv2bgrx32_full_2_c", "_yuv2abgr32_full_2_c", "_yuv2xbgr32_full_2_c", "_yuv2rgba64le_full_2_c", "_yuv2rgbx64le_full_2_c", "_yuv2rgba64be_full_2_c", "_yuv2rgbx64be_full_2_c", "_yuv2bgra64le_full_2_c", "_yuv2bgrx64le_full_2_c", "_yuv2bgra64be_full_2_c", "_yuv2bgrx64be_full_2_c", "_yuv2rgb24_full_2_c", "_yuv2bgr24_full_2_c", "_yuv2rgb48le_full_2_c", "_yuv2bgr48le_full_2_c", "_yuv2rgb48be_full_2_c", "_yuv2bgr48be_full_2_c", "_yuv2bgr4_byte_full_2_c", "_yuv2rgb4_byte_full_2_c", "_yuv2bgr8_full_2_c", "_yuv2rgb8_full_2_c", "_yuv2rgbx64le_2_c", "_yuv2rgba64le_2_c", "_yuv2rgbx64be_2_c", "_yuv2rgba64be_2_c", "_yuv2bgrx64le_2_c", "_yuv2bgra64le_2_c", "_yuv2bgrx64be_2_c", "_yuv2bgra64be_2_c", "_yuv2rgba32_2_c", "_yuv2rgbx32_2_c", "_yuv2rgba32_1_2_c", "_yuv2rgbx32_1_2_c", "_yuv2rgb16_2_c", "_yuv2rgb15_2_c", "_yuv2rgb12_2_c", "_yuv2rgb8_2_c", "_yuv2rgb4_2_c", "_yuv2rgb4b_2_c", "_yuv2rgb48le_2_c", "_yuv2rgb48be_2_c", "_yuv2bgr48le_2_c", "_yuv2bgr48be_2_c", "_yuv2rgb24_2_c", "_yuv2bgr24_2_c", "_yuv2monowhite_2_c", "_yuv2monoblack_2_c", "_yuv2yuyv422_2_c", "_yuv2yvyu422_2_c", "_yuv2uyvy422_2_c", "_yuv2ya8_2_c", "_yuv2ya16le_2_c", "_yuv2ya16be_2_c", "_vu9_to_vu12_c", "_yvu9_to_yuy2_c", "_ff_emulated_edge_mc_8", "_ff_emulated_edge_mc_16", 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, 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, 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]; +var debug_table_viiiiiiiiiii = [0, "jsCall_viiiiiiiiiii_0", "jsCall_viiiiiiiiiii_1", "jsCall_viiiiiiiiiii_2", "jsCall_viiiiiiiiiii_3", "jsCall_viiiiiiiiiii_4", "jsCall_viiiiiiiiiii_5", "jsCall_viiiiiiiiiii_6", "jsCall_viiiiiiiiiii_7", "jsCall_viiiiiiiiiii_8", "jsCall_viiiiiiiiiii_9", "jsCall_viiiiiiiiiii_10", "jsCall_viiiiiiiiiii_11", "jsCall_viiiiiiiiiii_12", "jsCall_viiiiiiiiiii_13", "jsCall_viiiiiiiiiii_14", "jsCall_viiiiiiiiiii_15", "jsCall_viiiiiiiiiii_16", "jsCall_viiiiiiiiiii_17", "jsCall_viiiiiiiiiii_18", "jsCall_viiiiiiiiiii_19", "jsCall_viiiiiiiiiii_20", "jsCall_viiiiiiiiiii_21", "jsCall_viiiiiiiiiii_22", "jsCall_viiiiiiiiiii_23", "jsCall_viiiiiiiiiii_24", "jsCall_viiiiiiiiiii_25", "jsCall_viiiiiiiiiii_26", "jsCall_viiiiiiiiiii_27", "jsCall_viiiiiiiiiii_28", "jsCall_viiiiiiiiiii_29", "jsCall_viiiiiiiiiii_30", "jsCall_viiiiiiiiiii_31", "jsCall_viiiiiiiiiii_32", "jsCall_viiiiiiiiiii_33", "jsCall_viiiiiiiiiii_34", "jsCall_viiiiiiiiiii_35", "jsCall_viiiiiiiiiii_36", "jsCall_viiiiiiiiiii_37", "jsCall_viiiiiiiiiii_38", "jsCall_viiiiiiiiiii_39", "jsCall_viiiiiiiiiii_40", "jsCall_viiiiiiiiiii_41", "jsCall_viiiiiiiiiii_42", "jsCall_viiiiiiiiiii_43", "jsCall_viiiiiiiiiii_44", "jsCall_viiiiiiiiiii_45", "jsCall_viiiiiiiiiii_46", "jsCall_viiiiiiiiiii_47", "jsCall_viiiiiiiiiii_48", "jsCall_viiiiiiiiiii_49", "jsCall_viiiiiiiiiii_50", "jsCall_viiiiiiiiiii_51", "jsCall_viiiiiiiiiii_52", "jsCall_viiiiiiiiiii_53", "jsCall_viiiiiiiiiii_54", "jsCall_viiiiiiiiiii_55", "jsCall_viiiiiiiiiii_56", "jsCall_viiiiiiiiiii_57", "jsCall_viiiiiiiiiii_58", "jsCall_viiiiiiiiiii_59", "jsCall_viiiiiiiiiii_60", "jsCall_viiiiiiiiiii_61", "jsCall_viiiiiiiiiii_62", "jsCall_viiiiiiiiiii_63", "jsCall_viiiiiiiiiii_64", "jsCall_viiiiiiiiiii_65", "jsCall_viiiiiiiiiii_66", "jsCall_viiiiiiiiiii_67", "jsCall_viiiiiiiiiii_68", "jsCall_viiiiiiiiiii_69", "jsCall_viiiiiiiiiii_70", "jsCall_viiiiiiiiiii_71", "jsCall_viiiiiiiiiii_72", "jsCall_viiiiiiiiiii_73", "jsCall_viiiiiiiiiii_74", "jsCall_viiiiiiiiiii_75", "jsCall_viiiiiiiiiii_76", "jsCall_viiiiiiiiiii_77", "jsCall_viiiiiiiiiii_78", "jsCall_viiiiiiiiiii_79", "jsCall_viiiiiiiiiii_80", "jsCall_viiiiiiiiiii_81", "jsCall_viiiiiiiiiii_82", "jsCall_viiiiiiiiiii_83", "jsCall_viiiiiiiiiii_84", "jsCall_viiiiiiiiiii_85", "jsCall_viiiiiiiiiii_86", "jsCall_viiiiiiiiiii_87", "jsCall_viiiiiiiiiii_88", "jsCall_viiiiiiiiiii_89", "jsCall_viiiiiiiiiii_90", "jsCall_viiiiiiiiiii_91", "jsCall_viiiiiiiiiii_92", "jsCall_viiiiiiiiiii_93", "jsCall_viiiiiiiiiii_94", "jsCall_viiiiiiiiiii_95", "jsCall_viiiiiiiiiii_96", "jsCall_viiiiiiiiiii_97", "jsCall_viiiiiiiiiii_98", "jsCall_viiiiiiiiiii_99", "_put_hevc_pel_uni_w_pixels_9", "_put_hevc_qpel_uni_w_h_9", "_put_hevc_qpel_uni_w_v_9", "_put_hevc_qpel_uni_w_hv_9", "_put_hevc_epel_uni_w_h_9", "_put_hevc_epel_uni_w_v_9", "_put_hevc_epel_uni_w_hv_9", "_put_hevc_pel_uni_w_pixels_10", "_put_hevc_qpel_uni_w_h_10", "_put_hevc_qpel_uni_w_v_10", "_put_hevc_qpel_uni_w_hv_10", "_put_hevc_epel_uni_w_h_10", "_put_hevc_epel_uni_w_v_10", "_put_hevc_epel_uni_w_hv_10", "_put_hevc_pel_uni_w_pixels_12", "_put_hevc_qpel_uni_w_h_12", "_put_hevc_qpel_uni_w_v_12", "_put_hevc_qpel_uni_w_hv_12", "_put_hevc_epel_uni_w_h_12", "_put_hevc_epel_uni_w_v_12", "_put_hevc_epel_uni_w_hv_12", "_put_hevc_pel_uni_w_pixels_8", "_put_hevc_qpel_uni_w_h_8", "_put_hevc_qpel_uni_w_v_8", "_put_hevc_qpel_uni_w_hv_8", "_put_hevc_epel_uni_w_h_8", "_put_hevc_epel_uni_w_v_8", "_put_hevc_epel_uni_w_hv_8", 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, 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, 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, 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]; +var debug_table_viiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiii_0", "jsCall_viiiiiiiiiiii_1", "jsCall_viiiiiiiiiiii_2", "jsCall_viiiiiiiiiiii_3", "jsCall_viiiiiiiiiiii_4", "jsCall_viiiiiiiiiiii_5", "jsCall_viiiiiiiiiiii_6", "jsCall_viiiiiiiiiiii_7", "jsCall_viiiiiiiiiiii_8", "jsCall_viiiiiiiiiiii_9", "jsCall_viiiiiiiiiiii_10", "jsCall_viiiiiiiiiiii_11", "jsCall_viiiiiiiiiiii_12", "jsCall_viiiiiiiiiiii_13", "jsCall_viiiiiiiiiiii_14", "jsCall_viiiiiiiiiiii_15", "jsCall_viiiiiiiiiiii_16", "jsCall_viiiiiiiiiiii_17", "jsCall_viiiiiiiiiiii_18", "jsCall_viiiiiiiiiiii_19", "jsCall_viiiiiiiiiiii_20", "jsCall_viiiiiiiiiiii_21", "jsCall_viiiiiiiiiiii_22", "jsCall_viiiiiiiiiiii_23", "jsCall_viiiiiiiiiiii_24", "jsCall_viiiiiiiiiiii_25", "jsCall_viiiiiiiiiiii_26", "jsCall_viiiiiiiiiiii_27", "jsCall_viiiiiiiiiiii_28", "jsCall_viiiiiiiiiiii_29", "jsCall_viiiiiiiiiiii_30", "jsCall_viiiiiiiiiiii_31", "jsCall_viiiiiiiiiiii_32", "jsCall_viiiiiiiiiiii_33", "jsCall_viiiiiiiiiiii_34", "jsCall_viiiiiiiiiiii_35", "jsCall_viiiiiiiiiiii_36", "jsCall_viiiiiiiiiiii_37", "jsCall_viiiiiiiiiiii_38", "jsCall_viiiiiiiiiiii_39", "jsCall_viiiiiiiiiiii_40", "jsCall_viiiiiiiiiiii_41", "jsCall_viiiiiiiiiiii_42", "jsCall_viiiiiiiiiiii_43", "jsCall_viiiiiiiiiiii_44", "jsCall_viiiiiiiiiiii_45", "jsCall_viiiiiiiiiiii_46", "jsCall_viiiiiiiiiiii_47", "jsCall_viiiiiiiiiiii_48", "jsCall_viiiiiiiiiiii_49", "jsCall_viiiiiiiiiiii_50", "jsCall_viiiiiiiiiiii_51", "jsCall_viiiiiiiiiiii_52", "jsCall_viiiiiiiiiiii_53", "jsCall_viiiiiiiiiiii_54", "jsCall_viiiiiiiiiiii_55", "jsCall_viiiiiiiiiiii_56", "jsCall_viiiiiiiiiiii_57", "jsCall_viiiiiiiiiiii_58", "jsCall_viiiiiiiiiiii_59", "jsCall_viiiiiiiiiiii_60", "jsCall_viiiiiiiiiiii_61", "jsCall_viiiiiiiiiiii_62", "jsCall_viiiiiiiiiiii_63", "jsCall_viiiiiiiiiiii_64", "jsCall_viiiiiiiiiiii_65", "jsCall_viiiiiiiiiiii_66", "jsCall_viiiiiiiiiiii_67", "jsCall_viiiiiiiiiiii_68", "jsCall_viiiiiiiiiiii_69", "jsCall_viiiiiiiiiiii_70", "jsCall_viiiiiiiiiiii_71", "jsCall_viiiiiiiiiiii_72", "jsCall_viiiiiiiiiiii_73", "jsCall_viiiiiiiiiiii_74", "jsCall_viiiiiiiiiiii_75", "jsCall_viiiiiiiiiiii_76", "jsCall_viiiiiiiiiiii_77", "jsCall_viiiiiiiiiiii_78", "jsCall_viiiiiiiiiiii_79", "jsCall_viiiiiiiiiiii_80", "jsCall_viiiiiiiiiiii_81", "jsCall_viiiiiiiiiiii_82", "jsCall_viiiiiiiiiiii_83", "jsCall_viiiiiiiiiiii_84", "jsCall_viiiiiiiiiiii_85", "jsCall_viiiiiiiiiiii_86", "jsCall_viiiiiiiiiiii_87", "jsCall_viiiiiiiiiiii_88", "jsCall_viiiiiiiiiiii_89", "jsCall_viiiiiiiiiiii_90", "jsCall_viiiiiiiiiiii_91", "jsCall_viiiiiiiiiiii_92", "jsCall_viiiiiiiiiiii_93", "jsCall_viiiiiiiiiiii_94", "jsCall_viiiiiiiiiiii_95", "jsCall_viiiiiiiiiiii_96", "jsCall_viiiiiiiiiiii_97", "jsCall_viiiiiiiiiiii_98", "jsCall_viiiiiiiiiiii_99", "_yuv2rgba32_full_X_c", "_yuv2rgbx32_full_X_c", "_yuv2argb32_full_X_c", "_yuv2xrgb32_full_X_c", "_yuv2bgra32_full_X_c", "_yuv2bgrx32_full_X_c", "_yuv2abgr32_full_X_c", "_yuv2xbgr32_full_X_c", "_yuv2rgba64le_full_X_c", "_yuv2rgbx64le_full_X_c", "_yuv2rgba64be_full_X_c", "_yuv2rgbx64be_full_X_c", "_yuv2bgra64le_full_X_c", "_yuv2bgrx64le_full_X_c", "_yuv2bgra64be_full_X_c", "_yuv2bgrx64be_full_X_c", "_yuv2rgb24_full_X_c", "_yuv2bgr24_full_X_c", "_yuv2rgb48le_full_X_c", "_yuv2bgr48le_full_X_c", "_yuv2rgb48be_full_X_c", "_yuv2bgr48be_full_X_c", "_yuv2bgr4_byte_full_X_c", "_yuv2rgb4_byte_full_X_c", "_yuv2bgr8_full_X_c", "_yuv2rgb8_full_X_c", "_yuv2gbrp_full_X_c", "_yuv2gbrp16_full_X_c", "_yuv2rgbx64le_X_c", "_yuv2rgba64le_X_c", "_yuv2rgbx64be_X_c", "_yuv2rgba64be_X_c", "_yuv2bgrx64le_X_c", "_yuv2bgra64le_X_c", "_yuv2bgrx64be_X_c", "_yuv2bgra64be_X_c", "_yuv2rgba32_X_c", "_yuv2rgbx32_X_c", "_yuv2rgba32_1_X_c", "_yuv2rgbx32_1_X_c", "_yuv2rgb16_X_c", "_yuv2rgb15_X_c", "_yuv2rgb12_X_c", "_yuv2rgb8_X_c", "_yuv2rgb4_X_c", "_yuv2rgb4b_X_c", "_yuv2rgb48le_X_c", "_yuv2rgb48be_X_c", "_yuv2bgr48le_X_c", "_yuv2bgr48be_X_c", "_yuv2rgb24_X_c", "_yuv2bgr24_X_c", "_yuv2monowhite_X_c", "_yuv2ayuv64le_X_c", "_yuv2monoblack_X_c", "_yuv2yuyv422_X_c", "_yuv2yvyu422_X_c", "_yuv2uyvy422_X_c", "_yuv2ya8_X_c", "_yuv2ya16le_X_c", "_yuv2ya16be_X_c", "_sao_edge_restore_0_9", "_sao_edge_restore_1_9", "_sao_edge_restore_0_10", "_sao_edge_restore_1_10", "_sao_edge_restore_0_12", "_sao_edge_restore_1_12", "_sao_edge_restore_0_8", "_sao_edge_restore_1_8", 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_table_viiiiiiiiiiiiii = [0, "jsCall_viiiiiiiiiiiiii_0", "jsCall_viiiiiiiiiiiiii_1", "jsCall_viiiiiiiiiiiiii_2", "jsCall_viiiiiiiiiiiiii_3", "jsCall_viiiiiiiiiiiiii_4", "jsCall_viiiiiiiiiiiiii_5", "jsCall_viiiiiiiiiiiiii_6", "jsCall_viiiiiiiiiiiiii_7", "jsCall_viiiiiiiiiiiiii_8", "jsCall_viiiiiiiiiiiiii_9", "jsCall_viiiiiiiiiiiiii_10", "jsCall_viiiiiiiiiiiiii_11", "jsCall_viiiiiiiiiiiiii_12", "jsCall_viiiiiiiiiiiiii_13", "jsCall_viiiiiiiiiiiiii_14", "jsCall_viiiiiiiiiiiiii_15", "jsCall_viiiiiiiiiiiiii_16", "jsCall_viiiiiiiiiiiiii_17", "jsCall_viiiiiiiiiiiiii_18", "jsCall_viiiiiiiiiiiiii_19", "jsCall_viiiiiiiiiiiiii_20", "jsCall_viiiiiiiiiiiiii_21", "jsCall_viiiiiiiiiiiiii_22", "jsCall_viiiiiiiiiiiiii_23", "jsCall_viiiiiiiiiiiiii_24", "jsCall_viiiiiiiiiiiiii_25", "jsCall_viiiiiiiiiiiiii_26", "jsCall_viiiiiiiiiiiiii_27", "jsCall_viiiiiiiiiiiiii_28", "jsCall_viiiiiiiiiiiiii_29", "jsCall_viiiiiiiiiiiiii_30", "jsCall_viiiiiiiiiiiiii_31", "jsCall_viiiiiiiiiiiiii_32", "jsCall_viiiiiiiiiiiiii_33", "jsCall_viiiiiiiiiiiiii_34", "jsCall_viiiiiiiiiiiiii_35", "jsCall_viiiiiiiiiiiiii_36", "jsCall_viiiiiiiiiiiiii_37", "jsCall_viiiiiiiiiiiiii_38", "jsCall_viiiiiiiiiiiiii_39", "jsCall_viiiiiiiiiiiiii_40", "jsCall_viiiiiiiiiiiiii_41", "jsCall_viiiiiiiiiiiiii_42", "jsCall_viiiiiiiiiiiiii_43", "jsCall_viiiiiiiiiiiiii_44", "jsCall_viiiiiiiiiiiiii_45", "jsCall_viiiiiiiiiiiiii_46", "jsCall_viiiiiiiiiiiiii_47", "jsCall_viiiiiiiiiiiiii_48", "jsCall_viiiiiiiiiiiiii_49", "jsCall_viiiiiiiiiiiiii_50", "jsCall_viiiiiiiiiiiiii_51", "jsCall_viiiiiiiiiiiiii_52", "jsCall_viiiiiiiiiiiiii_53", "jsCall_viiiiiiiiiiiiii_54", "jsCall_viiiiiiiiiiiiii_55", "jsCall_viiiiiiiiiiiiii_56", "jsCall_viiiiiiiiiiiiii_57", "jsCall_viiiiiiiiiiiiii_58", "jsCall_viiiiiiiiiiiiii_59", "jsCall_viiiiiiiiiiiiii_60", "jsCall_viiiiiiiiiiiiii_61", "jsCall_viiiiiiiiiiiiii_62", "jsCall_viiiiiiiiiiiiii_63", "jsCall_viiiiiiiiiiiiii_64", "jsCall_viiiiiiiiiiiiii_65", "jsCall_viiiiiiiiiiiiii_66", "jsCall_viiiiiiiiiiiiii_67", "jsCall_viiiiiiiiiiiiii_68", "jsCall_viiiiiiiiiiiiii_69", "jsCall_viiiiiiiiiiiiii_70", "jsCall_viiiiiiiiiiiiii_71", "jsCall_viiiiiiiiiiiiii_72", "jsCall_viiiiiiiiiiiiii_73", "jsCall_viiiiiiiiiiiiii_74", "jsCall_viiiiiiiiiiiiii_75", "jsCall_viiiiiiiiiiiiii_76", "jsCall_viiiiiiiiiiiiii_77", "jsCall_viiiiiiiiiiiiii_78", "jsCall_viiiiiiiiiiiiii_79", "jsCall_viiiiiiiiiiiiii_80", "jsCall_viiiiiiiiiiiiii_81", "jsCall_viiiiiiiiiiiiii_82", "jsCall_viiiiiiiiiiiiii_83", "jsCall_viiiiiiiiiiiiii_84", "jsCall_viiiiiiiiiiiiii_85", "jsCall_viiiiiiiiiiiiii_86", "jsCall_viiiiiiiiiiiiii_87", "jsCall_viiiiiiiiiiiiii_88", "jsCall_viiiiiiiiiiiiii_89", "jsCall_viiiiiiiiiiiiii_90", "jsCall_viiiiiiiiiiiiii_91", "jsCall_viiiiiiiiiiiiii_92", "jsCall_viiiiiiiiiiiiii_93", "jsCall_viiiiiiiiiiiiii_94", "jsCall_viiiiiiiiiiiiii_95", "jsCall_viiiiiiiiiiiiii_96", "jsCall_viiiiiiiiiiiiii_97", "jsCall_viiiiiiiiiiiiii_98", "jsCall_viiiiiiiiiiiiii_99", "_put_hevc_pel_bi_w_pixels_9", "_put_hevc_qpel_bi_w_h_9", "_put_hevc_qpel_bi_w_v_9", "_put_hevc_qpel_bi_w_hv_9", "_put_hevc_epel_bi_w_h_9", "_put_hevc_epel_bi_w_v_9", "_put_hevc_epel_bi_w_hv_9", "_put_hevc_pel_bi_w_pixels_10", "_put_hevc_qpel_bi_w_h_10", "_put_hevc_qpel_bi_w_v_10", "_put_hevc_qpel_bi_w_hv_10", "_put_hevc_epel_bi_w_h_10", "_put_hevc_epel_bi_w_v_10", "_put_hevc_epel_bi_w_hv_10", "_put_hevc_pel_bi_w_pixels_12", "_put_hevc_qpel_bi_w_h_12", "_put_hevc_qpel_bi_w_v_12", "_put_hevc_qpel_bi_w_hv_12", "_put_hevc_epel_bi_w_h_12", "_put_hevc_epel_bi_w_v_12", "_put_hevc_epel_bi_w_hv_12", "_put_hevc_pel_bi_w_pixels_8", "_put_hevc_qpel_bi_w_h_8", "_put_hevc_qpel_bi_w_v_8", "_put_hevc_qpel_bi_w_hv_8", "_put_hevc_epel_bi_w_h_8", "_put_hevc_epel_bi_w_v_8", "_put_hevc_epel_bi_w_hv_8", 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, 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, 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, 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]; +var debug_table_viiijj = [0, "jsCall_viiijj_0", "jsCall_viiijj_1", "jsCall_viiijj_2", "jsCall_viiijj_3", "jsCall_viiijj_4", "jsCall_viiijj_5", "jsCall_viiijj_6", "jsCall_viiijj_7", "jsCall_viiijj_8", "jsCall_viiijj_9", "jsCall_viiijj_10", "jsCall_viiijj_11", "jsCall_viiijj_12", "jsCall_viiijj_13", "jsCall_viiijj_14", "jsCall_viiijj_15", "jsCall_viiijj_16", "jsCall_viiijj_17", "jsCall_viiijj_18", "jsCall_viiijj_19", "jsCall_viiijj_20", "jsCall_viiijj_21", "jsCall_viiijj_22", "jsCall_viiijj_23", "jsCall_viiijj_24", "jsCall_viiijj_25", "jsCall_viiijj_26", "jsCall_viiijj_27", "jsCall_viiijj_28", "jsCall_viiijj_29", "jsCall_viiijj_30", "jsCall_viiijj_31", "jsCall_viiijj_32", "jsCall_viiijj_33", "jsCall_viiijj_34", "jsCall_viiijj_35", "jsCall_viiijj_36", "jsCall_viiijj_37", "jsCall_viiijj_38", "jsCall_viiijj_39", "jsCall_viiijj_40", "jsCall_viiijj_41", "jsCall_viiijj_42", "jsCall_viiijj_43", "jsCall_viiijj_44", "jsCall_viiijj_45", "jsCall_viiijj_46", "jsCall_viiijj_47", "jsCall_viiijj_48", "jsCall_viiijj_49", "jsCall_viiijj_50", "jsCall_viiijj_51", "jsCall_viiijj_52", "jsCall_viiijj_53", "jsCall_viiijj_54", "jsCall_viiijj_55", "jsCall_viiijj_56", "jsCall_viiijj_57", "jsCall_viiijj_58", "jsCall_viiijj_59", "jsCall_viiijj_60", "jsCall_viiijj_61", "jsCall_viiijj_62", "jsCall_viiijj_63", "jsCall_viiijj_64", "jsCall_viiijj_65", "jsCall_viiijj_66", "jsCall_viiijj_67", "jsCall_viiijj_68", "jsCall_viiijj_69", "jsCall_viiijj_70", "jsCall_viiijj_71", "jsCall_viiijj_72", "jsCall_viiijj_73", "jsCall_viiijj_74", "jsCall_viiijj_75", "jsCall_viiijj_76", "jsCall_viiijj_77", "jsCall_viiijj_78", "jsCall_viiijj_79", "jsCall_viiijj_80", "jsCall_viiijj_81", "jsCall_viiijj_82", "jsCall_viiijj_83", "jsCall_viiijj_84", "jsCall_viiijj_85", "jsCall_viiijj_86", "jsCall_viiijj_87", "jsCall_viiijj_88", "jsCall_viiijj_89", "jsCall_viiijj_90", "jsCall_viiijj_91", "jsCall_viiijj_92", "jsCall_viiijj_93", "jsCall_viiijj_94", "jsCall_viiijj_95", "jsCall_viiijj_96", "jsCall_viiijj_97", "jsCall_viiijj_98", "jsCall_viiijj_99", "_resample_one_int16", "_resample_one_int32", "_resample_one_float", "_resample_one_double", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +var debug_tables = { + "dd": debug_table_dd, + "did": debug_table_did, + "didd": debug_table_didd, + "fii": debug_table_fii, + "fiii": debug_table_fiii, + "ii": debug_table_ii, + "iid": debug_table_iid, + "iidiiii": debug_table_iidiiii, + "iii": debug_table_iii, + "iiii": debug_table_iiii, + "iiiii": debug_table_iiiii, + "iiiiii": debug_table_iiiiii, + "iiiiiii": debug_table_iiiiiii, + "iiiiiiidiiddii": debug_table_iiiiiiidiiddii, + "iiiiiiii": debug_table_iiiiiiii, + "iiiiiiiid": debug_table_iiiiiiiid, + "iiiiij": debug_table_iiiiij, + "iiiji": debug_table_iiiji, + "iiijjji": debug_table_iiijjji, + "jii": debug_table_jii, + "jiiij": debug_table_jiiij, + "jiiji": debug_table_jiiji, + "jij": debug_table_jij, + "jiji": debug_table_jiji, + "v": debug_table_v, + "vdiidiiiii": debug_table_vdiidiiiii, + "vdiidiiiiii": debug_table_vdiidiiiiii, + "vi": debug_table_vi, + "vii": debug_table_vii, + "viidi": debug_table_viidi, + "viifi": debug_table_viifi, + "viii": debug_table_viii, + "viiid": debug_table_viiid, + "viiii": debug_table_viiii, + "viiiifii": debug_table_viiiifii, + "viiiii": debug_table_viiiii, + "viiiiidd": debug_table_viiiiidd, + "viiiiiddi": debug_table_viiiiiddi, + "viiiiii": debug_table_viiiiii, + "viiiiiifi": debug_table_viiiiiifi, + "viiiiiii": debug_table_viiiiiii, + "viiiiiiii": debug_table_viiiiiiii, + "viiiiiiiid": debug_table_viiiiiiiid, + "viiiiiiiidi": debug_table_viiiiiiiidi, + "viiiiiiiii": debug_table_viiiiiiiii, + "viiiiiiiiii": debug_table_viiiiiiiiii, + "viiiiiiiiiii": debug_table_viiiiiiiiiii, + "viiiiiiiiiiii": debug_table_viiiiiiiiiiii, + "viiiiiiiiiiiiii": debug_table_viiiiiiiiiiiiii, + "viiijj": debug_table_viiijj +}; + +function nullFunc_dd(x) { + abortFnPtrError(x, "dd") +} + +function nullFunc_did(x) { + abortFnPtrError(x, "did") +} + +function nullFunc_didd(x) { + abortFnPtrError(x, "didd") +} + +function nullFunc_fii(x) { + abortFnPtrError(x, "fii") +} + +function nullFunc_fiii(x) { + abortFnPtrError(x, "fiii") +} + +function nullFunc_ii(x) { + abortFnPtrError(x, "ii") +} + +function nullFunc_iid(x) { + abortFnPtrError(x, "iid") +} + +function nullFunc_iidiiii(x) { + abortFnPtrError(x, "iidiiii") +} + +function nullFunc_iii(x) { + abortFnPtrError(x, "iii") +} + +function nullFunc_iiii(x) { + abortFnPtrError(x, "iiii") +} + +function nullFunc_iiiii(x) { + abortFnPtrError(x, "iiiii") +} + +function nullFunc_iiiiii(x) { + abortFnPtrError(x, "iiiiii") +} + +function nullFunc_iiiiiii(x) { + abortFnPtrError(x, "iiiiiii") +} + +function nullFunc_iiiiiiidiiddii(x) { + abortFnPtrError(x, "iiiiiiidiiddii") +} + +function nullFunc_iiiiiiii(x) { + abortFnPtrError(x, "iiiiiiii") +} + +function nullFunc_iiiiiiiid(x) { + abortFnPtrError(x, "iiiiiiiid") +} + +function nullFunc_iiiiij(x) { + abortFnPtrError(x, "iiiiij") +} + +function nullFunc_iiiji(x) { + abortFnPtrError(x, "iiiji") +} + +function nullFunc_iiijjji(x) { + abortFnPtrError(x, "iiijjji") +} + +function nullFunc_jii(x) { + abortFnPtrError(x, "jii") +} + +function nullFunc_jiiij(x) { + abortFnPtrError(x, "jiiij") +} + +function nullFunc_jiiji(x) { + abortFnPtrError(x, "jiiji") +} + +function nullFunc_jij(x) { + abortFnPtrError(x, "jij") +} + +function nullFunc_jiji(x) { + abortFnPtrError(x, "jiji") +} + +function nullFunc_v(x) { + abortFnPtrError(x, "v") +} + +function nullFunc_vdiidiiiii(x) { + abortFnPtrError(x, "vdiidiiiii") +} + +function nullFunc_vdiidiiiiii(x) { + abortFnPtrError(x, "vdiidiiiiii") +} + +function nullFunc_vi(x) { + abortFnPtrError(x, "vi") +} + +function nullFunc_vii(x) { + abortFnPtrError(x, "vii") +} + +function nullFunc_viidi(x) { + abortFnPtrError(x, "viidi") +} + +function nullFunc_viifi(x) { + abortFnPtrError(x, "viifi") +} + +function nullFunc_viii(x) { + abortFnPtrError(x, "viii") +} + +function nullFunc_viiid(x) { + abortFnPtrError(x, "viiid") +} + +function nullFunc_viiii(x) { + abortFnPtrError(x, "viiii") +} + +function nullFunc_viiiifii(x) { + abortFnPtrError(x, "viiiifii") +} + +function nullFunc_viiiii(x) { + abortFnPtrError(x, "viiiii") +} + +function nullFunc_viiiiidd(x) { + abortFnPtrError(x, "viiiiidd") +} + +function nullFunc_viiiiiddi(x) { + abortFnPtrError(x, "viiiiiddi") +} + +function nullFunc_viiiiii(x) { + abortFnPtrError(x, "viiiiii") +} + +function nullFunc_viiiiiifi(x) { + abortFnPtrError(x, "viiiiiifi") +} + +function nullFunc_viiiiiii(x) { + abortFnPtrError(x, "viiiiiii") +} + +function nullFunc_viiiiiiii(x) { + abortFnPtrError(x, "viiiiiiii") +} + +function nullFunc_viiiiiiiid(x) { + abortFnPtrError(x, "viiiiiiiid") +} + +function nullFunc_viiiiiiiidi(x) { + abortFnPtrError(x, "viiiiiiiidi") +} + +function nullFunc_viiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiii") +} + +function nullFunc_viiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiii") +} + +function nullFunc_viiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiii") +} + +function nullFunc_viiiiiiiiiiiiii(x) { + abortFnPtrError(x, "viiiiiiiiiiiiii") +} + +function nullFunc_viiijj(x) { + abortFnPtrError(x, "viiijj") +} + +function jsCall_dd(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_did(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_didd(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_fii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_fiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_ii(index, a1) { + return functionPointers[index](a1) +} + +function jsCall_iid(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iidiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_iiii(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_iiiii(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiiiii(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiiiii(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_iiiiiiidiiddii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) +} + +function jsCall_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_iiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8) { + return functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_iiiiij(index, a1, a2, a3, a4, a5) { + return functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_iiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_iiijjji(index, a1, a2, a3, a4, a5, a6) { + return functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_jii(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiiij(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jiiji(index, a1, a2, a3, a4) { + return functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_jij(index, a1, a2) { + return functionPointers[index](a1, a2) +} + +function jsCall_jiji(index, a1, a2, a3) { + return functionPointers[index](a1, a2, a3) +} + +function jsCall_v(index) { + functionPointers[index]() +} + +function jsCall_vdiidiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_vdiidiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_vi(index, a1) { + functionPointers[index](a1) +} + +function jsCall_vii(index, a1, a2) { + functionPointers[index](a1, a2) +} + +function jsCall_viidi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viifi(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viii(index, a1, a2, a3) { + functionPointers[index](a1, a2, a3) +} + +function jsCall_viiid(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiii(index, a1, a2, a3, a4) { + functionPointers[index](a1, a2, a3, a4) +} + +function jsCall_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiii(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} + +function jsCall_viiiiidd(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiddi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiii(index, a1, a2, a3, a4, a5, a6) { + functionPointers[index](a1, a2, a3, a4, a5, a6) +} + +function jsCall_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7) +} + +function jsCall_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8) +} + +function jsCall_viiiiiiiid(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiidi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9) +} + +function jsCall_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) +} + +function jsCall_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) +} + +function jsCall_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) +} + +function jsCall_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) { + functionPointers[index](a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) +} + +function jsCall_viiijj(index, a1, a2, a3, a4, a5) { + functionPointers[index](a1, a2, a3, a4, a5) +} +var asmGlobalArg = {}; +var asmLibraryArg = { + "___buildEnvironment": ___buildEnvironment, + "___lock": ___lock, + "___syscall221": ___syscall221, + "___syscall3": ___syscall3, + "___syscall5": ___syscall5, + "___unlock": ___unlock, + "___wasi_fd_close": ___wasi_fd_close, + "___wasi_fd_fdstat_get": ___wasi_fd_fdstat_get, + "___wasi_fd_seek": ___wasi_fd_seek, + "___wasi_fd_write": ___wasi_fd_write, + "__emscripten_fetch_free": __emscripten_fetch_free, + "__memory_base": 1024, + "__table_base": 0, + "_abort": _abort, + "_clock": _clock, + "_clock_gettime": _clock_gettime, + "_emscripten_asm_const_i": _emscripten_asm_const_i, + "_emscripten_get_heap_size": _emscripten_get_heap_size, + "_emscripten_is_main_browser_thread": _emscripten_is_main_browser_thread, + "_emscripten_memcpy_big": _emscripten_memcpy_big, + "_emscripten_resize_heap": _emscripten_resize_heap, + "_emscripten_start_fetch": _emscripten_start_fetch, + "_fabs": _fabs, + "_getenv": _getenv, + "_gettimeofday": _gettimeofday, + "_gmtime_r": _gmtime_r, + "_llvm_exp2_f64": _llvm_exp2_f64, + "_llvm_log2_f32": _llvm_log2_f32, + "_llvm_stackrestore": _llvm_stackrestore, + "_llvm_stacksave": _llvm_stacksave, + "_llvm_trunc_f64": _llvm_trunc_f64, + "_localtime_r": _localtime_r, + "_nanosleep": _nanosleep, + "_pthread_cond_destroy": _pthread_cond_destroy, + "_pthread_cond_init": _pthread_cond_init, + "_pthread_create": _pthread_create, + "_pthread_join": _pthread_join, + "_strftime": _strftime, + "_sysconf": _sysconf, + "_time": _time, + "abortStackOverflow": abortStackOverflow, + "getTempRet0": getTempRet0, + "jsCall_dd": jsCall_dd, + "jsCall_did": jsCall_did, + "jsCall_didd": jsCall_didd, + "jsCall_fii": jsCall_fii, + "jsCall_fiii": jsCall_fiii, + "jsCall_ii": jsCall_ii, + "jsCall_iid": jsCall_iid, + "jsCall_iidiiii": jsCall_iidiiii, + "jsCall_iii": jsCall_iii, + "jsCall_iiii": jsCall_iiii, + "jsCall_iiiii": jsCall_iiiii, + "jsCall_iiiiii": jsCall_iiiiii, + "jsCall_iiiiiii": jsCall_iiiiiii, + "jsCall_iiiiiiidiiddii": jsCall_iiiiiiidiiddii, + "jsCall_iiiiiiii": jsCall_iiiiiiii, + "jsCall_iiiiiiiid": jsCall_iiiiiiiid, + "jsCall_iiiiij": jsCall_iiiiij, + "jsCall_iiiji": jsCall_iiiji, + "jsCall_iiijjji": jsCall_iiijjji, + "jsCall_jii": jsCall_jii, + "jsCall_jiiij": jsCall_jiiij, + "jsCall_jiiji": jsCall_jiiji, + "jsCall_jij": jsCall_jij, + "jsCall_jiji": jsCall_jiji, + "jsCall_v": jsCall_v, + "jsCall_vdiidiiiii": jsCall_vdiidiiiii, + "jsCall_vdiidiiiiii": jsCall_vdiidiiiiii, + "jsCall_vi": jsCall_vi, + "jsCall_vii": jsCall_vii, + "jsCall_viidi": jsCall_viidi, + "jsCall_viifi": jsCall_viifi, + "jsCall_viii": jsCall_viii, + "jsCall_viiid": jsCall_viiid, + "jsCall_viiii": jsCall_viiii, + "jsCall_viiiifii": jsCall_viiiifii, + "jsCall_viiiii": jsCall_viiiii, + "jsCall_viiiiidd": jsCall_viiiiidd, + "jsCall_viiiiiddi": jsCall_viiiiiddi, + "jsCall_viiiiii": jsCall_viiiiii, + "jsCall_viiiiiifi": jsCall_viiiiiifi, + "jsCall_viiiiiii": jsCall_viiiiiii, + "jsCall_viiiiiiii": jsCall_viiiiiiii, + "jsCall_viiiiiiiid": jsCall_viiiiiiiid, + "jsCall_viiiiiiiidi": jsCall_viiiiiiiidi, + "jsCall_viiiiiiiii": jsCall_viiiiiiiii, + "jsCall_viiiiiiiiii": jsCall_viiiiiiiiii, + "jsCall_viiiiiiiiiii": jsCall_viiiiiiiiiii, + "jsCall_viiiiiiiiiiii": jsCall_viiiiiiiiiiii, + "jsCall_viiiiiiiiiiiiii": jsCall_viiiiiiiiiiiiii, + "jsCall_viiijj": jsCall_viiijj, + "memory": wasmMemory, + "nullFunc_dd": nullFunc_dd, + "nullFunc_did": nullFunc_did, + "nullFunc_didd": nullFunc_didd, + "nullFunc_fii": nullFunc_fii, + "nullFunc_fiii": nullFunc_fiii, + "nullFunc_ii": nullFunc_ii, + "nullFunc_iid": nullFunc_iid, + "nullFunc_iidiiii": nullFunc_iidiiii, + "nullFunc_iii": nullFunc_iii, + "nullFunc_iiii": nullFunc_iiii, + "nullFunc_iiiii": nullFunc_iiiii, + "nullFunc_iiiiii": nullFunc_iiiiii, + "nullFunc_iiiiiii": nullFunc_iiiiiii, + "nullFunc_iiiiiiidiiddii": nullFunc_iiiiiiidiiddii, + "nullFunc_iiiiiiii": nullFunc_iiiiiiii, + "nullFunc_iiiiiiiid": nullFunc_iiiiiiiid, + "nullFunc_iiiiij": nullFunc_iiiiij, + "nullFunc_iiiji": nullFunc_iiiji, + "nullFunc_iiijjji": nullFunc_iiijjji, + "nullFunc_jii": nullFunc_jii, + "nullFunc_jiiij": nullFunc_jiiij, + "nullFunc_jiiji": nullFunc_jiiji, + "nullFunc_jij": nullFunc_jij, + "nullFunc_jiji": nullFunc_jiji, + "nullFunc_v": nullFunc_v, + "nullFunc_vdiidiiiii": nullFunc_vdiidiiiii, + "nullFunc_vdiidiiiiii": nullFunc_vdiidiiiiii, + "nullFunc_vi": nullFunc_vi, + "nullFunc_vii": nullFunc_vii, + "nullFunc_viidi": nullFunc_viidi, + "nullFunc_viifi": nullFunc_viifi, + "nullFunc_viii": nullFunc_viii, + "nullFunc_viiid": nullFunc_viiid, + "nullFunc_viiii": nullFunc_viiii, + "nullFunc_viiiifii": nullFunc_viiiifii, + "nullFunc_viiiii": nullFunc_viiiii, + "nullFunc_viiiiidd": nullFunc_viiiiidd, + "nullFunc_viiiiiddi": nullFunc_viiiiiddi, + "nullFunc_viiiiii": nullFunc_viiiiii, + "nullFunc_viiiiiifi": nullFunc_viiiiiifi, + "nullFunc_viiiiiii": nullFunc_viiiiiii, + "nullFunc_viiiiiiii": nullFunc_viiiiiiii, + "nullFunc_viiiiiiiid": nullFunc_viiiiiiiid, + "nullFunc_viiiiiiiidi": nullFunc_viiiiiiiidi, + "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii, + "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii, + "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii, + "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii, + "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii, + "nullFunc_viiijj": nullFunc_viiijj, + "table": wasmTable +}; +var asm = Module["asm"](asmGlobalArg, asmLibraryArg, buffer); +Module["asm"] = asm; +var _AVSniffHttpFlvInit = Module["_AVSniffHttpFlvInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpFlvInit"].apply(null, arguments) +}; +var _AVSniffHttpG711Init = Module["_AVSniffHttpG711Init"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffHttpG711Init"].apply(null, arguments) +}; +var _AVSniffStreamInit = Module["_AVSniffStreamInit"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_AVSniffStreamInit"].apply(null, arguments) +}; +var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments) +}; +var ___errno_location = Module["___errno_location"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["___errno_location"].apply(null, arguments) +}; +var __get_daylight = Module["__get_daylight"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_daylight"].apply(null, arguments) +}; +var __get_timezone = Module["__get_timezone"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_timezone"].apply(null, arguments) +}; +var __get_tzname = Module["__get_tzname"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["__get_tzname"].apply(null, arguments) +}; +var _closeVideo = Module["_closeVideo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_closeVideo"].apply(null, arguments) +}; +var _decodeCodecContext = Module["_decodeCodecContext"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeCodecContext"].apply(null, arguments) +}; +var _decodeG711Frame = Module["_decodeG711Frame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeG711Frame"].apply(null, arguments) +}; +var _decodeHttpFlvVideoFrame = Module["_decodeHttpFlvVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeHttpFlvVideoFrame"].apply(null, arguments) +}; +var _decodeVideoFrame = Module["_decodeVideoFrame"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_decodeVideoFrame"].apply(null, arguments) +}; +var _demuxBox = Module["_demuxBox"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_demuxBox"].apply(null, arguments) +}; +var _exitMissile = Module["_exitMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitMissile"].apply(null, arguments) +}; +var _exitTsMissile = Module["_exitTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_exitTsMissile"].apply(null, arguments) +}; +var _fflush = Module["_fflush"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_fflush"].apply(null, arguments) +}; +var _free = Module["_free"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_free"].apply(null, arguments) +}; +var _getAudioCodecID = Module["_getAudioCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getAudioCodecID"].apply(null, arguments) +}; +var _getBufferLengthApi = Module["_getBufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getBufferLengthApi"].apply(null, arguments) +}; +var _getExtensionInfo = Module["_getExtensionInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getExtensionInfo"].apply(null, arguments) +}; +var _getG711BufferLengthApi = Module["_getG711BufferLengthApi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getG711BufferLengthApi"].apply(null, arguments) +}; +var _getMediaInfo = Module["_getMediaInfo"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getMediaInfo"].apply(null, arguments) +}; +var _getPPS = Module["_getPPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPS"].apply(null, arguments) +}; +var _getPPSLen = Module["_getPPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPPSLen"].apply(null, arguments) +}; +var _getPacket = Module["_getPacket"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getPacket"].apply(null, arguments) +}; +var _getSEI = Module["_getSEI"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEI"].apply(null, arguments) +}; +var _getSEILen = Module["_getSEILen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSEILen"].apply(null, arguments) +}; +var _getSPS = Module["_getSPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPS"].apply(null, arguments) +}; +var _getSPSLen = Module["_getSPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSPSLen"].apply(null, arguments) +}; +var _getSniffHttpFlvPkg = Module["_getSniffHttpFlvPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkg"].apply(null, arguments) +}; +var _getSniffHttpFlvPkgNoCheckProbe = Module["_getSniffHttpFlvPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffHttpFlvPkgNoCheckProbe"].apply(null, arguments) +}; +var _getSniffStreamPkg = Module["_getSniffStreamPkg"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkg"].apply(null, arguments) +}; +var _getSniffStreamPkgNoCheckProbe = Module["_getSniffStreamPkgNoCheckProbe"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getSniffStreamPkgNoCheckProbe"].apply(null, arguments) +}; +var _getVLC = Module["_getVLC"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLC"].apply(null, arguments) +}; +var _getVLCLen = Module["_getVLCLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVLCLen"].apply(null, arguments) +}; +var _getVPS = Module["_getVPS"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPS"].apply(null, arguments) +}; +var _getVPSLen = Module["_getVPSLen"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVPSLen"].apply(null, arguments) +}; +var _getVideoCodecID = Module["_getVideoCodecID"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_getVideoCodecID"].apply(null, arguments) +}; +var _initMissile = Module["_initMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initMissile"].apply(null, arguments) +}; +var _initTsMissile = Module["_initTsMissile"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initTsMissile"].apply(null, arguments) +}; +var _initializeDecoder = Module["_initializeDecoder"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDecoder"].apply(null, arguments) +}; +var _initializeDemuxer = Module["_initializeDemuxer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeDemuxer"].apply(null, arguments) +}; +var _initializeSniffG711Module = Module["_initializeSniffG711Module"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffG711Module"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModule = Module["_initializeSniffHttpFlvModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModule"].apply(null, arguments) +}; +var _initializeSniffHttpFlvModuleWithAOpt = Module["_initializeSniffHttpFlvModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffHttpFlvModuleWithAOpt"].apply(null, arguments) +}; +var _initializeSniffStreamModule = Module["_initializeSniffStreamModule"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModule"].apply(null, arguments) +}; +var _initializeSniffStreamModuleWithAOpt = Module["_initializeSniffStreamModuleWithAOpt"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_initializeSniffStreamModuleWithAOpt"].apply(null, arguments) +}; +var _main = Module["_main"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_main"].apply(null, arguments) +}; +var _malloc = Module["_malloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_malloc"].apply(null, arguments) +}; +var _naluLListLength = Module["_naluLListLength"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_naluLListLength"].apply(null, arguments) +}; +var _pushSniffG711FlvData = Module["_pushSniffG711FlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffG711FlvData"].apply(null, arguments) +}; +var _pushSniffHttpFlvData = Module["_pushSniffHttpFlvData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffHttpFlvData"].apply(null, arguments) +}; +var _pushSniffStreamData = Module["_pushSniffStreamData"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_pushSniffStreamData"].apply(null, arguments) +}; +var _registerPlayer = Module["_registerPlayer"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_registerPlayer"].apply(null, arguments) +}; +var _release = Module["_release"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_release"].apply(null, arguments) +}; +var _releaseG711 = Module["_releaseG711"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseG711"].apply(null, arguments) +}; +var _releaseHttpFLV = Module["_releaseHttpFLV"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseHttpFLV"].apply(null, arguments) +}; +var _releaseSniffHttpFlv = Module["_releaseSniffHttpFlv"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffHttpFlv"].apply(null, arguments) +}; +var _releaseSniffStream = Module["_releaseSniffStream"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_releaseSniffStream"].apply(null, arguments) +}; +var _setCodecType = Module["_setCodecType"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["_setCodecType"].apply(null, arguments) +}; +var establishStackSpace = Module["establishStackSpace"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["establishStackSpace"].apply(null, arguments) +}; +var stackAlloc = Module["stackAlloc"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackAlloc"].apply(null, arguments) +}; +var stackRestore = Module["stackRestore"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackRestore"].apply(null, arguments) +}; +var stackSave = Module["stackSave"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["stackSave"].apply(null, arguments) +}; +var dynCall_v = Module["dynCall_v"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_v"].apply(null, arguments) +}; +var dynCall_vi = Module["dynCall_vi"] = function() { + assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)"); + assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"); + return Module["asm"]["dynCall_vi"].apply(null, arguments) +}; +Module["asm"] = asm; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayFromString")) Module["intArrayFromString"] = function() { + abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "intArrayToString")) Module["intArrayToString"] = function() { + abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["ccall"] = ccall; +Module["cwrap"] = cwrap; +if (!Object.getOwnPropertyDescriptor(Module, "setValue")) Module["setValue"] = function() { + abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getValue")) Module["getValue"] = function() { + abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocate")) Module["allocate"] = function() { + abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getMemory")) Module["getMemory"] = function() { + abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "AsciiToString")) Module["AsciiToString"] = function() { + abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToAscii")) Module["stringToAscii"] = function() { + abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ArrayToString")) Module["UTF8ArrayToString"] = function() { + abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF8ToString")) Module["UTF8ToString"] = function() { + abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8Array")) Module["stringToUTF8Array"] = function() { + abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF8")) Module["stringToUTF8"] = function() { + abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF8")) Module["lengthBytesUTF8"] = function() { + abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF16ToString")) Module["UTF16ToString"] = function() { + abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF16")) Module["stringToUTF16"] = function() { + abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF16")) Module["lengthBytesUTF16"] = function() { + abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "UTF32ToString")) Module["UTF32ToString"] = function() { + abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stringToUTF32")) Module["stringToUTF32"] = function() { + abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "lengthBytesUTF32")) Module["lengthBytesUTF32"] = function() { + abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "allocateUTF8")) Module["allocateUTF8"] = function() { + abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackTrace")) Module["stackTrace"] = function() { + abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreRun")) Module["addOnPreRun"] = function() { + abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnInit")) Module["addOnInit"] = function() { + abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPreMain")) Module["addOnPreMain"] = function() { + abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnExit")) Module["addOnExit"] = function() { + abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addOnPostRun")) Module["addOnPostRun"] = function() { + abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeStringToMemory")) Module["writeStringToMemory"] = function() { + abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeArrayToMemory")) Module["writeArrayToMemory"] = function() { + abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "writeAsciiToMemory")) Module["writeAsciiToMemory"] = function() { + abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "addRunDependency")) Module["addRunDependency"] = function() { + abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "removeRunDependency")) Module["removeRunDependency"] = function() { + abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ENV")) Module["ENV"] = function() { + abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS")) Module["FS"] = function() { + abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createFolder")) Module["FS_createFolder"] = function() { + abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPath")) Module["FS_createPath"] = function() { + abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDataFile")) Module["FS_createDataFile"] = function() { + abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createPreloadedFile")) Module["FS_createPreloadedFile"] = function() { + abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLazyFile")) Module["FS_createLazyFile"] = function() { + abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createLink")) Module["FS_createLink"] = function() { + abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_createDevice")) Module["FS_createDevice"] = function() { + abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "FS_unlink")) Module["FS_unlink"] = function() { + abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") +}; +if (!Object.getOwnPropertyDescriptor(Module, "GL")) Module["GL"] = function() { + abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynamicAlloc")) Module["dynamicAlloc"] = function() { + abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadDynamicLibrary")) Module["loadDynamicLibrary"] = function() { + abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "loadWebAssemblyModule")) Module["loadWebAssemblyModule"] = function() { + abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getLEB")) Module["getLEB"] = function() { + abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getFunctionTables")) Module["getFunctionTables"] = function() { + abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "alignFunctionTables")) Module["alignFunctionTables"] = function() { + abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "registerFunctions")) Module["registerFunctions"] = function() { + abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +Module["addFunction"] = addFunction; +Module["removeFunction"] = removeFunction; +if (!Object.getOwnPropertyDescriptor(Module, "getFuncWrapper")) Module["getFuncWrapper"] = function() { + abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "prettyPrint")) Module["prettyPrint"] = function() { + abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "makeBigInt")) Module["makeBigInt"] = function() { + abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "dynCall")) Module["dynCall"] = function() { + abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getCompilerSetting")) Module["getCompilerSetting"] = function() { + abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackSave")) Module["stackSave"] = function() { + abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackRestore")) Module["stackRestore"] = function() { + abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "stackAlloc")) Module["stackAlloc"] = function() { + abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "establishStackSpace")) Module["establishStackSpace"] = function() { + abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "print")) Module["print"] = function() { + abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "printErr")) Module["printErr"] = function() { + abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "getTempRet0")) Module["getTempRet0"] = function() { + abort("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "setTempRet0")) Module["setTempRet0"] = function() { + abort("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "callMain")) Module["callMain"] = function() { + abort("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "abort")) Module["abort"] = function() { + abort("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "Pointer_stringify")) Module["Pointer_stringify"] = function() { + abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "warnOnce")) Module["warnOnce"] = function() { + abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") +}; +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NORMAL")) Object.defineProperty(Module, "ALLOC_NORMAL", { + configurable: true, + get: function() { + abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_STACK")) Object.defineProperty(Module, "ALLOC_STACK", { + configurable: true, + get: function() { + abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_DYNAMIC")) Object.defineProperty(Module, "ALLOC_DYNAMIC", { + configurable: true, + get: function() { + abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "ALLOC_NONE")) Object.defineProperty(Module, "ALLOC_NONE", { + configurable: true, + get: function() { + abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") + } +}); +if (!Object.getOwnPropertyDescriptor(Module, "calledRun")) Object.defineProperty(Module, "calledRun", { + configurable: true, + get: function() { + abort("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") + } +}); +var calledRun; + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status +} +var calledMain = false; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller +}; + +function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])'); + assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called"); + args = args || []; + var argc = args.length + 1; + var argv = stackAlloc((argc + 1) * 4); + HEAP32[argv >> 2] = allocateUTF8OnStack(thisProgram); + for (var i = 1; i < argc; i++) { + HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]) + } + HEAP32[(argv >> 2) + argc] = 0; + try { + var ret = Module["_main"](argc, argv); + exit(ret, true) + } catch (e) { + if (e instanceof ExitStatus) { + return + } else if (e == "SimulateInfiniteLoop") { + noExitRuntime = true; + return + } else { + var toLog = e; + if (e && typeof e === "object" && e.stack) { + toLog = [e, e.stack] + } + err("exception thrown: " + toLog); + quit_(1, e) + } + } finally { + calledMain = true + } +} + +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return + } + writeStackCookie(); + preRun(); + if (runDependencies > 0) return; + + function doRun() { + if (calledRun) return; + calledRun = true; + if (ABORT) return; + initRuntime(); + preMain(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + if (shouldRunNow) callMain(args); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } + checkStackCookie() +} +Module["run"] = run; + +function checkUnflushedContent() { + var print = out; + var printErr = err; + var has = false; + out = err = function(x) { + has = true + }; + try { + var flush = Module["_fflush"]; + if (flush) flush(0); + ["stdout", "stderr"].forEach(function(name) { + var info = FS.analyzePath("/dev/" + name); + if (!info) return; + var stream = info.object; + var rdev = stream.rdev; + var tty = TTY.ttys[rdev]; + if (tty && tty.output && tty.output.length) { + has = true + } + }) + } catch (e) {} + out = print; + err = printErr; + if (has) { + warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.") + } +} + +function exit(status, implicit) { + checkUnflushedContent(); + if (implicit && noExitRuntime && status === 0) { + return + } + if (noExitRuntime) { + if (!implicit) { + err("exit(" + status + ") called, but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)") + } + } else { + ABORT = true; + EXITSTATUS = status; + exitRuntime(); + if (Module["onExit"]) Module["onExit"](status) + } + quit_(status, new ExitStatus(status)) +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +var shouldRunNow = true; +if (Module["noInitialRun"]) shouldRunNow = false; +noExitRuntime = true; +run(); \ No newline at end of file diff --git a/vite_vue_ts/public/dist/missile-120func-v20220706.wasm b/vite_vue_ts/public/dist/missile-120func-v20220706.wasm new file mode 100644 index 0000000000000000000000000000000000000000..6aa00d40fbc60bcee8222bc7e54be80c63397ae7 GIT binary patch literal 2189440 zcmce;2|!d=wk})+1Wjyep35QL?xyB>o@a`o@%Fpj_rCxA{r}Il6Vq+C(L6P|-TkK% zKqkQfL>UB;NkByqP!MFEkx7{cMJADX5KvK+cTN>WRT2}E`@egaseQil?X}n5d+l|q z&fctU$iAbWLLm?c^wIm_(BC_M{q@(-uYV5(i}wI*xpUdLI$7?vTIjF8{t{5xvVj5U zYJ~uTKz{$h2LJV!UqgOxZSW-sK}%mke*gZLz{R2hsBU7Q-fHhlKn2hQ8@#`12x1u< z#5$_4fNq?>{_1P!SD>Qhy3s!b7`wHfuQn?!gZt_$K<(?_19RB0vDqES{LI!5cy;I& zz?*XcD{PYopv5bY-@_bRf-2h_2#eM~0Mg>ue^}@D4^RvA`Z&@TZNESVskJPdt*veN z_Fgup2-vi{AGrAd?9kHAGRw^y;0_!UxLlTy0akBg$sIffuIYv~OC;DVgRSfy29)gX z1FJTCu;Eh3@8KKBc7gmJVi}q3ej|9l0=xmnh!beT5*e1o2V-S3bgThx;VlCI;sX$% z5xB5`e*s^Cx-LL?fvj!7mK(sjHCVw$wjKZqm_NX5v;~*SS`V7C%nS%ZFb)A5Us;9) zV8Ar6^k08#rU3EnsoKW?m;i1zyk@cXwS(I%19bk{5>pl*0DXJ~KGBx&0wND+4LmmB zIKX%Tje)n;K{*3g;1+b*mzL>UW@Pml=t~Gt2?pAizyIK?uf7BYY-jO~H8Q}d0MiAH zIN2f)SXGN%U_C7J1y%(xV2KqF*uFWw1Re1YaLoW4PX7Q)XTUz70sRNa1I#}_6<{*| zuoj>iSY@>UjuQL=vCM4a>ud9Y0S4rhLWqPq??3bfYTq9YA364$WBWe(%Rhgy|Hvl? z5C1y^2UfW5wbVeif;aF(pC3Hv@%f>T_I_~y6syY5HrY*zut`}JE!y@L*tb?&t$kpx zvl7Tn!e+(FZ`(W@bLkN@vRL$h8RE|@ohtpogfYW77h9EEy|x9fapOQ_DyBT_V4O`42(nf zUBe%L4AFwD+czvgu;0=A1Xyeh$o|Yx6GHwr^)W;ZQrjG~AiKY%1PojCEeaT&h5EqW z4uS-A-rpo3B=CN7K|Vfk0Qe6Sh!U*WT#(HQhyvud+6-8O#^!EoQ@{p94rzy~4)>uf&XsDrqIq|J?160!y4Y!0(<5GRnbc?YB*&LCr(H%LH0!fxI& zONiu~S|3BiAYtk8w;2Xj>i|UL*aTcZp`*&jz+4~#M-_m9@Ik_66;Pmq_x9%- zc$lqj#5g>A;4Ca+t-`&n%GS>Q%-R^#ch#+S(BG}t=-h3y2JCiYT{pRnFB~fk`zCEA z?d?HbD`)?bv3+4#`L|3Ih*irs<68#!v9;#ga{?beOOtQ+0(jWMe{+}{q17rP;Nr1HK*?*kCu&}kZ56Z#<#l{TqjxGS} zK(7IxZ+8mBgKZx6kpQG^P3Hhp0JLpT_NT`d zIQD)lY8%Z_dp|q&rz89KeZ2Rh!-qcJd*IN4W7h8n>^Cbu-hcGik;8w3Sl$5a^Kk6( zkNc1PcK@fJ{mcGiT!5yD^LbX)_xA$B{{(Dr{St+54(%gg^2avV5B46~cj)lZgZuY?W^;nQhfh8} zdTie@a2Pg|d-r~R=-}ax{$dS-ZT4ChJkjvPMp z>Hb5Z8)E>D6u_tP=&`*AY>x>L-XHzN_6S(L<_g9<5PX(L4Zqj11Iy(0esX00 zhHo4nlz%^Rz!vU5+q?JJzCRq?zxNOOj_!B<8shrLgNOgH@1XOZeS4h0wB2p>I`j$n zt?)O10wcf`@WJ6De{+KR`8fgqfz*2zE6~p%ejd(szBhe$Lvaus8YrMp7iX3;l=R;* z|04`~0{VF<^q)hZP$&)ug#iDcF1wC=3Uz_vT!Nr~+3pNQdLcIjdKiMkAzfS`$m38F zZa)-?MB->j2o6ei@!IZ!BmwP75QrIP5y)B{AxIp_8RATXKu9i5fMpyR z=*|VV=l_Pd{No=;C~~)xi}{~PG?zf=-~R>a3dK1?zJNIYHy0NdXObswH^d*h1?S=n zj^5P;N&{G=%OMwn3)CCy1aW~vxBkB_E+q4BaKTW2DD-b%0L*6)CnwxC(nnC78PI?L z@kDUJL7bf+IHVu+3mOvVLc&3SZ(1^LH!uU6I5`1>hmwBp;sSMX{qV!RP{MCroV;Bi zq$9My<6M3P^&ug5LrA}KcG->GO(x@TA3GzRcRRa4NhBoB6_~LZiX-8WCScM#al3!F z6ZatmMRDhdA#B2IT}y4CodD4D?^k`;ksK zu@l4@3HhxI@G#OD;DOmYfRLR(G(*i$Bos;l)(ZmNiQTbl=Z6qi8T5Yw+E5(S zg^YB8;C}Zz`p{;&Uq#5zHdzz~rnqze*BI!MB~ zAYGu&e{_a^;st2zcESRq1r`}tJYe~d&Q8Dm(AjnOF2L2mY{Atgc|mqV$h$57NV~~^ z(iY%*5C?JE35?Sjf^%_l#sR8-AmN<0kbv3kcG(UH77$>I#MK7=>7QJk9Pobugl_h+!*$1|{Aa+Q1A+q!tGL?0&wu`Z z6gqU_0PUTDXxEPrq+RFT(EJwVojZ{`H|75)eE_IyVJ=5e+zzK5v273mfwW1 z4MExf4CV;Qn}Xa#WTdkL{x5(~=zpw}t@dViwBw!7n*hHCHu+D1ZfE&wvDvSZ^4Tz1;wE(YBuJD@g1r|;Z^v|Y4K*#RQ!E9y@Bo9Zq*++m0B zR)E-*f53$G1$5Wud+0yyu*02p_-+OJtLzV%*nG#`06Xo(E<1EU-=ko*t89NOBwJYU zb(0JhR@rU?KZ12^2DP_)yNL~D;5~G^{aw@nlI^SmbWm`B*6+ih0>p>^x9+rEQ%Cv;GSI^Z7#EnAY^_KnFq;dZ<3cC-Wj zaS+_#Y`5=neiDTI^mf1|V!M4K@sl8MT(c=Zx}m%KcH92szX0yuZr|fVf}$ zVq;_Yp?!mhwL@1sv?Hvu9XlxeC}`a+y4p95?}orBp-tYcY|{iz7C~s+Vs2cW?f2gU zUEZo;C%+ew>>JE?Bj~$TtQy8#J<6`BUd}LBWI``ySx=TD3I(5o5*4B>|)1IJ4D){ z18XOLB(m?m-+`RpQU62L_8t5?kj!51WQYHc9TM!&j&PfB^B~||!1Y}UKTyAU!ti#0 zw9`;K{K;tZaN=FS>|)n|*x}odgC=sb-hSSJf;ix}z}-+g=>T2qtQ|Sj+u?gq`_YNR zDT)J2vMV@k!P#%@Xty0Yv~#eA+*Giin;`AbjvPoN^sTg=d>ca9N&5lJ4C*z563+nJ7w4Q$y0eJdn5+v#^IJ1G1&d$TQDHqMHGzhwT9$bYEPvChHHx1i-L z3i#{nrhE@{-BkDy%HOYRKf?M!1SaqQpAhf}3t~UVdMErz%HOpHoOeMs&%C}5n%}AM zV->hui2W$-d!YH98b4YA%nq>0_dql7r(2u6UBy-leWx{u{jlzPp!uB|KSg2l=nt}q zC=SrsY^R;y1s&QsKzl3O$)f!<(E$<64mX?7WfL)=Z-sW!5pAAEeixX(OZ`U}0?^2M z&I#Q-?xeZcA=K=E-wN&I4>62=)k&&H=IzERgI0!O;SMOb{R+ z0rCa*%l{9^5CNX)znT9EA#s4_Kmgj{n4^vgRpQ=ny=FlD3A`Z9qLQ~(;1LJ5(79yAP2+jO!`+G z)Cmb8A<a6{w4Ue1x5Y|YPP%^W5Bm!*WY=OAV9VW zX*Zw^eK2<8)!zO~2L*wEp&B7rm%@)qEqixZ&Yj3Vvc4d^-n^+0wB z6i8p%wTl4w7HS4Ek9Gs8BS5Hl{= ztz;~)$=OcEZP~gNNFjnk!1*GumI+MAQC&}PDV1yUd!&4Acu#&WfvCt8v1P#wIpWFUNd`?}#> z;9}V>TQ|%WXbEt$rL+`Ki$h2dAf?RN1#lAJRv;~i1OzXT90}fl&IJM)0_*{y&d%UV z1o*K%Kn{O>x5XYXVu!2BSe7yfK$eH(mY)vp*F$#(R2e145;{%5+1N1UN z0zJ_nr~mwuPxc@A)&4_&JoYEuX9pnd0whSA{tD!D9tFGuq$wVT%zENM5}d@h^_Q5I z6k^}~A0OCf(M|NS`={^9P0T8ecY1dotfV@*6*SFqmQTvU_3lgfeQ~(fE zd#1Hk0PQOb)(UI;t47O!9mC|;fB7S1oWBd~R}lQ0KqY?dRQxfF-DrK71lAXnk=Aam7diK8Qs(mmf~fe6@t1aixpO zP>8X&u#U~bPb%PhkL>>=V0!YlBIUrdvyOX%X08<51uz&N}zK`}p9_v1^q+aVR{wd${Gt1q-Y$Rgmd%kbE{|%U~ zUAE`_kdsg-pW^bYCNhvDm^MZ%00?FNBiG}GM~+9f$90b^k82)RJ+63UdSrN{dtCNN^GNkb@ksVa^0?%Y=yA~_!6V+| zf=8T3tVfJTw8wdma~@G1XFVc4B0Nreobov75$+M@al#|iBg7-vBgo^pM}UXFho8r~ z>5b{NY0dP?^wRX)^vtwkS~e}2o|+a-3#NI~oN2~1ZJIJonkGz7Oyj1Ar_Qbkgj%eVzPzaT#+ zKO?V@m&r@yMe+i9z|?Q*GxeCdO?qRB=?j1$i3tqayPk)+)3^rx0COaSB%TX zCF4`$qH)1EZ=5sE8fT2t#wp{Zal-h-IBtAw95ap@M~uV9A>$+Cpz)#cfpNgtZ|pPn z8hec0#!h30vE6vzc+c2oY&EtRn~hDzMq`7q-dJa>HP#rbja9}=<0)esxs}{PZYDR8?~)tI4di-q9l3^F zO|BwWk}JsNS4Ch6%$H!?@wG zVazaU7%>bP9vKD=4-F3t1BQM>pP|>#W9Tw;8afQ^hWmzlhBia1p~cW_xNB%MG#Kg) zb%t6)jiK65WvDci8A=T$hC7C0Ly_UOq0mrZxMj#U^GnagWoK3z?&LUqUUnO55XOc6>>Ez4gRB{SAnVdwvL{21M zBqxyL$rs466Trk8LVhu5dXv29!l;Nx)(hy-dV>oR%WjJXF zH-s5N4IzeLLy#fRaNH1J@HhAw*7dLTYx-CEm-*w^d z`WgMSeo8;7f1)4PKh}@wNA)B6Vf~Q)k$zDBKtG`G*Z1jr^*#D-eV4vd-=V*!Z_~Hx zTlCHPCjDJ~qrO33udmhD=&SWr`bvF;zFc3XFV&ami}gkN+xkL%f&P~MraoVvr_a@2 z@r)v$B}bAY$Y;o>$S29+#ysx^w;!P^;h(n`V9SLeVRU1pQ2CJC+RQg6ZIGM3Hl5AIDM=>Mjx#|uRo`c z(x25w>d)v;>rd%V>cjP6`V;z4eTY6-AEXb|AJ+%y{q=tOb=@1?Yu%derEXRCLib$v zOt+$2)-CCt>K1kLx;fpfZbmn)o6=3{CUj49WJwCDo9sNmZmuQaP!NR7xr#-60i|ib%Ifg`@(~O;SE7kCaQgLCPUzldhApNY_YL zNSUMzQab4}DUFm$N+Bhal1Pc9i=+fnJm~_dLRYRU)0OHA!*}5#XLOyx=Xr5-9=r3E?##*7pIHWMeEM% z&gr6bXLXUf2;CXoY27JZxGqe0LKmtF(FN;*bb-3#x&WP@Ze9CE`&zrEeWiV=UDdwO zKG!a5m$Xl{i`oV4ymn4ItDVtKYbUi6+9%p^?PKkjc2ql}9o7zM2el8i53~c?er=z& zSKFiQ)^=$-wC&oV-EpK?QVc1Ybeq`f1lS zZ#1tpuQV?;tC|;@=bC4l70t3{N%K^*pqbaqX=XJunrY3HW>Pbud7^o&8PkkvUVFSG zt`c7mpA(-ESBT5RCE_A+fjCc`BhC_Mh||O=;v{i`I8J;_93zerM~K73A>t$AAaO)9 ztQpcg(hO=IY6dj@nm$dhrbpAQ>C$v+IyCK?dzv;)tENTMtZCBR)ii1vH1(QVO^v2n zQ>CfYRA|aIWtvh=iKbXnq`9pr)D&oLX>MxrHF=s`O^zm8b6u0Axu&_QxuVI`WN6Yg zX_{0`iY8f;q`9O?)LhggXyP@onix&A=Dg;dCQ5Tw6RC;NoY9=poYaJC!Zar|p_&j) zuqH?os0q;cYy33p>No1w>NWK%^-J}t`nmdC-xD0i9N(_Vi&QK z*gz#OuT?;x*z`;uT^hF@u;+Oe3ZeQ;5mLB;qAvBJmdWdh zb*ef=ovgm3PE=o1C#d7q7u0d;Sapm#T76C(r9P{UR7a@Ks86d;sZXlI)hE=U>JW9X zI!JxfaK&)RaL#bT@J7F+pU^+l$2r~C*Xi%*Z|KwY@%jk;YnNBL1>LBwSJ$Ge(%sfw z*QMxUbSHKGx)tq|_K~(zdskboy{WyTP1HtdL$qs}Ma{V8f#$xZPIE_dLvvXZr#Y=T zu6d!JQ;({9)h+5Ob)ov2I!S$A9j5kEuc)R}k5rwiMpdaQPnDrcP@PqUsMeI%yia(= znnTRbJRVV6sC_O?+e6X0d!~Kgcs}>c@|-a|H!OHf`i^OF!UaMcA(jwBh$fsTL=nysA_)t>YD1R>WV5;m9Dz1 zN>in(QdG&RB-JHVqUxe5UUfkgr;1g@sG?Pme2aZ9`7C&!AYOS{6{(6)ol%`uol>1tg{#6; zCsd)TU{#PRP<31tpz>Gwsn(Tml&_VqlrNR5$`{J#%4fVP(D$PD<3Pzl%vWK<*;%{`A9jae5ib&98mTv`;@)P9%Z+(OWCPxSKe3N zQ?@Bvl`YC-5B>p%0`k||sBKI8Mi`;_^F`LsFAe8wDZjxe7z2NQw_frR6P z0D?ckkFbt^jbFpR!oS3?;ffeBRuSEpmzQ>GOVpe~y2KU%@ZqpW+ws3;22b9DWu*gP+Dv;V1D=@ZDcJVmbJh9XCit+=kpQe0D9Ra{YIDAE;|6={l8 zMT#O>k)*h!NK_;!;uRMZaf(<)j3QcbUU5zlrHE8SD9$KOD^4j+D#8_EiW7=ZMX(}B z5vVw>2vGPd{1of*H}co=m-1El3;A>TGx>^qS-vEHDqoZ@$mivA@>%(ed|EywpOjC? zpUB7MkL6?XQTd2`SUx0wBp;MNls}LU$ou7e@?Lq5yj$KS@02H)NAV;0Vf+yO5q=Q= z06&25$M@lT@jdu%d>6hG-+{l6zlU$bx8hsy&G;t#U3??H0bhsjkhjb4%kRnCCEQcoB5naUkDJ5I;HGg?xJldu?g?%j_ZT;Z8^sOdhH#H?gSdyd2e<)TKdukg zi|fX9;W}|0xOUuq+&x?yZc;WOdm`gM{xUz=y7Z0owe*!V z@WWPI3$6)w7uSeuz}4gGaJ9G^Ts5u=SB@*gmEuZpcW}kHBHV3UA+7*-6PJ(6!{y>` z;9g2sr7xt_~Ixn4*&Pr#b)6yyFq;x|1MEY1dCLNWINQb3E(nr!k z=|kxQ>43Cf+9&Om_DH*>UD8fzhqPUKPueDJm9|KmrA^Yi(ne{6v|d^(t&vtstE83E z3Te5tOj;@}krqjBOADn1(p%D-(tK&2G*@~~MoJ^3jq)5^Htsqu3wI571(%7- zz@_6Z2yNFA`#p5pE;&8FJ7+f^&JT3}%7I#K^T6#))QW`D|lb(=< zN<*YU(m?5PX@JyU>L*>7ypgs|dP*NbdCAlfdm*h!u zB{w8Fl5EL!NtWcA{UBkY@zQm?WE=$rRsge{)vLs1zNs=hJC`pjSOD;&_B(ahh zNwnm=M zJScuBejpwY_lx_)z2Y8mx428(Dee%ri|>o?iQB}j;udkUxJi6h+$e4k*Nf}Kwc;9a zwYW-LDPG0Cz&^)5!>(YLu}`s!*ahr7b`Cp>oxx6Hr?8XQC)jc9W9%4q6gz?)#tva0 zVF$4fumji%ak;omTq-UR-w_v!i^R9Zh2jG7E%8lpzBo^uE50Gl5oe39i?hVn#8<^v z#F^p@ak}`jI8B@?P7x=Ilf;+AiQ=CVC}$DOwf15Iq+?6Rn7rMN6Wm zqD9eyXkIiYnib86rbSbtNzsJpiD+E(STrUY6^)37MMI)TqCwF^(F4&rb3e8Z+l%eN zc4ND+o!AcSJ!~7c72ASs#x`N^VjHmy*m`U&wgy{`t-@AfE3oC*GHfY!K-4el6ZMLE zMBSn;QKzUwbYFB&)Fx^bwTPNUO`^M^Mp1*PUQ{Ql71fBUMOC6oQH7{nR3<7B-4PXw zibS_Xg`xt{EzwO;z9?68LzE-R7F`!*iLQyRimr$Ok7A^@(6|dwa*kWuE_BOTEa5fbRpAw3rZ7X8F1##E6Q&ANgvr7r;U!_B@S-q57%#jaj1$HRV}#Md^TKn& zDB)RQq%cBwMtEA-<#`F4h`oqSz{X?au(8+}Y&7;f_8c|}dlnmsjliD9p2D8QhGWC9 zC$OQ|5Nt3u2pfn!jy)wjDGV2e2~P+^g(1RVVURFTcw87D^cVUG*9C6`uLWy@SAv&< zRly6vbHOvgieOo=BzP)V6f6kl1#^N~!Hi&9FeR82ObDI`#s!ZBV}en^h+tSSBzPnk z6g(6>5DW;bO`PX?g`oit%4Rov!F?ESI{VE5Y!231vP?dL6x9V zP$4K6lnF`&cLc?PBEfAzp`bu;OK?+=FUS+z5abB51=j^xf@^}Sf-8bdL53h*5N!^? z`eXgD>zFr~*O)cTE6hvGD&_^|Ip!H=1+$Dar{_*3_qHGo_~%X#XrlB z)^HX?(^>P+ITIzW?qALy?32=t#^%gwRe?wrFVsQxp$d&sdtI@9q$KD5qsi& z)_h<2X8Gj!Jn=5^yyIEyS>##hS>Sog^QLDrrU`Qw(}-!n)MM%}wU}y56{ZqXfhot7 zVM;M2m^+wa%xz2|rT}vba}$$~$;0GgZeVgS*D+a`YnZE;E0|171|}VI8Iy)d!6ajn zFqbfin2VSMOg!cSCJqyWiN>7AoWn$6&SD}l5tuWW)0mT(a7-BH1SS*{f(gb1VFEG7 zG5#1o%sToF`ZanD{R;gOy^4N;UO_LTm(Wkqi|7UPJbDg2i=IJGp(oK3=qKoL^keiG zdK5i^9!5Vx527EUAD{=&{pdb)FS-ZajqXHupxe>+(f818=vH(Kx*6SsZbUbr>(O=S zT67J%8eN5M;@#yn@)~&cygFVjubNlItK?Pi%6VnHQeFw~4zHMZn^(vy;N9ZgZ@o%@FSn!Cn*#eKe~mYq-_iDsCmWf?LilF6ZXvgTdy9LMo6pVT=5lXvbGX^u>)b5vHSSgJ6>cUsgPYF1%uVB_a#OfT+)La< z?nQ0_H=cWe8^?|1#&Dy#=eg&&QQWiKNNxo84EHqm6!#=IoEyeH!42hxaD%x)+(7Pe zZUEPx>&IQ^yy3j&tZ`m(UUF7BFF4OR&p0cb6m&8=34IBD5uJdJM_)k4p<~f8=xFqL z^f~ldbR;?geFl9ReF}XN9gYq|pFjtrgV2HKSfYZ)6TiixyNbav~pTF z&73CAT}~sXfm6?^<gEJ0?sYYO-?>1kCV%}!O7-a z=VWoNajtT%a56a=oOI4*PAVsblgvrtT;e2hE^-n$@tg~sSWXNlnsc6WjuXW>%ZcPf zaL#Z}b53zia>6-boEeXCkA9C1k3ruepE>VB?-l4Ww7~nO_Y(9eG~YYVdl9+-&Go+F z{m41WHOD*4JIpKDC*FKjc8b^Z{===eeN%le`NsRk_!jx5`6l@$_{RDc`(E}<_PyvE z=X=LD-8aQI(f5MyS)WDEdCxh|0JJ~a5510hgL;j6g?fovMZG{hM?FKWpq5cfsHdm} z)I4eqHH(@-O{1nzlc)*Q6VzkW7-|$Xf*M8*p&p?IQ4diMQ2nSrR4=Lr)s5;xb)q^@ z?Wp^xHdHIB1=WmdLfu6*q8d>3s5(>)sv1>=szgMH6ADif7~N=IErrJ_<$$*3gMB~&8nA}RqDkGg=0K}Dm^ zqt2nCP$xK{oDfbhCy;ZT6TtE3_;J?RZ`iNdYwTC-RrU+^bM`a#3VWHo#D2y7&c4RJ%D%$RWM{C`*_YXA>{NCNJBfXXoyfk(PGHBgFUtCOHN0$IEbobL zDe!-Gm*acQH^aBg_m=Ms-z?uu-*Vpq-#p*zzE^xJd<%W^eY1V9`rh>(_kQd>;yvX( z?LFz;=-uqyfPd9>|NyD=iKk?__^g(;1%q(p*HRLPgOXMo@1@akk1-Xn| zLOw+oJ39_pCHGPkC9`@QRE162>A#(h^OETJDPo-eU2T)KFf||N3hSZPqR<4!`Wf% z6YNlS2s@Y^#13R1X9uwT*z2q}tkp5$Mwai*#J!LJj7FhGFIo2#| zhBd{SWKFQ1u*O-BS!1kG)(C5uHOP9%dcYcB^|Sg|y{sNqH>-=)$?9OWv+lF*vD#Rz ztQJ-?tBKXfYGBo~>R7d`8df!{idD&~V3n~-StYDHtYTIX>o%*9RlvH%%4g-Va#=T6 zIjn5fbyk{Zif1M=1DTGzj7&qOB2$pb$Ry+?>$Y2+zn7V8@83M-S9!AfUcW~H%GSt+b!RuU_bb&-|8if3J5#j#>pF|26Tc~%tb zEGv=~!8*e_%{s+8$qHwMu|ioPtYB6UE0A@Z6~OXm`LWiSubFGiSIn2pRptxkbLKPV z3Uisc$XsB~Gv}DI%o*l1bBa01oM4VKA2Y|8qs$TJFms6ch&jl7$Q)qyGy9mm%pPVp zvy0iu>|nMt?=jn$t;`l?GqZ_#m)Xc{VAeBhnKjI6W)-uNS-~u4mNC;kFMFOuh9kp} zCy*h?U}O+75P2LKfb>WDA=eRa5Nn86h?j^}#0$i8#52SSVi~c7SVSx!N||?<#mpk+ zZDt{}fO(5~lbO%VW8PrqFteH0nOV$h%&W{R%uHqm^D;AynaWIICNq#loEHXP zhb_YbgqM5bRKZ7 zg(f)HK;r>a4ZYx81&sqxB{bH#0vZFLMre|A1N4$}q1U8mzh|Q7sCmRZY#uVtBjymZ zh#AB*VhS;dm_Upp9wWvOqlgj2Fk%St2r-Cwh!{ZhBl-}%h#o{Yq6^W9=s>h1?jhO` zt%w#xGolG`7tx4lK-42@5iN{nMib*Mqmj|TsAtqMY8f?*Dn=!vf>F*WW0W#V782*fP`WyOd z`WpQe{Uv>s{(}CT{*1m%U!p&yFVYw2^Yl6TEPaMPO`oJs(4Wx9>5u7S^ilcH$U4-u4L;3^y0KK2yNAIQg(7WlK^bUGE{XYF3y^Y>VZ=pBSo9K=726{ccj$TWzp;yzZ z=#}&edKtZxUP8Y^FQymKZ_^9u1@v3=e0m-|mwtnuL(isPr)SZx(XY}o=;`#!^fY=Z zJ%yf3PoiI@$?JyIC?BSh8|5nPd`VGqDRsr=x6As>8I!?>EZM+`U!d{J(wOu z52PQb2hjcLe)M(P8`^8yE80uiD(waBIqey3g|I?w)c)_LTYJwVy~%c@@%{<6ij&9&9F*|o!U$Y;Q($EV$=%B9k!!lm40*yn*y zuTSUZ{fN&)pFW?i&HGWGM?U>N-9Gny?)kL&wEB#Bk9x;?$9PA3pY;xNjr5KH%0Tbq z-T~fkyh2=Gd#wTGyw{x9tkhhL=5+U|89C~LiHysEv*z5HCu zyh?%cwdb1WE6+a99?x#iOwSC@OP)2(H_SQaEb}#Ura8l$W==I4m2cLmY!>8br@Co=6_&EGAd<;GcABGRXAHfIV58?ha zKiWF=4fQp3jrxkZN_|0nPJKpQp)OOGs86Yj)CKAsb(T6qou*DvC#e(EC)9E3W9le% zggQ(eqCTPyQXf(uPzR{})Lv>2wVT>S?WA^4+o|`d_o!{uChA>kBej8APpzZYQfsKy z)GBHPwVYZ;Ev1%F?@)`WMbz8WLh3E*O=>Cv*bFaC_+->eM zcbYrQ?dJRDocHdT+sv)z7IU+?3Anp!ZZtQT>&&(08gsR|%3Nu#FqfOl%%$cM^8@C6 zW*xJHnafOP#xo+jDZyg*~VCB-EJ`+B3K9fGzee!)Gefqt7y>EKudF6WD@XGg!_rBmA=Y8Hg-1VGy6i{Y+ zWqDomy6Sb^E5tk4JILGLJJi+Bd)+J4^@>-9SGw0_uS~Bcucuy%UNc_7uG3yqK$+&1 z;+5=`cgz(6!5}6DUi(ioJ@wZhPJFYVfM}s`IMy3UICTssPHDp5vaq zo*ka;p2?m`o_XeM^Hp=YImP?{J^=5B_rZJN-S94WC%gmR4!;k-2XBM7!du{X;f?SH zcs;xhUJI{*SHr8|mGE+S8N3u;0>1+! zQ}C1UaQF#$C_Drn3=e__!jHoP;Qnww_#4=3*c$8=>?Ld!_5$`C_6)WHTY^1>Ey5OH z^RPMCENlig4V!{Zz@EUyVUJ;Buu<3uY#25KdjuPR^~3sLy|5lwH>?ZR3G0Bh!|uV_ zV6CtgSTn2%b{EzNYk<|mYGF07YFHJl5>^2#hn2xfVI{C)SP|?ttPoZJy9K)m%ZKH` za$z~JY}j>J7VH}AD(ng@6P5u>ho!+%VJWa=SQ6|KED?4QmH>-~#ld1>F|cUZdDuBv z6znW45*7hF4Lb!p2@8jX!A`(JVIiWZ(w&wQA?WNlbx94up z+*aI{-Im;*x-GgbxXruGxJ|oFxlOuFxIJ+jcYEwM<~Hg!>^9`~$ZgQ=q1ywu0k?j) zKDS=CZnsEk1oaH{H1!nqBsGkBf*MKek}c6Oox$9ID#2 zo^AQM>a8O9OJqps?$=#CtkvtiuI}poYh7IL6%^X_|4-#A$e_%iA|f*~$fTm6fS{rx zf`WpgqRfIbA|NWr`@VA`@@8HE!K&Bm_3GwoMx1${efHjG?|p_?+q9!w~rio1xn#MPcZ5q>bchg->qnk!GjcgjxbZ67> zrrVoZn$DKKEuATyE`3w_y7X1)RO!po$4Vad z(&5tkr9-8Ir30mXrM;y+rT0qjmUfrkDZO2KtF){1MrmhhN9py_Yo+a_ZKYRBuavfy zUM_7ey;Ry%da?9E>9bxR_S)C$&0gz&w4^k%*o*z1>-TiO zb+M;ooBD0+w_d)z)bIIz8}PQZ-{yWV^n147x_%G$Th?!G-#L9}_np;ueBW_>$Mzl5 z_nSUn_xY;NsXhn$9O$#Z&%Qp}`n=lbl|Ebh9O`|r_krH~d%xU!bMO0lPfgvIx;Hf? zH90jYH8C|IH9j>iH8wRSb$4oXYE)`uYDDVJ)bP}>)E%kYQ!S}8&S~cx=WFLH=aloM zbJ98C9Cwa6pF2mL&zw)4Pn?gPkDL#k51i*q8%xiXo+)i8tuH-YT31?IT2p$e^kivu z>504KEEV-BG%|)KdDk zc&2!|_)YQa;#b8}#V?B|izkX-6ps}@FCHy^R{XU1N%7<2N5v0|M~a7w?-vgh4;Bv; z_ZRmS_ZIgQ-!1MgzEga=_*QXO@y+6n-iMv{okPw+=YX@{+2`za_Bii3?>f7kcbvDK zx13$ho6Z}~PG^Vny7QW|-Pz{6>b&A?b>1lMEWTcRt+>6ot@vv3mEzXomg39B&BaZ{ z7mF_xpD%7KK39CU_)Kv_aeZ-Jacyx;@u}jI#nr`C#V3l77grV^Ek06QQCwbJR$N+K zQhd0$xVWhJP;q{7UU6=5PH}c|R&i!=M)ASo1I1~@`-@YH_Z9Cg-cy`XoLrn#oKPHJ z99JA$989cpUn{^4b>U$*YDx4J*m{q8GIT(Reh z%~!0v;=wCMUh#1Ed%Ayq`R>bKxO~Os(=H!=`Dfj~701M3v0H2xE5t+M0dXq-Nq$TI znf&bhJ^ACg_i|6?9?OmEe@Fjs%U_pImLDrGFE1{S??0^n+448#FUu>-E6NX-C-fiQ zzoq}_@~QIUHt+2iDYT=c_*20#; z%Z1H_mkOH-FBV=XY%Dxic((9NVMAek;pxJ4gUh(+X1y_Z99f+*6oR zm|U1tm{^!l7+)A$7*n{ra93e;VN_vcVMO81!tlZ!h1&})g|ptb-Wl(-_l@_pxAI3T z2FxAs=zw_x9vd)!z{&v&20T7s;eaOwEE=$Cz~TX`2RuCB$pK3SJT+kHfHeb_4R|@R ze8A-X&&NJ5e^UOS{7`vLc}95(!pF*=mOm^nD99h7v;~&AC(uD=apxb@9lr0 ze7t@V$;_6hsA{e^wZ zK5Bnve`^JQ=}eeaNW(A)3r^Y(gsy!X6! zz1`kB-rL?=-kaVV-cE0a_qz9*x82+3z3RQZgsb~FT0!F zP40{C3-0soM)x`QS@#)tgS*~c=dN|vxKFuHx~tt)?i23g?n?Jj_Yrr6yWCyoE_Ii< z54(%qMeYLkA$Ptz&z7l4o#x)}PId2d?{)8SC%co}iS7h< zygSYv>yB~ncJFdWxg*^X?w#&%cbI#Jd%N4>o)u@rY4MHtT6`r=i7&-TaY7sypNpg7 zGx4eTM0_kh5+8~W#1ZknI3x~=17g3}C-#ax;yv-Mct^Y~-V(dSo8k?zQ|u70i`T?9 z@v3-5Y!zF?%VM*5No*1?is!{f@tk;8JR>%U_2Oxfl}DHFEblCDFK;cs zR32Zxt30CoX8E=9E9K4Q3FW)XBg?zWua{pfzg(VJ9#bAwo@`IDC)yM2@%A`-jD5F# zmp$4ZWskH+*mv5)?P2!qc8h&B`EBw{@^tc>|_a^rw-%Gxm+?{+U`F8THi^XD*SSS{V`C^`!E9QvVVwRXGW{3yHbTLib zFQ$t7#J%DkF-1%klf*N`7np<^1OSOZiRt7xORVpU-d1KbLxUhcNI+vskGyS~tMe%E1L z_cuJ#Ftg#?F7I}^zstBTZ+70&c}nNeows*-q0_WZZ^YiNeQ5m z-Ra47qw3D2kEIW%x2N~jy;1ja-G;iy>lW3`s9W!>bdLA^qVJ2z7n08>HzuD;KAU_d zxjy-Ha$Rz5a!vB7V|lP$@!*0$LTa^|ketb;|nEI%%D-j$2zy5$mw^zIDhtXdSTD<=5ud7v&e`7vvwx&(F`x&&|)t&&tot&&WTRpPqjpKP`WMero={{FMCU{G|NE{Dl1Y z{J8ws{FwaR`O*1N`H}e%`8)H&^TYCYkVtCwZnSd zdd=EyZL?mrUa_`XTdd92OV%dqMe7CYd26Hfob{~rjJ4i++FEC=wbocqSx;K4tyR_& z)=KL!>rv|wYlXGkT4pV^mRJv4i>!s#0_!1bzBSL9Yt6A{TeGYg)`Qk`>j7(;b-y*$ zy3e}Ty2qMqO|m9h6Rh#pIBTpm#=6_O%Nk{kv_@EWTEnej)*aUER*QAkJY$|VzcIfy zzcNpmUz#V)6XtRAnEAPR)cnl+)cnN!*!;-+(EPwWY`$+EG7p*u%>Cv*bFaC_e9zo% zzGJ>^zGdz*U&(FFZOOfy+nn2!dolMy?)lut+;h2SbI;^9E0 zyFWKIcVF(_+&#G|xyiXnxe2-PxpBF%xiPuBb9d!N=SJm5=I+c5&kf7nk-I(Dk~^FI zHhU&}I{S6@tL&-lm)Voq6WQb0FS5t7pJzYIewzIx`*HT8?1$M8vPZIqv+rjQW)Ecd zXZL0IW*6i}k=>VBpP7+4)A&x~Q;qjGp6d2Sx5v9p>2|E^_O2_sj_dkK z!GEQiwOxjFIn{YX=f^vL+v$r=YdWpyG``c$*sJwBW6SEt)_>G-bH_y; zM|RxM{#5%<+V5}wX8V`hKi+?Agq>nKPNwnQt;*XTHju%ACxc z$Q;jnkvW$6JhQR9zPzTqs@zgO-S1St=gS+)Ys;(4x0lcK`>Njy7-x(%#u#@Q zqm5CLRtHi0qmx+^!6NxVp#}c0>jwU`!e46+q z@p0m##D|Hana?txWoRLI zYcfw|p3JPytjau*c|7x2=F!X}nH8DknPr)!nI)NrGmA3|GYc{gW#(t*W#(q)WM*e( zWoBj`%uLTbkeQabKQlFRU*_J-J(($)Ntub637PSkahb81F`2tFcV$LrMrKB2?#v9& z49nb+nRvsZ_@elv8;&FnC*DsSN*qiaNbFDSOYBYTNxYlbop>klcH*tXuEd*(HxfG& zI})!YwkNhFlIx}nS=s*mefD^@tl6 zF%iY*2}K++@$S0g-#%lL)>j46Ueu4=AT;0TI|wnFzz5HpQL5SH1?yo^8_}B3MJ&BB zDiX!0ePu*M{Il91zhMYo%$wwUddOe|(kfueK*P<0?QWVrR38dhA`w?dhRC&%h|uly zWX*mticSdKZ`lw5?5dIUaIKq&v`3TdgwUJaC<;Xf0mkT{Ua=lg(}Ea#+*XC zDiZm#2!Ya?T?F|6z`i!n)gAOiMEzR^dAi@D*^RRT5ihIu&{d)aMY`*;Yjw7WH}hKE zRBz6;x})CG*Xn8YR)4KtuihH2)f?1X=2|_Y-o&-KP;bR+^`d&~ey!eJy)p*`Zen9x@-08)Z5Rl)qjTG^cX06gNMd$NYM4(wV?Yk)nz zhxj3;v_Fe*objgrSp*}(x9Fcmh~_p`sRpA#gJB)jIF`tb*>`CeWKg4iE^3T$ob+Op zBL#eWT5DJ*wh<%8AU#e4l@a}3#2?x$$H3Pxr|0bEjGi`R@#m72?81D#g=%Mo9r18 z7IR+H=vsP@*1ss;1wMh>U0Aoewm@k@hKvr%E)n)Et|hddk-tQwg@H)eJ!P~)va z`ztmkQ_xH67BCp|hp}-0@3*v=gIt4cvf^2q7rj1(es%}FMOA0x&G;@ULGPW40QXG0 z#YI_7*tY@znRx}uNx-~>0K4{U^uYcrw6NNLyxvO?$eu%gnbP9SD6W^GK`G4+>bwRS zWF4`AOWdRlj3oaSsbFLY*#ko-`evK0i75?r+dbFpd;iR> z?b!r!fgDsg=s_AC)^1%eP&EoEuBT7~MfVCk2`)a^icyJyYVpv);*9Q%))bX8Gzw$S z)=4rkNNl`JkZ?@ZNJ2zmeREw0$W}*wTEuqZ1QItvy@9e?xx~1xOL*90GxIt&WMLQmY)h z?)oo0T~>=cN*H=E3Ia)(z)5r9_IPD4unA<0dG-{Du(7p zo3R7w%38<0TD1A7iKVapguKrC=zW}BO3)W{j~~y5$B+-V2}8N9wD1Y zG|3!6uSstt0AM$upBp5tG9Ym(=|;YRf;*vN>SqXq6Q4G@oTE7e_ z%91lzl$52BvSdbsl%=t75F};M=rEKD$_WF#!Qe}nB^ac100qjjI3lF1SSw|*9to95 z5N1dMw%&%aD$FD4%96kfi*!YRQM@rMn*#QrWRa-QQre3VUN)arH~~>1zP>e{vnASX z;Mb@y2qt6;2Ofrm9B04-;thw2jp-Z!DIFNiIUV-N%@DS@=vYdEs2?5TZ^39oI}Zf_ z>l4u-9?Taomv2IxfgLHR;xY?hjH11WOhZb2((XpPzpD&WzY{s!-VJacEnjj${1dK5zrj73wCpwLiBJAy(+$|8HJu8}l2H-R9j-C$sJ|2f*n z5+Ty^MgCT6S9TjU55c$rd9=c#u*(O#Ab486aaz3z78Z%X>Xjr$dWOEl2TUVA9QA;5 z%#gHki9{Ka)@@+g26k;=)CLx9V9o}%Y+%T?TCs#u!VnLvNk!%~IGLo+ewGBmrjtwt*14<4?(>lg98i&gSya+N2vhe*}`6OOlq5x!sBKRF> z|Ea=2>|7WK{6w-N@bzrfVKT)4Timt*Dp8r9sM)W_G~>LUCz3fRH$mBEDXb(oza)cq z&rmN>e?tU9kO(53gP_xEH5)d162u#$c%*`peoM2x1W^n6=0t7;Y>2NKNvjNDlDg0*P?Jc8vC?@#s4=#Ti{QtJ zadLn&0!k(dlGLk{5uHSIh+koV*8c)5%4ftLfzLS9vUeLx0&S4JFUklIQhpd1P;%(8NN3F!xMl7ava?cBlkxJ#aDV3vY?BGQ}%?`U8u%r|(E5>qD0 z8OM!CpA2wDNrPt3H|H>&dMPA$#QyIf?0|GV%v)uDXkUn57(Njj?sf=*iFoaesG+o- zF`e}DlQ3%7V!elSFdtnxfJ$-sa@0cQBZ(-ZJs<12zrQWJ(&0_S*7c#%MuJtIGf z_Ev?1kWi8E05a`r^|+3M5`_y>?;#*G=@-CMp}SgC#$Yy;)3a1aP#b4hieI=z*+sE_I>*sItZSweqJh&V0tYZ4 zh0zGpq#5fk>9HEBGX@R8*yvFHZy7{$OW9GJA7bzo$Exzim=`w0U?`Di&qn)^2N1-> z5o-hjTfPMfp(9|}gf`GKPy-&Op9iPtuuDX|(ckcl(G1Dzr;&$+m@pU#&0c&ULQuPV z!y6zB{E{N1Z9~-4#Po-P#|U6s=m|zw5G$|<#{$rbmO1JSxMv&|pXF33e zuF2ZZQJ?=O7z|q4tWNg_p+X>97Sn?|+3Uy<7z3!;w(p2xi9x$fE_s**s19ux;7mJk zB_1e+_7qe*9Q^JQv1fRRS87 zG*+U(KC~_9_oxAjK3o8j^`W+ZL_t}t*|)M*@C(u=(i)%<0KdO>qmEJW>emz3imU>c zDoC6%0ddk(JrJCb#PU)~R(sv`DHBvjy@1(L7=9ZBf?>uwige}PBK^30{S6j8eu7^K zKK$;=*1#hzzS{-qvJE|;5^D-Kz362CBlN}7h6?~TV}n2K4yX|6G3+=QMp+@KxOZ!W zvjoyP0+`o_)wYQP}M_O96vMG+5Za_B#Q>qnf822Q-!8O{6XjZ$-od zaznQdP_BuJr;S7axE&%NEIk0 z1WudqL4|%f$U=*Q5wAevqH{oR9Hpft0+3*tURLeQL-5x z-5{)Fb8A@1=9(~Ma}dVjZLsbGc$L8qvXHzkqHxcm-?i8v{1gI>!~<9hFMx!cL1jat zgFT7@V^Q`Kq=F)_8dNL=0v+mT4U-L-18N<-z9K3Yyw&;z+_!W9MwLK`QcS4LA#8z) zSZfg2X|r}A9V)GB7eSD0Oczdod!b9i3WO|O#Wj2&*DgTGNXdZDLj1_}H3<`XExD(% zdVz5R3(18U=^2tDg)0|o-2(0#Xh5y&7U%?I8^s_nD3>qLR9Y^BOHNEHzJz2!e0^&? z{O)WR@hA?^`AhjqEP~@Hm|JxLE@)MY7_Ess^udQjS%8`GW*{i;tCfvv z0aMX%z)|RDm7tN5Mwh}ySHebzpph#d2&8gLO^_BtcP`l=BtcT?9B1wg`$F?^PMi^~_kMG%}8#09UT_{!B6e@x|V0^fjwh`$%r zs5e$9lKyW8`MVbHTpa(MtVY0}57_?%Itdk6kQSx`EVPJ7e}DnQWVZr?{ORuq-l1>^emUedeyP+Q=6hw}>Kh-qArLS<;k>J&{CRK`(= zQ?&#c2p|#o-JAQNW>ysCTo|QcM?7L428zK6LvH}Gun~nO-(c#Iq+Jq9h-4ZtYVpF~ zrO1NZ#aC&**x_~sE?|QZ6jhK~q5)mV*((P6#4;<)^?)J*YaMeaY&OoAKyiOUf}!Cg z0Dla;;dJYx9S8sqBWesnfKDT9BcvZH+!g@{(a1noR~sWZ?a4G{25A^3rK@s>ppOl( zF@FPugJd^Q4srv*9PV&~4+vAf$_Z4G0Zgm!_Dq-;>JQW*)Qp~x9e_kBJtX{XJ40T? z(mZ#Dz;^piU+Moz41^wnfkehY5P>pCXXoD@qNYpamwg8ZhjOxYzd%LD3HOyqnOR#9 zA{2(IL=xB;3Qi1*Y1oq_m&~c;L$R{L*;t8nWcuD6M;J%Sd5txjHfJA{;(jAp7-CFm zRdDf9Plu05&N~ruDkdxDN=wTPy!wZkYN&}jSpWuI761ySnjxLB=d#oSuwoJ+0{&Au z^M)pb4?z}ge39A}_Zz`dg24ti0u-jU2AkY!B>Pe^%(&GEz(9RMd_8q*Ig3?WY~T$G zrVBiS;Al`7EGb&N$R7)~7J(ZAlBcMb%lU}GSb_b5v1)bgzyu0?Ltqq|F4({pm}saU z_^Ip&IhW=n$psz?A`r#}=W+-hgs5v^>Q-Aq;2}P*=7bjYTFog6%?VA*_*TscSQi>K zC(!=+HK*1+VlGIR0A;Az5P|a1x*;U!ZIuRviUSQQWCDx?DhWD=$9FX->i;65G^nW5 zprDz-T+=R9gNoK_Q0IrBN`sPsN#qAu=R}#k&aSa?A)OV(A%3MINBs7I+tTJiC zc!VQG3RFlX=?aSm5;&?PFjXs@P6$P<|95bfK?+NC3o~6vf%J->Q|L<39{2we3L0ge z8PsmFc3N9>mB+w9@K8p5xYIF3%MQqOY}U^WEi#an@$7fRKf;NL?l1o+-jwFVjL6Rk zh0g}e9nl`>6U2({OWy_iC*o2ep*e`j0Bv*4Nr~@(tpEY0Zg}U^bOPRDh37X(v~QG~f|* z4i9dLB2FUo%1OtDG)*+Ad;;$8m?qFX(ObyZXlR;9Cmr-$#K1Ix3Q?&D8YNUCIj%tB zc_Dxnz(Sl4Bw!Nx0oM7z7+@&aWiVDe)E3|u1pZ=us5x?nu%tu9Yv(7)O;kVv69Mq3 zeOuB9*u@lX)?@UJ>cCzG7{ip^)qx`nFor1ys{= z>cDCS7{ip6)qxERFor2>s{@-DU<^|>RtL5*z!;`%sSfO7fH6$jQ61RJ0ArZ4yE<@$ z0md-pV0GXq1B_wH$JK#T3^0Z%$EyP^*Z?hKm~xsaOlDvdQy9a*@an(>1{lMXG1Y;o z3^0Z%Q>p{A7+?%jrdJ0RGQb$7%&QKpV1O}9SyCNX%>ZMVva&j`fdR%aWo>m}69bH4 z%Es!zHU=2Olr7bPwItYJ#)<`V3Kx&Dj9GC8P-})&fEf!c4vzsUp}-B~I)vf5XDmCk zI6^ZYGqHdA0knq`bW}r?)d2+#>&XO6!onXZ*SMk<2p_%DRG`l*PX{Letc1af4MX$K zxJ|<0mMQ7N;~qlP9PHx48w3^S1X*`P2C-Pp7|nh{Q(NoKc?K>#^TwTj%6b&q|0Vqe z+&~oU2ZY%P0jj3YJyhMOd)??oXc|S_%FYldX=-Okkd;Xkp?HR?vBa%3Jk@SQG(gNC z8!diYuAx!v%AFz0Vp{v5awD1R@DX!Ue3))KJ{-3LA8EHEAN6iM9}R9NJ~D1+K7`wa za|QO60$UhQyb#ln@-`X^P9c0Y<}dNdYK7^c;&=3keFu1VWTwQJwGTeoyw zr*7RkcIZ}*(<9oIQ4`A&!5f(pHZDjO>tM}SMk8~O)>W!G*c~i0V-S#DpMDfVhiBsI zE|-~L{;^mkQ+K`CHYbU!?h2W^%LQ}G78)uo!2WBlyHb|xZ2ux6{~i5#YwbZ)y2qUK zX1$U=Yc4?V#6`vcT=*;!bAsf(>t){fWhe8KQ?VY*TCZ?H3}DMsSZJ{q@v$Gnw|Y0? z4MGb$C>pD9(=jX+7Fbtxa&=g^>+00m$lt6YDmz?k_P>)K|Y&Ps4Jj-%EJWZ6{PvNIX$w2ckwi$s1Ufu>(d5>+dJ zl^p*RyG6xvbYb^NkA;e3L?s`5mWK0v6`j9yytNTll(hArS&}UTb%nsxwk1Hpc&yo+ zcl3aY_=OT3`@E@;2k~DIP9*_@#7n9bFWCMN#WaG-kp~tiY~f!w;y3ZnjdL)b6)NNo zC52MB(}*>q?_YtpAV~24WmOgW&}n#uD&^^}3yX=wY!zUkIkPaJiK?7H0;`vX8j2vx z;JQt@aH z6;Di|Q{T<=PncogMXkyOB$FO_OaV}{>*wkTCTkn6aBNVgq=2Iy{lPfO7`?dyLVzm; zn2SPgt7vi!KnI12#{3bvs33(7tH3J6Di-C|1p~vYubMjtPKpZno;7Ed7yp&8Dh>S; zHe%BJud2dC4Kz*}Md+$KnG6aZUGK(!K~MbIv!4xxuXt!HeCu5!OgXEL@k?;eYVv>y z#bc79AA7EjK522%Ts22ky7&L?F&9n8Me-M0xA5P`KS##fZ);waeng+caU{mD)HaPh z!=|l9PmU|>bh^;FF(xrfRsg@ZdS%DL;jKunNaSBof%R(^3j2tnu0=jF|G8R@F-ro& z6K2DKbfbd0e-*7P^RL*cD#rxgVRX)5U$L-F3mpG*_()OgydmPVf-3g@e2(e?TK^S6 z{?%aAa!!D&K?RttFjOV*wETI+2s?uPd05jTM0u}BRs1THb}@JS|FbJ8W6FF zpI0Rjl9@;X-~!GcEGFSN0`8NdvJx{o&KQWl3(RU@)bmm!j<2Y?7K_BQ6?!QDd%nRhd zmG(HZ@a~HxzhrhAObf8H6ISeRASMJiGlBgP!aJK$4Z$vft;2$mflIKL_xE5%+KRAo z)R{*JQK3syPvBY^Wr;%7L_HMDV0ioK3mC|H4;;_J$_|A&_HEHL25>q|nsb`OnmU(9 z_@L5PAGzbXJlew8lF0=b+P%mU4bMoZm^PL$_wvE0_R(#59#7iEJdal~&82T(yQal4 zugZlsKK`J~8r&GS{)-=eU4vX+KHnK9h~d~^oJDalA*hp3=RWQko$SJ$^x(~vDF5(gMa3T;J z@8I)R2WhdJMefbz6*XA@M=wAupfcqBz1;YXb%ovxA%7WOWY9e-kjtFv96FM)jhE|8 zOo=ijnqHtO-3krzAR9=FOC;bS=@jDQ_bPHlkmxYTF_6r2&Gnv!MHTD?hYG4;Gs!hL z&WSEJ_+Q@+c?o?~_5~Iw!KBJcbg&VLhX!1%1K-N8;Z?^@38=XWu<#Yo+iFH+ak(W7 zewkK`!M7lH^K0R5ey9ehgrtvgR+~J+E%hdKV|d!Q0fQXQaSeu(wMd~Ov?U(WZ~;!R z(O17^DqFl2%dqFWHHcAqQN!khx8{F+ETCq4kbZ9Oz9nm>ZI~iA?k12AF1+L zAjBKfQvTk3SlYGl(gK-d;<+06NcD0(0aa zxzX(a_042Tw1;r0xwpd_47@YM6VGA6H3dw-Nh2?IgUhbBit$C?!5CmFqvnn14y#aq zU=VF!yI4ev>X<`=I=MOrhJ`HmxJ1X*jkQJVsptID8H)hUQ~4ZEkN;8{9C z7)$>ahf&drFN8I42$2-z7v@hj9RZ9nEOZl351V)BM)tZW@d}q_*K=AE?R=AaN&6M^c690TQoapdY)5C2%UK4pIWE(jX>mMBp2In`sXY zQ~8elazoK4lbc)XKu>NrxGD`rSfC#jgXUEXrD(UGu=_AgSZL^X3bp3&!5VPe2JO>D z%NE&CrCPR#>d>UB)rC5XUirVpQEg#hQ5?`H5b8w7Aa6&R7YO0Pu}ESO8^owy^d6#P z(A)NmRPUnwpTm}rn`@Yjiav%_mTXf1Cu#|z;3h)mAXXv&v6+r1qG=!`6*TC30F9}j zVeP;$OW>k1RXrM#K)Y}WnqGUBq)UQ5g+IBGj}FATXpd68FbH+MI0G2M;sE2tHLE&- z&VVFu#v*;#6{`=s!rj`?dfBAaD;4X8#?zwxKvdT-kcXy{;AsQH(4G*YZVW17WC-qS zo^`hsX^9S`$1s3<24nQqDqJ) zAw=X1Q6ofbDMZo~BI)ZzTFMcuXY`fZ&VldVDy~YB*pMVvC`W*=^GOnPnv#TU+eVTg zg_1<3)JhVhP?E@$T1mn~L9mY@NhFMrB$kvUDB%lX)=Cn)T9Oc(5NmoUNjg(jL@JV` zGi3#wFj&*zKy(szwIu1JdlGI}NR(NWD4M8;7J;1;c;I3ls=#nH zu_n2q9h2>>g-p^=6XpFvRjRA)59NIvn*Yi^IaO%kRH6BA*Gv^G$f+VC>Vt8XZ*t;E zNfoQ|YtN3#8^x$6aPf+sAUVHdRW5oH@F0CZG6v!rI-AUe`9B8VMifqr>!FzTz?-~J zi`VApZUp3l6*HWEq)1ebAVhIS#8j(&SMaL}BB-ulnUDkqZ4F>Xc`GXww^c8} zsfiUCkc$i--pp`=48z{E8#E2qVx}i)yn4Vz9=-}~xV~!NH3WLKn!h3j}eme68M0MW=rBtbCcLjB;%{$-GDs9)+^Az zb`v+*Ay!}x2x#1co(nA|l+rkJiL?atK<)&^8!q7#c!TQ+Z&$MvPI3j6U*p+f<(OE) z%5ggTif|{>`VH|)BZ78hSgtCQf z-C1o?Zf4-tG0gcqgO)%)xLuMpvhMD9OUk;hW1&o??w@%^Shvwyw*zet*{<>|oZJN9 z+-t=Otbs5kPMs}!ib;}-plBrRBKIe!w+QZ7f~3v zm*rxFz!9mi9Jd`_s8L|8-Xn3rFX0CA3a%)6g`l;u-%%)~9K@tT#D%KEUUN(r0VEC~ zK^<^|0HZ-SaLMom!NGV84$4Pa9z|78Ad}_P)dqcfEBb(euxVKocl};$QFOOR=_{G; zDpD^dBE{ZF64iuD9YCT(bqT&7f>1M^RA2&|V8=oAfJ$nIr$(UzTd}{VPj+j0L!l!Y z_R093qVd+E5*^8l$0YiEO$8l4t3rodmb+S^<2uR5mx2x~`eQRkfR2Rf4w%0R9he6% zfKF*!v?*Uf$M+S*M%%Ec&ZaBqpcm#sf*DgV?p}eCA|DW03_-l|0eQs-L@XbWS$sgu z@^PL0z@=*=d8v$u@6ko7a$P_ZsmgT$J)|nv#cLr|g@8IT%DGggs$73`FuzaxsA~H^ zFNAH#8aRpgEt0qr_VWMIHvZ#i8yGn#8-ZB(VY&vYfEo}~acP=HP0@?iGipjxQuK?Of`2^iqN>^-pj%Xx=2TkIOukpMs3~|UdPPma zKb}@mRqYSZDXL0ennqDm@KW>%6buFLzpFN3NNvLW9&Ms3*9E5Os$3V)CaQ8>yf#r) z=mK+fRjxlenBS*ORJHw|7s58$1aJbPmc;d6+Qfe--vvev+C(50ewa3aDxggSRa}}j zQB(AywTYTif2cN5RoM^FCaOwbnl^!g&?W+;U5YkQQ}B9Aj5y4Iy#>vrJq?F%c%=}wbNy7~UIV-h{HeyR5nNdRsfGoBA8W}< z8{N*)#*Z~!)!RYU>sj28S5q@~9t1UasML&aA^ljxCb|H6e4O+<(EnJAshZ&!C&V5$ z4RfnS70lejpkP*;E(kNWG5lC-SE)J2nh8OO7vSi}S^{hLcywmX*!>XuDYhVSXNAN@ z64>CG{3zDPf2wuH8%~PhEr)qL&5xykQI0O#^vCf*cBTg1xZ;#U##wZ9t5z z8hFEi)M0x-BG?{KHKttZZ)I~ZV3hUXcmlUaSZWO%J6o_5FD zwfN0F4Lpbuth%G`{CY$vPH@}ijob$!%WyY|+MZYh?KWOCPy z98KBdfc`GnT@A%`Y)7c=v3W5)PVydvu)nz0in~891Uq-;R~ow5-gc<;79>*XE$Ev3 zBYTTa3SM+?DSve=C;Xt^R*J>2Q{=c2 z@^}w-x&&K0&P|qbF2QC3oERoG2TT==EjMKtRg`HU)JmDWb|WZ;GY_h_+|>f*w?fOc zJY&fclKm2``!|U0))L$@5w^jd2b6q#sI3YVcMLV~t15=vty%f13XXkn$1fPB@>LaF zX@;+=kfG#PRnQ;o!}KUDfG>V}q$;oc0t-GUG8nP)t184FzAu99YRss@PiiQ~m-&Kj#epiLXm@pU#7zJKJihZ*9q6$uA_C}1n>zAsoy3~eWRiOxK zg+3vnN14{IszCg4M;1m+eE|jAcfzl#@J9UVuJPat$f2q})x$r5c;ro$oKfQZs*2qB zTV1E@^$>0j=2ult>iDXPg(HwX(d}FD82ZabFD0S~MsLM~K^w; z$T1XeICV1AcCigiq!u79_Dhf`PQm@sGx7BroWKVz?FGD(oTt)FY?k_+uu%^-{`bVL z__*E!8-sD=M4sy~m*6l*Vu@FWitM4DbK5Om2UI1DC0=_GU*feBjOvIexe2(#0!$?x z7x45D!MN>K1z``7#BM&zjk5uqWDqvM#PMgr)7(LlaFC=CWBBQI5Q0&eotp`+p_#&3e6 zF8mL=j;O3b0niFJc3t0`o`#!)U6w)JjkesYY#)fqoBgqE8Uz^eXW@ciRMTCbhg>z^ zh|=+~PhM1n*&3UfCt#BHo#yl_;3j?~iYHM)ezG8U^vfPzi(0~ONS)GTAzaE8zO?8; z%<%AKRQNI`e3=lwObK76h5$}i00I?Sw1+%h3LpR^L2HF(x;$TiE%)k6R=ZFQK*l{` zVST5$}>b9Ym70jjv(q}h}ju|Y>fL(d0h^? zqz5)(f2re>;qrS-=lmWIj@v+JgPPRARnv{?J@^;pFFr>=IfpY4U^M6q{TiYCVrM=i z7odB`8~&){;ph=AHQJAd=cOa~0E7p5 z#MgpHTkw-+Z+f`$HjPacN!+0K7QQvCQq<|oj0gj6?A#O05^0RHYU9AQUmk%9KLttUa+Ublq|!AX$duR>=80yor=el?d7~YYT zXEv!-ojt4dktdnZ%LdFzK^zn$o>RxS)gWio!CsyxU3CKct9j0gau>Vi1&Ig8yv9d? zAa$0Q8{zR~TBuk4rntNxP>M08YW|T3V=xeFHBdJ%>KA&AjAkZ$>sMzU9BBp8DG=B4 zQ?hJR^REsn*Z|dyiRpb&=3Na=AswP9$Q?yC#HrlzoC31}R{3RfFgGPUHq!d8ulWoB|BA<%DuW&n&m%CAEHfo69;=^N6aT| zG0ez`>J%`{S)v7^r6yrl+nfvAf;0-9ttm30ZN${J5wqGxENmNrS**5FOk=eXm?~={ zFjv+_U=pp3*wr>-Z`+6?Z6l7hjX2ddq6L_%>HeqymDd5Ikk3C;)Z-;;GC|F&3FBye zP5AFP%KjM1B)D_|(>a|6sII#tdU=wAgwOLNI`kXfVvf`Zq#-YY#|+B*OAK7!h)FP( zK8jhQ2=OJw2S14{L-HuU6fsN*^+NSUVo!b(kI~=<-1i~X#8A*;5<;x}$f0f@GxXHZ zBy0fsF-*b&=}D=I+m&J4$(6$B6@V!XGhPJ~SKtg|2V~(Ll0lroEOjCb#+jufWh&xv zShsGHS3mhWyhcR5jGM#&T{V>!Vxmr@CwpmRLw8XIt;Udz7d=&F!+~PaQDvjdmf0e* zwgfAVF?mu@3tMKKtOZVp!CtDhy$Gxd4T)ZQ3Qmf)_ROotoN!As;PyI<@j6YJjBd$( zm;?|#L^bV#{Oq;Yc?#MLV+gd@Wy)l)VUpK1=rKSrMOOfUa|GxL%C~O?BPJR|-DIyW z=r-C40XA@gxq=;brG5&|RCk&(3C2VD5407t-6;QDrB7O zCFIgY^-@DGnN#*s!j(BkFEdEyBnr(aipk5sjFxbrc)AhHfwuiMdA?o1^SIts@;uZV z^1M78j}x9mC3rpzV%RG@FYk~*7L!@(L>R=-lIPL)81AkOB>`y&cS3|gi>aNdO(Wjx z0*pd5Gz5&&AiBtY#YAUzDij75a&?wiGI3eb!|}4u^%ZuPeeR^XV|raBiQo!@Rt}d>Usz`JNr8K&+sqUZMs(Psbz@G3M+V#v0
eeLq@( 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